本文主要是介绍vnpy学习10_常见坑02,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
撮合规则
撮合普通限价单推送2条信息
self.strategy.onTrade(trade)self.strategy.onOrder(order)
撮合止损单推送3条信息
self.strategy.onStopOrder(so)
self.strategy.onOrder(order)
self.strategy.onTrade(trade)
如果需要在止损单触发时执行一段逻辑,最好在onStopOrder里面做修改,并且留意以订单的状态(所有止损单都会通知这里,包括新增订单,撤销订单和订单成交等)
停止单的orderid
并且对于停止单而言,下单成功后返回的
order_ids = self.cover(xxx,True)
这里的order_ids是list,里面每个元素大概长这样“CtaStopOrder.26”,以CtaStopOrder开头的。而非常规数字id
在回调函数中onStopOrder的so入参对应onStopOrder.stopOrderID变量
其他异常or报错
1,UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
这篇关于vnpy学习10_常见坑02的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!