vnpy1.9.2-LTS
在模拟交易时,在初始化策略,即CtaEngine.initStrategy(...)的时候,有一步是self.subscribeMarketData(strategy) ,其中有一步是contract = self.mainEngine.getContract(strategy.vtSymbol),然后我又去mainEngine.getContract(....)中找,发现里面是直接return (self.contractDict[vtSymbol]),
那么问题来了,我在之前的操作中并没有发现哪一步向DataEngine.contractDict传入过合约信息,那为什么可以直接取?
在QQ群里问了后,有人说找connect("CTP")的时候已经订阅,于是我去CtpGateway.py那三个类中找,在CtpTdApi.onRspQryInstrument中找到了,那么应该是连接CTP在确认结算信息的回调函数中自动触发了self.reqQryInstrument({}, self.reqID)!!!!问题来了,可是这里查询传入的是空字典啊,有啥用啊
谢谢群主或者其他大神指教