- 精华
- 0
- 在线时间
- 322 小时
- UID
- 257171
- 积分
- 133
- 帖子
- 99
- 阅读权限
- 40
- 注册时间
- 2017-9-28
- 最后登录
- 2019-11-16
- 精华
- 0
- UID
- 257171
- 积分
- 133
- 帖子
- 99
- 主题
- 32
- 阅读权限
- 40
- 注册时间
- 2017-9-28
- 最后登录
- 2019-11-16
|
本帖最后由 masterhdd 于 2018-4-28 10:02 编辑
在交易策略进阶中,有个“A函数下单撤单和全局变量操作”的例子,是不是在执行完Data2.A_DeleteOrder();这一条后,Data2.A_GetOpenOrderCount()就立刻==0了?还是要等待Data2.A_DeleteOrder()回复说撤单成功了才
Data2.A_GetOpenOrderCount()==0呢?之所以在撤单指令发出后还要延迟几个TICK才进行下一步的平仓动作,可能就是因为执行完Data2.A_DeleteOrder();这一条后,Data2.A_GetOpenOrderCount()就立刻==0了,而不用等Data2.A_DeleteOrder()的回复来确认,所以要等待若干个TICK来估计现在是真的已经撤单成功了,也就是说此时此处的Data2.A_GetOpenOrderCount()==0不代表真实的撤单成功而仅表示撤单指令已经发出了而已。请版主指教。
Begin
。。。
If(Data2.Close != InvalidNumeric && Data2.A_GetOpenOrderCount()>0) // 商品2全部撤单
{
Data2.A_DeleteOrder();
DeleteOrderTickCounter = 1;
}
DeleteOrderTickCounter = DeleteOrderTickCounter + 1;
SetGlobalVar(0,DeleteOrderTickCounter);
If(DeleteOrderTickCounter < 5) Return; |
|