问答交流

关于模型固化、策略上模拟盘的问题

由svnquant创建,最终由svnquant 被浏览 23 用户

问题

  1. 通过咱们知识库内的一个xgboost案例,跑了一个结果出来,跑完后保存模型。通过另外一个策略调用这个模型,包括代码列表的起止时间在内的所有参数保持不变,再跑却跑不出相似的结果,这个可能是由于什么原因造成的?
  2. 同样是上面的策略,特征里有rank_return_30这条,但在基础特征抽取的前取数据天数写了90,包括学习集和测试集都是一样的设置,可以跑通,但放到模拟上就不能跑通,报dropnan后没有数据。修改为180天以后也不行。这个是什么原因呢?

==[Update@2022-06-28 8:40] 经不断测试,发现好像是因为策略在模拟盘运行时代码列表的日期范围没有传给自动标注和基础特征抽取,然后就命中了不匹配的缓存,所以导致没数据。把与代码列表一致的时间范围配到自动标注和基础特征抽取后,再把所有缓存都关掉,问题就解决了。==

==但是又出现一个新的问题,在模拟盘里如何调用用户空间下固化的模型。访问路径是什么?这点在知识库里都没有一个明确的说法。==

因为模型固化的方式,跑的效果不好,所以上模拟盘的是下面这个完整的策略。

请大神给支支招~

https://bigquant.com/experimentshare/572e283ea6064516aa0b0b4ddd675b77

\

评论
  • 第一个问题我觉得是这样 他的模型学习会基于某些策略的因子(比如市盈率 比如macd)情况下跑出来的,你其他参数不变,但是你因子变了 可以理解为模型跟因子的匹配程度降低了(他基于市盈率跑的,结果你换成了流通市值),所以跑不出相似的结果(逻辑不一定对,一起探讨哈) 第二个问题我有一个类似的情况,某个策略不使用机器学习 单纯的回测可以跑通,然后我也是加入了预测和学习 提示也是droppan没有数据 我自己总结了下,因为这个策略能给出的学习数目太少了,大概只能给出几万条,机器无法学习,你试试看放宽一点行不行
  • 谢谢回复。 关于问题1,两种方式因子也没变。也就是说我单纯的就是把训练过程给打包起来固化住了,其他的什么都没变。但结果变了。 关于问题2,我是使用机器学习的情况下,在策略编辑器里能跑通,但发到模拟交易就不行了。也是时间、特征、训练方法、参数什么的都没变。
  • 模拟跑不通会不会是没有绑定实盘?
{link}