图表交易,我的目的是每个tick都执行我的程序一遍,有信号立即下单或平仓
所以同时选择固定时间间隔和高频,这样可以吗?
另外,发现一个问题,盘中信号产生后,虽然及时下单了,但是虚拟持仓holding还是要等这根K线走完,下根K线产生才会发生变化。
这样导致我重复开仓了,因为我开仓的条件用到了holding
1.可以
2.使用下单语句的第3个参数使用LIMITR或者MARKETR,本根K线HOLDING就会变化
我都是用LIMITR或者MARKETR的,怎么HOLDING还是要下根K线才变化?
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
我发现图表确实是实时改变holding的值的。
但是我将holding的值打印到txt,那个值却是要下根K线才会变
if ISLASTBAR THEN
begin
DEBUGFILE('D:\条件.TXT','做多条件'&' buy1:'&numtostr(buy1,2)&' buy1_sml:'& numtostr(buy1_sml,2)& ' holding:'&numtostr(holding,2),0);
DEBUGFILE('D:\条件.TXT',' 做空条件'&' sell1:'&numtostr(sell1,2)&' sell1_sml:'&numtostr(sell1_sml,2)&' holding:'&numtostr(holding,2),0);
end
那么,做下单判断时,到底是引用哪个holding呢。
我发现每天都会出现重复下单,但不是每次都重复,就是说,可能有时候holding没有实时引用到变化后的值
将打印输出放到程序最后面,
如果你的策略没有信号闪烁,就是说固定时间间隔下,发出委托后,信号一直都有,那么,HOLDING值就会变化
一根K线是不会重复开仓的,例如不会执行两次BUY,这是程序底层限定的.
http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=51711&authorid=0&page=0&star=1
本帖讨论:图表程序化交易实质(KLC和FLY的回答都是正确的)
您可看看该帖,加深对图表程序化交易虚拟持仓和最后一个周期执行情况的理解
信号没有闪烁,holding的值在图上看是变化的,但是在txt里面看不是变化的,要下根K线才变化,我把打印输出放最后面看看。
但是我确实是同一根K线重复开仓了,9:21:05开多,9:23:00再开多,
3分钟周期,应该在同一根K线