OrderStatusEx2事件Status 参数的意义如下
"Cancelled" 表示订单已经撤销
"Submitted"和"PreSubmitted" 表示订单已经提交,当只成交一部分尚未完全成交时也会出现此事件,此时已成交数量在Filled参数中显示
"Filled" 表示本地订单已经全部成交
"Tradeing" 每笔成交回报,此时Filled是本次成交数量,Remaining将始终为0
"Inactive" 表示本次委托无效,比如价格超过允许范围,委托数量超出范围等等
Cancelled状态和Inactive两个状态的信息不是很充分.
举例来说:
1、 在开盘时间下单,10秒不在交就撤单并追单.如果撤单时刚好在暂停交易的时间段,也会返回"Cancelled".但金字塔软件的"交易状态"窗口有很明确的显示说:未撤单,因为不在交易时间段
2、在暂停交易时间段下单,会返回两个事件,第一个事件是Submitted,第二个事件是Cancelled,如果仅根据“Cancelled"分不清是无法下单,还是主动撤单成功的返回结果
3、下单价格超过涨跌停板也会出"Cancelled"
3、返回"Inactive" 状态可能是平仓单超过持仓量、资金不足,或者是已收盘等。OrderStatusEx2事件仅返回”inactive“,信息不足
在金字塔的“交易状态"窗口中状态信息很丰富
800123 : IF1211 - 综合交易平台:资金不足
800123 : rb1301 - 已撤单报单被拒绝价格超出涨停板 量:1
800123 : m1301 - 已撤单报单被拒绝当前是开市暂停! 量:1
800123 : IF1211 - 已撤单报单被拒绝当前状态禁止此项操作 量:1
希望OrderStatusEx2事件Status字段能包含“交易状态"窗口中的信息