等级: 超级版主
- 注册:
- 2021-5-18
- 曾用名:
- FireScript
|
有点长,你仔细看看。
所有报单放入队列中,按次序委托下单,成交一个委托下一个.
该控制符适合所有下单指令
例如:
SELLSHORT(CROSS(C,MA(C,5),1,MARKET),ORDERQUEUE;
BUY(CROSS(C,MA(C,5),1,MARKET),ORDERQUEUE;
若没有加ORDERQUEUE,触发条件的时候会同时发出平多、开空指令。
加上ORDERQUEUE后,可简单的描述为:触发条件时,软件会先发出平仓指令,待收到平仓指令回报后,再发出开多指令。
详细的运行机制为:SELLSHORT、BUY单子形成了下单队列,SELLSHORT在前,BUY在后,当SELLSHORT单碰到有几下情况时,才会执行BUY委托单。(1)收到成交回报;(2)下单失败;(3)撤单(一旦队列下单不成交撤单后,再次委托会将委托追单排到最后)。
其次,以上规则适用于ORDERQUEUE成对出现或本身只有1条交易指令的情况。
但当出现以下情况(反手)且只有一条语句添加了ORDERQUEUE时,运行机制略有不同。
SELLSHORT(CROSS(C,MA,(C5),1,MARKET);
BUY(CROSS(C,MA,(C5),1,MARKET),ORDERQUEUE;
条件触发时,软件会发出SELLSHORT指令,ORDERQUEUE所在的指令会隔2秒后(区别)再发出,此例即BUY
注意:
ORDERQUEUE在多账户登陆状态下,软件根据账号登陆的先后次序,依次开平。以前例为例,若同时有A、B、C、3个账户触发该策略条件,软件会先对A账户平空开多,再对B账户平空开多,最后对C账户平空开多。而不是对A、B、C三个账户同时平空后再开多。
注意:
1、该标志不仅适合图表交易,同样也适用后台交易。
2、请不要在使用队列单的情况下使用追撤单功能,系统对于此复杂的逻辑机制无法保障100%追撤单算法成功。
所属函数组:交易系统 |
|