环境: CTP接口,SIMNOW仿真:
下平仓单
order1 = scr_engine.sell(vt_symbol = vt_symbol, price = Ps, volume = 1)
order_status = scr_engine.get_order(order1)
记录下单时间
tBegin = datetime.datetime.now()
while order_status is None:
order_status = scr_engine.get_order(order1)
while order_status.traded == 0
timedelta = datetime.datetime.now() - tBegin
if timedelta.total_seconds > 2:
# 超过2秒未成交,撤单重新下单!
scr_engine.cancel_order(order1)
order_status = scr_engine.get_order(order1)
if order_status is None:
order_status = scr_engine.get_order(order1)
if order_status.status.value != "已撤销":
order_status = scr_engine.get_order(order1)
od00 = scr_engine.sell(vt_symbol = vt_symbol, price = Ps - 2, volume = 1)
重新下单会报错,平仓量超过持仓量!
难道是撤单后,冻结仓位未解除冻结,要等待解冻后才能下单?
这个延时有办法避免吗?