现象是这样,在实际发出委托单的时候,图表信号显示在前一根k,不是当前k。
采用的是固定轮询模式。
我的交易部分代码
a1:ref(a,1);
b1:ref(b,1);
cond1:ref(c>a1,1);
cond1:ref(c<b1,1);
if cond1 and holding=0 and p3<=pp1 then begin
buy(1,ss,limitr,c+h1);
end
if cond2 and holding=0 and p3<=pp1 then begin
buyshort(1,ss,limitr,c-h1);
end
这个是什么原因?

此主题相关图片如下:mmexport1539836809461.jpg

图表交易全部是根据历史k线计算的都是理论值。无法反映出实际成交状态或者成交价格。
1.图表中的交易指令分本周期和次周期指令(注:实盘中两种指令效果相同)
limitr:本周期指令,作用回测或者图表上对应固定时间间隔模式,
limit:次周期指令,对应走完k线模式。
交易指令详解:
http://www.weistock.com/bbs/dispbbs.asp?boardid=17&Id=159473&page=2
这个看了,虽然不能反应实际成交价,但是问题是实际发出委托之后,图表才显示出信号,是时间延迟吗?
正常来说图表显示信号,然后发出委托单,实际成交位不一定。
可是交易日志显示实际触发发出委托单的时间并不是信号显示的位置,而是在当前发出委托成交后,然后才出现图表信号,信号这个时候是在前一根k的位置。如图1蓝色箭头先发生,然后黄色箭头才开始显示
就是查看了日志才觉得有问题。
[此贴子已经被作者于2018/10/18 13:30:52编辑过]
有可能是信号闪烁导致出现这种无法对应的情况。 这种一般可能是代码里面存在导致信号闪烁的代码造成的。但是你给的代码完整性不足,我也不好直接判断。另外可以贴下你的日志。
你看到的那个黄色的三角和圆点是实际成交标记符号,和图表策略没有一点关系。你手工开仓也会有这个标记的。
是显示成交买卖位置的功能标记。(菜单栏的查看--显示---显示成交买卖位置)
可是交易日志显示实际触发发出委托单的时间并不是信号显示的位置,而是在当前发出委托成交后,然后才出现图表信号,信号这个时候是在前一根k的位置。如图1蓝色箭头先发生,然后黄色箭头才开始显示
图表中蓝色的三角是图表的程序化的理论信号标记,黄色小三角是实际成交标记。这个顺序没有问题,理论值在本地计算满足就出现,先出蓝色三角再出黄色是很正常的。
[此贴子已经被作者于2018/10/18 13:49:11编辑过]
018-10-18 09:05:05.503 【图表】J00 运行完毕
2018-10-18 09:05:05.522 【图表】AP00 运行完毕
2018-10-18 09:05:05.623 【图表】J00 运行完毕
2018-10-18 09:05:05.624 【图表】AP00 运行完毕
2018-10-18 09:05:05.638 【图表】框架:pp 触发下单 BUYSHORT 品种 SC0000 下单K线 2018.10.18 13:05:00 公式:scc2 窗格ID:Window1 代码行:32
2018-10-18 09:05:05.654 【图表】模型下单 1
2018-10-18 09:05:05.684 【图表】下单系数调整后 手数:1
2018-10-18 09:05:05.696 【图表】直接下单
2018-10-18 09:05:05.728 【图表】SC0000 运行完毕
2018-10-18 09:05:05.736 【图表】RB00 运行完毕
2018-10-18 09:05:05.753 【下单】SC1812 价549.200012 量1 买卖1 类型0 开平0 账户****** Formula 1
2018-10-18 09:05:05.773 【下单】确认报单已发送 ID=**** RefID = ***
2018-10-18 09:05:05.792 【图表】J00 运行完毕
2018-10-18 09:05:05.796 【图表】AP00 运行完毕
2018-10-18 09:05:05.812 【指令】收到回报指令 ID = -***** RefID = ***
2018-10-18 09:05:05.925 【指令】收到回报指令 ID = -***** RefID = ***
2018-10-18 09:05:05.940 【指令】收到回报指令 ID = -***** RefID = ***
2018-10-18 09:05:05.964 【指令】收到成交回报指令 REFID = *** vol = 1
2018-10-18 09:05:06.009 【回报】 : sc1812 - 已报单 1 价格:549.2 开 卖
2018-10-18 09:05:06.024 【图表】J00 运行完毕
2018-10-18 09:05:06.031 【图表】AP00 运行完毕
2018-10-18 09:05:06.041 【回报】*******: sc1812 - 已成交 1 价格:551.1 开 卖
2018-10-18 09:05:06.056 【图表】J00 运行完毕
2018-10-18 09:05:06.063 【图表】AP00 运行完毕
2018-10-18 09:05:06.069 【图表】J00 运行完毕
这是一部分日志,会不会因为开了多个框架,造成固定轮询时间有差别????
是我没表达清楚,我说的蓝色箭头和黄色箭头是我自己标示的箭头,不是软件自己显示的,直接看下日志
2018-10-18 09:20:01.745 【图表】SC0000 运行完毕
2018-10-18 09:20:01.771 【下单】已经调整为 实际持仓为 1
2018-10-18 09:20:01.789 【下单】SC1812 价554.099976 量1 买卖0 类型0 开平1 账户****** Formula 1
2018-10-18 09:20:01.832 【下单】确认报单已发送
2018-10-18 09:20:01.849 【图表】J00 运行完毕
2018-10-18 09:20:01.866 【图表】AP00 运行完毕
2018-10-18 09:20:01.888 【指令】收到回报指令
2018-10-18 09:20:01.959 【指令】收到回报指令
2018-10-18 09:20:01.960 【指令】收到回报指令
2018-10-18 09:20:01.995 【指令】收到成交回报指令 vol = 1
2018-10-18 09:20:02.016 【图表】J00 运行完毕
2018-10-18 09:20:02.024 【图表】AP00 运行完毕
2018-10-18 09:20:02.033 【图表】J00 运行完毕
2018-10-18 09:20:02.041 【图表】AP00 运行完毕
2018-10-18 09:20:02.049 【回报】***** : sc1812 - 已报单 1 价格:554.1 平 买
2018-10-18 09:20:02.068 【回报】***** : sc1812 - 已成交 1 价格:552.1 平 买
2018-10-18 10:39:59.136 【图表】框架:pp 触发下单 BUYSHORT 品种 SC0000 下单K线 2018.10.18 14:40:00 公式:scc2 窗格ID:Window1 代码行:32
2018-10-18 10:39:59.157 【图表】模型下单 1
2018-10-18 10:39:59.167 【图表】下单系数调整后 手数:1
2018-10-18 10:39:59.187 【图表】直接下单
2018-10-18 10:39:59.206 【图表】SC0000 运行完毕
2018-10-18 10:39:59.216 【下单】SC1812 价550.000000 量1 买卖1 类型0 开平0 账户****** Formula 1
2018-10-18 10:39:59.237 【下单】确认报单已发送
2018-10-18 10:39:59.290 【指令】收到回报指令
2018-10-18 10:39:59.367 【指令】收到回报指令
2018-10-18 10:39:59.377 【指令】收到回报指令
2018-10-18 10:39:59.391 【指令】收到成交回报指令 vol = 1
2018-10-18 10:39:59.417 【回报】****** : sc1812 - 已报单 1 价格:550.0 开 卖
2018-10-18 10:39:59.427 【图表】J00 运行完毕
2018-10-18 10:39:59.427 【图表】AP00 运行完毕
2018-10-18 10:39:59.437 【回报】******: sc1812 - 已成交 1 价格:551.9 开 卖
2018-10-18 10:39:59.457 【图表】J00 运行完毕
2018-10-18 10:39:59.461 【图表】AP00 运行完毕
加上上图,这是这3次的交易日志,帮忙看一下