作者:yunjinqi 类别:
日期:2021-12-23 18:17:19
阅读:1218 次 消耗积分:0 分
前两天有读者咨询,如何使用pyfolio对比策略的收益与基准收益?其实很简单,直接拷贝原先的pyfolio包就可以使用,但是实现的时候有一些需要注意的地方,基准收益率和策略的收益率序列,两个的时间一定是要一致的,需要一一对齐,所以,最好放到一个dataframe中,一列表示基准收益率,一列表示策略的收益率。
另外,原先的backtrader_cn包结合了backtrader和pyfolio包两个,管理起来比较麻烦,尝试把两个进行分开,分别建一个包,这样方便大家直接安装使用。
本文先介绍pyfolio如何对比策略的收益率和基准的收益率,然后提供优化后的baktrader版本和pyfolio版本。
效果展示
数据
可以直接在新的pyfolio模块的datas下载获得。
测试代码
import pandas as pdimport pyfolio as pfimport osimport warnings
warnings.filterwarnings("ignore")# 加载数据pf_path = os.path.dirname(pf.__file__)df = pd.read_csv(pf_path+"/datas/基准收益率和日收益率序列.csv",index_col = 0)df.index = pd.to_datetime(df.index)positions = pd.read_csv(pf_path+"/datas/positions.csv",index_col = 0)positions.index = pd.to_datetime(positions.index)pf.create_full_tear_sheet(df['returns'],benchmark_rets=df['benchmark_rets'],positions= positions)
pyfolio包的安装地址
这个pyfolio包是我部分修改之后的哈,不是原版的,修改了部分的bug。pyfolio模块地址:
https://gitee.com/yunjinqi/pyfolio
智慧、心灵、财富,总要有一个在路上,愿我们能在人生的道路上,不断成长、不断成熟~~~
感兴趣可以关注我的专栏:
my_quant_study_note:分享一些关于量化投资、量化交易相关的思考
backtrader量化投资回测与交易:本专栏免费,分享backtrader相关的内容。
量化投资神器-backtrader源码解析-从入门到精通:本专栏目前收费299元,预计更新100篇策略(更新中)+36篇backtrader讲解(已完成)+backtrader源码分析。