今天第一次实盘用轮询下的market指令,有些不明白请教一下,状态:1秒轮询下,图表交易,market是否只要符合条件就会马上市价交易,而在图表回测时的market是次周期的开盘价,感觉实盘运行时并不是比如:
5分钟的图表,1秒轮询
t2=145500
if T2 and HOLDING>0 then begin
sell(1,手数,MARKET);
end;
这个收盘平仓语句,我历史回测时,信号是在15:00的那条k线的开盘,也就是14:55分成交,但今天实际的交易,却是在14:55那条k线的开盘,也就是14:50分就成交了。
所以,我想请教下market在1秒轮询的实盘运行里面是否并不是下周期的开盘才交易,而是一旦符合了指定的条件就马上以市价交易?
哦!那个链接我看了好几次了,呵呵,可能我笨没看懂,现在你这么说就清楚了,谢谢~
那么其实我原来的代码,1秒轮询下,条件是ref(con,1),指令是(limitr,open),我想把限价改为市价的话,只需要把(limitr,open)改成market就ok了,其余的东西都不需要改了,实盘的结果和原来的交易点位是一样的,只不过图表回测时是看不出来,我这样理解对吗?
虽然对应信号一直,但测试和实盘 MARKET对应的成交价格不一样,
哦~~那我大概明白了,但这样也有问题,如果实际信号和图表信号不一致,那就算交易点位相同,但holding还是可能出问题的,那想再请教下,如果在1秒轮询下,把我原来
条件是ref(con,1),指令是(limitr,open),这个限价指令改为市价交易的指令?谢谢!!
您好,您这个指令的更换那个帖子早就回复您了。再去看下第一次您发帖的2楼回复把
[此贴子已经被作者于2013/9/10 17:30:27编辑过]
。。。算了,我明天实盘自己测试检验吧,谢谢你的解答
我觉得无论是用market,还是marketr,都不能直接替代原来的(limitr,open),这样实盘时交易位置是一样,但图表的位置不对导致holding,enterprise这样都出错的。我搜索了所有你们相关的帖子,就像有个和我有类似疑问的帖子“
用MARKETR 所取得的 ENTERPRICE ”你们最后也是不了了之,我们都是自己想不出法子,所以才问你们,你们别老是给个链接我们,我们问问题也不是随口就问,都是经过思考和参考别人的问题才向你们寻求答案的。有时候烦请你们耐心点解答,好吗
[此贴子已经被作者于2013/9/10 17:57:48编辑过]
或者我具体说下我的疑惑吧。
我的策略是符合条件之后,下一根k线的open开仓,因为要即时止损,所以只能用轮询模式。之前的代码是
ref(条件,1),然后用(limitr,open)交易
但现在要改为市价交易,我就用了market来替代原来的limitr,open,market是次周期开盘价,所以我把“ref(条件,1)”改为了“条件”,这样图表上看和原来的信号位置是一样的,但正如我之前所说的,实际交易时就不一样了,从图表的次周期开盘价变为了本周期开盘价。所以如果实盘时我希望能得到原来策略的位置,我只能把“条件”又改回“ref(条件,1)”,但这样又变成图表和原来的对不上了。。。所以,我才感到无所适从,才来请教你们。。。
market,在ref(条件,1)下,实盘和limitr,open一致,图表上比limitr,open多了一个周期
在(条件)下,图表上和limitr,open一致,实盘却比和limitr,open少了一个周期
我觉得问题出在market,marketr这两个函数图表上和实际上交易的点位不一样,但holding,enterprice这些却都是按图表来定义