我现在想实现:在实时行情中当价格超过我的开仓点策略开1手,但行情还会继续向盈利方向移动,这时又到了第二开仓点再次开仓1手,我现在策略只能开仓1次,这个功能如何实现?我测试在实时行情下onbar中的close是和q_last一样可以实时更新价格所以我用的是close,下面是演示代码,预设周期是1小时,帮助中写onbar是每tick运行一次所以我想这样能不能实现?
onbar(){
if(close > 开仓点){
buy(1, 开仓点);
}
}
您好,这么写是不正确的,会导致信号闪烁。
正确的写法是
if(High >= 开仓点1)
{
buy(1,Max(Open,开仓点1));
}
if(High >= 开仓点2)
{
buy(1,Max(Open,开仓点2));
}
而且,开仓点1,一定是比开仓点2,价格要低。如果是做空,则反之。