vn.py官网
你的开源社区量化交易平台
Member
加入于:
帖子: 2
声望: 0

BacktestingEngine中的cancel_all函数是需要传入strategy: CtaTemplate类型来运行的,但是在样例中AtrRsiStrategy中的on_bar函数调用的cancel_all却没有传入strategy: CtaTemplat,这不会出现bug吗

Administrator
avatar
加入于:
帖子: 4490
声望: 302

一个是BacktestingEngine的cancel_all,一个是CtaTemplate的cancel_all,两个对象的方法哦

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

但是当用这个回测引擎做回测的时候,CtaTemplate的cancel_all会用到了BacktestingEngine的cancel_all,下面是CtaTemplate的cancel_all方法:
def cancel_all(self):
"""
Cancel all orders sent by strategy.
"""
if self.trading:
self.cta_engine.cancel_all(self)

做回测的时候self.cta_engine就是BacktestingEngine吧?然后就会调用到BacktestingEngine的cancel_all啊

Member
avatar
加入于:
帖子: 2748
声望: 189

是的。
CTA引擎是由策略引擎在使用策略类创建策略实例时自动传入,用户本质上无需关心

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

沪公网安备 31011502017034号