组合、风险与定价进阶经典参考

Pyfolio

对策略收益、持仓与交易进行绩效和风险分析,生成多角度报告的经典工具。

★ 6,431quantopian/pyfolio核验 2026-10-20
PythonpandasMatplotlib

为什么值得学

适合学习研究报告的指标组织,以及收益之外的集中度、换手和持仓暴露。

需要的基础

  • 收益率序列
  • 持仓与交易记录
  • 回撤

涉及哪些内容

绩效归因持仓暴露换手风险报告

数据与控制流程

  1. 1收益 + 持仓 + 交易
  2. 2时间与字段对齐
  3. 3风险及暴露统计
  4. 4分项图表
  5. 5综合报告

此流程为教学归纳,便于建立整体认识;完整条件分支与运行细节请对照下方源码。

架构拆解 · 4 个核心模块

每个入口均已核对,点击可阅读源码
MODULE 01

收益时间序列

timeseries 组织收益和风险分析,并调用相关统计能力。

输入
策略及基准收益
输出
收益和风险统计
源码入口 ↗pyfolio/timeseries.py
MODULE 02

持仓分析

pos 计算权重、集中度、多空分布和行业暴露。

输入
按日持仓市值与现金
输出
持仓结构和暴露指标
源码入口 ↗pyfolio/pos.py
MODULE 03

交易分析

txn 整理交易并计算成交量、换手等信息。

输入
逐笔交易与持仓
输出
交易行为统计
源码入口 ↗pyfolio/txn.py
MODULE 04

报告组装

tears 组合收益、持仓和交易分析,形成多种 tear sheet。

输入
收益、持仓、交易及基准
输出
完整或专题分析报告
源码入口 ↗pyfolio/tears.py

建议阅读顺序

  1. 先看 create_full_tear_sheet 的三个主要输入
  2. 读 pos 的权重和集中度计算
  3. 读 txn 的换手分母
  4. 最后核对 timeseries 的年化与基准处理
本站设计的学习练习

动手做一次

给一份固定回测结果生成风险报告,并解释净值之外的两个问题。

完成后,检查这些证据

  • 确保收益和基准日期一致
  • 标注换手和集中度口径
  • 用手算结果复核一次回撤或一个持仓权重

适用边界与版本说明

原始版本生态较旧;应单独核对依赖兼容性。报告只分析输入记录,不能自动发现回测本身的未来信息泄漏。

Star 快照:6,431 · 核验日期:2026-10-20 · GitHub 归档标记:未归档

核验默认分支:master · 源码固定提交:4b901f6d73aa ↗

来源:GitHub 仓库与 Star 页面、README及上述源文件。分层、阅读顺序与练习为本站归纳;未逐一安装运行这些框架,源码提交不等于推荐安装版本。

同方向继续比较