简介
quantstats – 衡量策略绩效指标的python lib库,用于投资组合分析。主要由3部分组成:
- quantstats.stats:用于计算多种性能指标,如夏普比率、胜率等
- quantstats.plots:用于性能、下降趋势、月度回报等绩效指标的可视化
- quantstats.reports:用于生成度量报告,可保存为html文件
安装&使用
- 安装:
pip install
quantstats - 使用方法:
- 使用quantstats.stats计算多种性能指标,如夏普比率、胜率等
1 | import quantstats as qs |
支持的完整指标:
1 | [f for f in dir(qs.stats) if f[0] != '_'] |
1 | ['adjusted_sortino', |
- 使用quantstats.plots以图形的形式输出绩效指标
1 | qs.plots.snapshot(stock, title="TSLA Performance') |
支持的全部绘图函数:
1 | [f for f in dir(qs.plots) if f[0] != '_'] |
1 | ['daily_returns', |
- 使用quantstats.reports生成综合报表,可保存为html文件
qs.reports.html(stock, "SPY")
支持输出7种不同的报告:
qs.reports.metrics(mode='basic|full", ...)
- 展现基础/所有指标qs.reports.plots(mode='basic|full", ...)
- 展现基础/所有绘图qs.reports.basic(...)
- 展现基础指标和绘图qs.reports.full(...)
- 展现所有指标和绘图qs.reports.html(...)
- 生成html完整报告
1 | [f for f in dir(qs.reports) if f[0] != '_'] |
['basic', 'full', 'html', 'iDisplay', 'iHTML', 'metrics', 'plots']
quantstats输出的html报表如下,可以看到左边是可视化绩效指标,右边是文字绩效指标。
在backtrader中使用quantstats
策略绩效评价是量化交易很重要的一环,backtrader提供多种分析者对象analyzer,可以输出各项策略绩效指标,但输出结果是字典方式的数据,没有可视化的绩效报表,而且还缺少一些重要指标,比如索提诺比率(sortino ratio),使用起来不友好。quantstats可以输出html报表,包括各项绩效指标和图表,且可以非常方便地与backtrader集成。
backtrader使用quantstats示例代码如下:
1 | cerebro.addanalyzer(bt.analyzers.PyFolio, _name='pyfolio') |
交流
欢迎大家留言,关注微信公众号多多交流,最新的文章会优先发布在微信公众号上。