请教:def order_status(context,order):
o=get_orders(context.s1,1)
if o[-1].order_book_id==context.s1:
order_id=o[-1].order_id
order_side=o[-1].side
print(order_id)
我只有打印出策略连接的订单ID。 但我手工开其他品种。 还是有打印输出。 打印输出的是我挂的品种的最后一张ID。
这函数的逻辑有些不对啊。 该过滤的没有过滤。
这消息窗口是不是指定输出窗口? 如果手工开仓,也输出吗?
if o[-1].order_book_id==context.s1:
order_book_id 这个方法调用不到值。
我现在的代码是这样:
def order_status(context,order):
o=get_orders(context.s1,1)
if o[-1].order_book_id==context.s1:
book_id=o[-1].order_book_id
order_id=o[-1].order_id
order_side=o[-1].side
print("yes")
按理,我开其他的品种。 不会和这个策略程序有关系。 但现在输出还是“YES”
这里面的数据结构是何情况?我大概知道何情况。 就是其他品种操作。 也会触发ORDER STATUS 这个函数。
他会计算一下。
如果这样的话。 这函数是否有些问题?
如果同时挂几个品种。 资源也是占用的。 互相计算了。
这个是订单状态跟新,不是说你本策略的更新
就好比你其他地方手机下单,不可能电脑上软件没有更新状态看不到持仓一个道理