- 精华
- 0
- 在线时间
- 75 小时
- UID
- 33799
- 积分
- 161
- 帖子
- 22
- 阅读权限
- 40
- 注册时间
- 2011-4-17
- 最后登录
- 2019-6-8
- 精华
- 0
- UID
- 33799
- 积分
- 161
- 帖子
- 22
- 主题
- 9
- 阅读权限
- 40
- 注册时间
- 2011-4-17
- 最后登录
- 2019-6-8
|
平仓反手的交易,在平仓发出委托至成交之间,需要一个延时等待成交的循环语句,以保证有足够的资金开新仓,问题是,在循环期间,是否还能接收新的行情信息。我的理解是:在循环期间,相当于处理一个tick的程序还没有运行完,按TB的运行机制,似乎不会处理新的tick信息。
Params
Vars
Numeric startime;
Begin
If (Close < Open)
{
sell(1,Close);
}
if(买条件)
{
startime = CurrentTime;
while(A_buyposition != 0)
{
if(Low == Q_LowerLimit)
Continue;//跌停板,难成交,继续等待 问题:如果跌停板已打开,是否能收到新的行情信息呢?收不到并且发出的平仓委托本身有问题,这里就变成死循环了。
if(CurrentTime - startime > 0.000005)
break; //不是跌停板,而且超过5秒,还没成交,不等了。
}
Buy(1,close);
}
End |
|