VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 4
声望: 0

策略执行节点分为策略初始化,策略运行,策略停止,但是在使用过程中发现,在执行策略初始化后,on_tick回调方法就开始被调用了,这个运行逻辑很不合理。

预期效果是,策略初始化后on_tick方法不能被回调,策略开始后才开始调用on_tick方法,触发策略监控。

Member
avatar
加入于:
帖子: 5234
声望: 313

初始化之后策略开始接收tick进行指标计算更新,此时策略trading状态为False,不能发出委托。策略启动之后策略trading状态才变为True,才能发出委托。这些项目文档都有介绍的https://www.vnpy.com/docs/cn/community/app/cta_strategy.html

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

xiaohe wrote:

初始化之后策略开始接收tick进行指标计算更新,此时策略trading状态为False,不能发出委托。策略启动之后策略trading状态才变为True,才能发出委托。这些项目文档都有介绍的https://www.vnpy.com/docs/cn/community/app/cta_strategy.html

非常感谢解答,我再仔细阅读一遍文档

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

初始化时调用on_tick是为了导入历史数据,填满k线池,假如不调用的话,你九点开启策略(1分钟k线频率),那k线池就要填满100根一分钟k线以后才开始你on_bar的策略开始下单,也就是你要等100分钟以后才开始开仓平仓。系统这里设置初始化后即使调用on_tick填满k线后也不会执行买卖,只有当开始策略后才开始买卖

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

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】