求大佬们解惑:最近实盘测试的时候发现一个问题!
CZCE的品种在下午三点的时刻应该比大商所和上期所少发送一个tick,导致on_bar函数触发不了,因而变量无法更新!保存在cta_strategy_data中的变量就是有问题的,当程序再一次打开的时候,变量会自动读取问题数值,目前自己的解决方案是将会变化的变量数值不记录在cta_strategy_data中,这样每次程序启动时,就会重新计算变量值,但是总觉的这样不是特别的方便,治标不治本!请问有什么别的更好的解决方案,跪谢!
求大佬们解惑:最近实盘测试的时候发现一个问题!
CZCE的品种在下午三点的时刻应该比大商所和上期所少发送一个tick,导致on_bar函数触发不了,因而变量无法更新!保存在cta_strategy_data中的变量就是有问题的,当程序再一次打开的时候,变量会自动读取问题数值,目前自己的解决方案是将会变化的变量数值不记录在cta_strategy_data中,这样每次程序启动时,就会重新计算变量值,但是总觉的这样不是特别的方便,治标不治本!请问有什么别的更好的解决方案,跪谢!
确实是少发送了一个tick。指标不记录在cta_strategy_data中,有数据服务的话,开盘之后初始化时会自动拉取正确的数据做重新计算,这样是最方便的方法。不然需要去vnpy底层注册TIMER然后到时间强制合成K线,这样就比较麻烦了
感谢回答,如果在bg update_tick中直接针对CZCE品种进行强制性合成new_minute,应该也是可行的吧
是的