夏普比率:从同期超额收益序列计算
我的掌握程度:
先掌握这个答案
先构造同期超额收益e_t=r_t−rf_t。常见年化估计Sharpe=mean(e_t)/std(e_t, ddof=1)×√K,K为年内观测期数。√K缩放依赖序列相关等假设;无风险利率频率必须匹配。算术收益均值年化与CAGR不是同一指标,不应无说明地互换。仅当题目明确给的是匹配口径的年化算术超额均值13%、年化波动20%时,近似夏普为0.65。
先读结论,再核对下方使用边界;数字例题为教学情景,涉及实际行情与规则时请核对原始来源。
从理解到使用
跑赢基准还不是能力证明
简单超额是策略与基准收益之差;Jensen Alpha是相对于指定风险模型的截距。未解释的收益也可能来自遗漏暴露、运气或估计误差,需说明模型、区间、费用与显著性。
从同期超额收益序列计算
常见估计为mean(r−rf)/std(r−rf, ddof=1)×√K;频率、无风险利率和费用口径要匹配。不要直接把CAGR代入算术均值公式。自相关、偏度、肥尾和大量选参会影响可靠性,不存在通用“合格夏普”。
本阶段实战方法 · 每个统计量都要带单位和假设
计算收益、波动、回归、显著性或相关性时,先明确样本和推断条件。
- 写清收益频率、样本数、缺失处理、是否含费用;百分数与小数不可混用。
- 手算一组小样本,再用代码复算;区分算术均值年化、复合年化和年化波动。
- 解释假设不成立会发生什么:自相关、肥尾、非平稳与多次试验都会影响结论。
使用边界
- p值不是原假设为真的概率,也不是策略未来盈利概率。
- 日波动×√252依赖时间聚合假设;252是教学常用交易日数,实际市场与口径可能不同。
背景 · 从一个困惑说起
两个报告都说夏普1.2,一个把复合年化收益放进公式,另一个用日收益均值。数字一样,含义却未必一致。
由此产生的问题
从日收益开始,怎样计算可比较的夏普?
核心概念
先构造同期超额收益e_t=r_t−rf_t。常见年化估计Sharpe=mean(e_t)/std(e_t, ddof=1)×√K,K为年内观测期数。√K缩放依赖序列相关等假设;无风险利率频率必须匹配。算术收益均值年化与CAGR不是同一指标,不应无说明地互换。仅当题目明确给的是匹配口径的年化算术超额均值13%、年化波动20%时,近似夏普为0.65。
为什么需要它
夏普评价的是单位波动对应的平均超额收益;如果分子、分母和频率各取不同口径,它就失去比较意义。
实际应用场景
报告注明采样频率、样本区间、rf、是否扣费、标准差约定和年化方式;与回撤、偏度、稳定性并列。
与之前知识的联系
q-206解释√K条件,q-528解释夏普的使用陷阱。
⚠ 常见误解
- 日频夏普与月频夏普没有固定30%或50%的差异。
- 不存在所有策略通用的“合格夏普”阈值。
- 零波动时不能正常相除;短样本和反复选参会让估计不稳定。
🛠 本题实践任务
运行示例,再把每期收益统一扣0.05%成本,比较夏普;写出不能据此评价实盘表现的两个原因。
💡 提示(先自己想5分钟再看)
此处已给超额收益,不再重复扣一次无风险利率。
✅ 验收标准
成本后均值与夏普下降;说明样本太短及序列/分布假设限制。
在你的浏览器内运行。首次需联网下载 Python;支持标准库和 Pyodide 提供的 NumPy、pandas 等包。行情抓取、系统文件访问和部分第三方库请在本地环境运行。输出自检仅比对结果关键词,不代替逻辑审查。
Python · 独立工作线程 · 执行限时10秒
🤖 AI导师
导师会先检查你的前置知识(年化收益、年化波动、量级双锚),再用案例、公式和代码帮助理解。此功能需要先启用服务。