有个读者咨询如何在运行策略之后,能够输出来特定的数据到csv文件中,比如持仓期间每个bar的收益率等相关信息?

简单方法

要解决这个问题有很简单的方法,比如初始化的时候创建一个容器(比如列表)用来保存每个bar运行的数据,在next中尝试获取相关的信息,添加到容器之中,最后结束的时候,在stop函数中把这个容器里面的数据转换成df格式,然后保存到本地就可以了。

复杂方法

如果要收集的信息数据是经常会用到的,可以自己创建一个Analyzer,用于收集数据,这样下次使用的时候直接加载这个Ananlyzer到cerebro中,策略运行完之后读取这个Analyzer就可以了
参考下面的文章:
14、backtrader的一些基本概念-如何使用analyzer和创建新的analyzer(1)
15、backtrader的一些基本概念-如何使用analyzer和创建新的analyzer(2)
16、backtrader的一些基本概念-如何使用analyzer和创建新的analyzer(3)—及backtrader交流群
17、backtrader的一些基本概念—如何使用analyzer及创建新的analyzer(4)—策略绩效评价模块pyfo

06-24 03:06