vn.py量化社区
By Traders, For Traders.
Member
avatar
加入于:
帖子: 10
声望: 0

你好,我现在使用IB来交易,在主页面可以正常下单,订阅行情,但是我一打开行情记录页面,开始记录的时候就卡死了,打开价差交易页面也是一样卡的,我看了一下源代码,应该是产生两次订阅然后死循环了,没有想到很好的修改方法,请楼主指导下,我修改下提交到git,谢谢了。

Member
avatar
加入于:
帖子: 10
声望: 0

已经解决了,IB_gateway 里面subscribe调用 self.client.reqContractDetails(self.reqid, ib_contract),这个回调函数会触发contractDetails,contractDetails里面有self.gateway.on_contract(contract),这时候如果开启的行情订阅和价差交易,又会触发process_contract_event,process_contract_event里面又有subscribe,从而死循环导致程序卡死。

Member
avatar
加入于:
帖子: 151
声望: 0

whtm8868 wrote:

已经解决了,IB_gateway 里面subscribe调用 self.client.reqContractDetails(self.reqid, ib_contract),这个回调函数会触发contractDetails,contractDetails里面有self.gateway.on_contract(contract),这时候如果开启的行情订阅和价差交易,又会触发process_contract_event,process_contract_event里面又有subscribe,从而死循环导致程序卡死。

老师您好,您是如何处理这个问题的呢? 愿意分享一下具体实现代码吗? 万分感激

Administrator
avatar
加入于:
帖子: 4028
声望: 220

已在DEV分支修复

© 2015-2019 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号-3