我是用python写的程序,之前一直正常,这两天出了bug,我很奇怪,就开了日志打印,问题如下:
1: 检测到换月,执行卖平操作
代码如下:
dt = context.now.strftime("%H:%M")
if dt == "09:35":
logging(context,"持仓检测换月")
oj_list = jzt_db_new.find_all_order()
for oj in oj_list:
zlhy = get_dynainf(oj["lx"],210)
if zhly != oj["order_book_id"]:
if oj["side"] == 'buy':
order_id = sell_close(oj["order_book_id"], "Market",0 ,oj["filled_quantity"],serial_id = 1)
else:
order_id = buy_close(oj["order_book_id"], "Market",0 ,oj["filled_quantity"],serial_id = 2)
然后在成交回报的函数 order_status(context,order):打印相关的信息
# order_status当委托下单,成交,撤单等与下单有关的动作时,该方法就会被调用。---(选择实现)
def order_status(context,order):
jzt_core_new.logging(context,"id: %s 合约:%s 状态: %s 价格: %s" %(order.order_id,order.order_book_id,order.message,order.trade_price))
if order.status == "tradeing" and order.position_effect == "open":
jzt_db_new.update_order(context,order)
日志显示
order.position_effect 打印出来竟然是 开仓
|
然后看委托记录:显示的是平仓
到底是怎么回事