请问PortfolioStrategy策略如何自由配置多个合约,新建策略的时候,一般输入两三个合约,后面就不方便修改了,除非重新建策略实体,请问如何在策略代码中批量加载100个以上的合约?
请问PortfolioStrategy策略如何自由配置多个合约,新建策略的时候,一般输入两三个合约,后面就不方便修改了,除非重新建策略实体,请问如何在策略代码中批量加载100个以上的合约?
可以根据自己需求个性化修改策略引擎
策略引擎是你们的源码,软件升级后,会把用户的修改覆盖掉吧
有没技术人员回答一下,是不是升级前,要备份用户的修改
是的
在策略的__init__
里面初始化self.vt_symbols可以部分解决这个问题,比如从特定csv文件读取合约列表并赋值给self.vt_symbols。这样做有一个问题是,调用self.stop_strategy的时候 会把订阅过的合约保存在json文件中,下次启动的时候会来读取这个json,这样在__init__
里面赋值过的self.vt_symbols和之后读取这个json得到更新的self.vt_symbols可能会出现重复,engine会同时多次推送同一个合约
xiaohe wrote:
可以根据自己需求个性化修改策略引擎
jingsiaosing wrote:
在策略的
__init__
里面初始化self.vt_symbols可以部分解决这个问题,比如从特定csv文件读取合约列表并赋值给self.vt_symbols。这样做有一个问题是,调用self.stop_strategy的时候 会把订阅过的合约保存在json文件中,下次启动的时候会来读取这个json,这样在__init__
里面赋值过的self.vt_symbols和之后读取这个json得到更新的self.vt_symbols可能会出现重复,engine会同时多次推送同一个合约
xiaohe wrote:可以根据自己需求个性化修改策略引擎
那这个重复的问题怎么解决呢
对self.vt_symbols做个去重就可以了