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

请教个问题,在某个品种的策略运行中,怎么取到另一个品种的tick数据? 我在vtEngine中看到一个函数gettick(),但用此取出来是个None值

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

CTA策略模块没有提供该功能,也不建议用户这么干。

要用getTick获取行情,需要先订阅该行情的推送。

Member
加入于:
帖子: 17
声望: 0

感谢群主解答,根据提示,我先订阅了行情,确实可以取到了,代码如下:

    vtSymbol = "rb1910"
    contract = self.ctaEngine.mainEngine.getContract(vtSymbol)
    from vnpy.trader.vtGateway import VtSubscribeReq
    req = VtSubscribeReq()
    req.symbol = contract.symbol
    req.exchange = contract.exchange
    self.ctaEngine.mainEngine.subscribe(req, 'CTP')
    tick2 = self.ctaEngine.mainEngine.getTick(vtSymbol)
Member
avatar
加入于:
帖子: 5
声望: 0

多谢

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