【答读者问37】如何使用pyfolio对比基准收益率和策略收益率?
作者: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源码分析。


版权所有,转载本站文章请注明出处:云子量化, http://www.woniunote.com/article/65
上一篇:【答读者问36】使用btplotting或者backtraader_pyqt_ui增强backtrader的画图功能
下一篇:盈透证券(IB) TWS API使用教程(python版本)及一个简单的程序化交易策略