夏普比率(第一部分):实际应用与解读

36
📊 夏普比率(第一部分):实际应用与解读

股票 • 投资组合 • 交易策略 • 滚动分析 • 夏普比率与索提诺比率

由诺贝尔经济学奖得主威廉·F·夏普(William F. Sharpe)提出的夏普比率,是应用最广泛的风险调整后绩效衡量指标之一。它广泛应用于策略回测、基金产品资料概要、TradingView 策略测试器的统计摘要,以及大量金融学术文献中。

1️⃣ 夏普比率——基本概念

夏普比率衡量的是每承担一单位收益波动所获得的超额收益。

夏普比率 = (Rₚ − Rf) / σₚ

其中:

Rₚ = 投资组合或交易策略的收益率
Rf = 无风险收益率
σₚ = 收益率的标准差

对于日度数据,年化夏普比率通常按以下方式计算:

年化夏普比率 = 平均日超额收益率 / 日超额收益率标准差 × √252

📌 关键要点:夏普比率越高,通常意味着每承担一单位波动风险所获得的超额收益越高。

💡 示例

假设两项投资取得了以下结果:

投资 A——收益率 20%,波动率 20%
投资 B——收益率 18%,波动率 12%

投资 A 的收益率较高,但投资 B 的夏普比率可能更高,因为它以显著更低的波动率实现了收益。

📌 关键要点:夏普比率并不是收益率排名指标,而是风险调整后收益排名指标。

通过一个更具体的例子,可以更容易应用这一指标。假设某个交易标的在连续六个交易日的收盘价如下:

第 1 天:$100.00
第 2 天:$101.50(+1.50%)
第 3 天:$99.80(−1.67%)
第 4 天:$102.30(+2.51%)
第 5 天:$101.90(−0.39%)
第 6 天:$103.40(+1.47%)

平均日收益率 ≈ 0.68%,日收益率标准差 ≈ 1.68%

假设日无风险收益率可以忽略不计,则日度夏普比率约为 0.68 / 1.68 ≈ 0.41。再乘以 √252,即可得到年化数值。

需要注意的是,由于这里只有五个收益率观测值,这个年化结果仅用于说明计算方法。实际计算应使用更长的历史收益率数据(通常为一至数年的日度数据),才能使年化数值具有统计意义。

📈 年化夏普比率的一般解读

低于 0——较差 / 风险调整后收益为负
0–0.5——较弱
0.5–1.0——中等
1.0–2.0——良好
2.0–3.0——非常好
高于 3.0——卓越,但通常难以长期维持

📊 图表说明

上图展示了三家公司的不同价格走势。尽管三者均按相同的 8% 预期年化收益率进行模拟,但由于波动率不同,它们呈现出明显不同的价格路径和复利增长结果。

公司 C(夏普比率 2.00,波动率 4%)沿着平稳、噪声较少的路径持续上涨,其波动率最低,最终实现了最高的复利增长,年复合增长率(CAGR)为 8.2%。

公司 A(夏普比率 0.45,波动率 17.8%)的走势波动最大,价格大幅起伏,涨幅峰值超过 +45%,最终取得了最低的期末价值。尽管其预期平均收益率相同,但年复合增长率仅为 6.6%。

公司 B(夏普比率 1.0,波动率 8.0%)的夏普比率是公司 A 的两倍以上,是公司 C 的一半。其走势比公司 A 更平稳,但波动性高于公司 C,最终年复合增长率为 8.0%。

🎯 核心结论:夏普比率倾向于奖励更高的超额收益和更低的波动率。两项投资可能取得相近的收益,但如果其中一项以更低的波动率实现收益,其夏普比率就可能显著更高。


2️⃣ 股票投资组合的夏普比率

评估投资组合时,应根据投资组合自身的收益率序列计算夏普比率。

💼 投资组合示例

AAPL——权重 25%,收益率 +2.0%
MSFT——权重 25%,收益率 +1.0%
NVDA——权重 25%,收益率 +4.0%
AMD——权重 25%,收益率 −2.0%

投资组合收益率:

Rportfolio = 0.25RAAPL + 0.25RMSFT + 0.25RNVDA + 0.25RAMD = 1.25%

具体计算:

Rportfolio = 0.25×(+2) + 0.25×(+1) + 0.25×(+4) + 0.25×(−2) = 1.25%

对每个期间重复上述计算,即可得到完整的投资组合收益率序列,然后根据该序列计算夏普比率。

⚠️ 重要提示:不要简单地对投资组合中各持仓股票的夏普比率取平均值。投资组合的风险不仅取决于各股票自身的波动率,还取决于它们之间的相关性。因此,必须根据投资组合本身的收益率计算夏普比率。

Andrea Frazzini、David Kabiller 和 Lasse Pedersen 在研究《巴菲特的阿尔法》(Buffett’s Alpha)中,考察了伯克希尔·哈撒韦公司从 1976 年 11 月至 2011 年 12 月的投资表现。

研究发现,由沃伦·巴菲特领导的伯克希尔·哈撒韦公司在 1976–2011 年间取得了约 0.76 的卓越长期夏普比率,而同期整体股票市场仅为 0.39。


3️⃣ 使用夏普比率比较个股

夏普比率也可以用于比较不同的个股,但前提是所有股票都必须采用相同的计算方法进行评估。

AAPL——收益率 18%,波动率 22%,夏普比率 0.82
MSFT——收益率 17%,波动率 18%,夏普比率 0.94
NVDA——收益率 35%,波动率 45%,夏普比率 0.78
AMD——收益率 28%,波动率 38%,夏普比率 0.74

📌 按未经风险调整的收益率排序,结果为:

NVDA > AMD > AAPL > MSFT

而按夏普比率排序,结果为:

MSFT > AAPL > NVDA > AMD

为了进行有意义的横向比较,必须确保以下条件一致:

• 时间周期
• 回溯窗口
• 收益率计算方法
• 无风险利率
• 年化方法
• 缺失数据的处理方式


4️⃣ 交易策略的夏普比率

某个策略的交易记录可能包含以下收益率:

+5%、−2%、+8%、−4% 和 +3%。

直接根据这些交易收益率计算夏普比率可能看起来很方便,但通常并不是首选方法。

原因在于,夏普比率本质上是衡量收益随时间变化的表现。不同交易的持仓时间可能相差很大,因此,如果将每笔交易都视为一个时间间隔相等的观测值,就可能扭曲时间维度。

⚙️ 推荐方法

权益曲线 → 周期收益率 → 超额收益率 → 夏普比率

首先,根据策略的权益曲线计算周期收益率。例如:

1 月 1 日:$100,000
1 月 2 日:$100,500
1 月 3 日:$101,200
1 月 4 日:$99,900
1 月 5 日:$101,000

rₜ = (Equityₜ / Equityₜ₋₁) − 1

这种方法能够正确反映持仓时间、复利效应、仓位规模、空仓期间、投资组合敞口、重叠持仓,以及策略实际经历的完整权益变化路径。

夏普比率 = Mean(rₜ) / Std(rₜ)

仍然可以计算基于单笔交易的统计指标:

Mean(Trade Return) / Std(Trade Return)

但必须明确将其标注为交易层面的夏普比率(Trade-level Sharpe),而不是标准的时间序列夏普比率。


5️⃣ 滚动夏普比率

单一夏普比率概括了整个计算期间的表现。当市场环境或资产的风险调整后绩效随时间发生变化时,滚动夏普比率就显得非常有用。

以 252 个交易日的回溯窗口为例,计算窗口每次向前移动一个观测值:

第 252 天 → 第 1–252 个收益率
第 253 天 → 第 2–253 个收益率
第 254 天 → 第 3–254 个收益率

因此,最终得到的是一组随时间变化的夏普比率序列,而不是单一数值。

对于单个标的,原始输入数据不是权益曲线,而是该标的自身的日度价格收益率序列(即相邻两个交易日收盘价之间的百分比变化)。

252 日滚动夏普比率会基于同一收益率序列不断重新计算,每次计算时移除最早的一天,并加入最新的一天:

窗口 1(2023 年 1 月 – 2023 年 12 月):1.65
窗口 2(2023 年 2 月 – 2024 年 1 月):1.58
窗口 3(2023 年 3 月 – 2024 年 2 月):1.40
窗口 4(2023 年 4 月 – 2024 年 3 月):1.05
窗口 5(2023 年 5 月 – 2024 年 4 月):0.62

📉 在这个例子中,滚动夏普比率在大约四个月内从 1.65 逐步下降至 0.62。这表明该标的的风险调整后绩效正在恶化,即使其价格可能仍然处于上升趋势中,因为波动率的上升速度超过了收益率的增长速度。

这正是单一的全历史夏普比率容易掩盖的变化。

🔄 滚动夏普比率能告诉我们什么?

假设某个标的根据其完整的多年日度价格收益率历史数据计算出的长期夏普比率为 1.20。这个数值看起来相当不错,但滚动分析可能显示,其近期风险调整后绩效正在恶化。

示例:

1.8 → 1.6 → 1.3 → 0.9 → 0.4 = 恶化

0.3 → 0.6 → 0.9 → 1.2 → 1.5 = 改善

📌 静态夏普比率告诉我们某一期间发生了什么,而滚动夏普比率则告诉我们风险调整后绩效如何随时间变化。

⏱️ 如何选择滚动回溯窗口

30 天(约 1.5 个月)——反应非常灵敏,但噪声较大
63 天(约 3 个月)——短期
126 天(约 6 个月)——中期
252 天(约 1 年)——相对稳定
504 天(约 2 年)——非常稳定,但对变化的反应较慢

不存在普遍适用的最佳回溯窗口。较短的窗口反应更快,但统计噪声较大;较长的窗口更稳定,但发现变化的速度较慢。

对于策略监控,126–252 个交易日通常可以提供较好的平衡。对于研究,同时考察 63、126 和 252 个交易日的结果尤其具有参考价值。


⚠️ 夏普比率并不直接衡量回撤

夏普比率使用标准差作为风险衡量指标。标准差会同时惩罚正向和负向波动。这意味着,异常大的正收益也可能提高所测得的风险,尽管这类收益实际上是投资者所期望的。

夏普比率也不专门衡量以下指标:

最大回撤、回撤持续时间、处于水下状态(低于前期高点)的时间,以及下行波动率。


⚖️ 夏普比率与索提诺比率

索提诺比率(Sortino Ratio)与夏普比率相似,但两者对风险的定义不同。

夏普比率 =(收益率 − 无风险利率)/ 总波动率

索提诺比率 =(收益率 − 目标收益率)/ 下行偏差

两者的核心区别在于:夏普比率将所有波动都视为风险,而索提诺比率则专门关注不利方向的波动。

例如,某个策略偶尔会取得非常大的正收益。这些收益可能提高标准差,从而降低夏普比率。

索提诺比率则不会仅仅因为正收益异常大而对其进行惩罚;它主要关注低于所选目标收益率或最低可接受收益率的表现。

🎯 为什么索提诺比率可能更适合衡量风险?

对于许多投资和交易应用而言,下行风险比总波动率更值得关注。

投资者通常欢迎超预期的正收益,而真正威胁资本的是超预期的负收益。

收益率——策略 A:20%,策略 B:20%
上行波动率——策略 A:高,策略 B:低
下行波动率——策略 A:低,策略 B:高
夏普比率——策略 A:相近,策略 B:相近
索提诺比率——策略 A:较高,策略 B:较低

由于两种策略都存在较大的收益波动,夏普比率可能认为它们具有相近的风险水平。

而索提诺比率能够识别出两者的区别:策略 A 的波动主要来自正向收益,而策略 B 的波动主要来自负向收益。

因此,当主要关注点是下行风险而非总波动率时,索提诺比率可能更直观,也可能提供更有价值的信息。

🤔 应该使用夏普比率还是索提诺比率?

两者都没有绝对的优劣之分,因为它们回答的是不同的问题:

夏普比率关注:每承担一单位总波动风险,我获得了多少超额收益?

索提诺比率关注:每承担一单位下行风险,我获得了多少收益?

当总波动率具有参考价值时,夏普比率仍然非常有用。当投资者主要关注亏损和不利收益时,索提诺比率可能更符合其实际需求。

对于交易策略,通常不应仅依赖其中任何一个指标进行评估。


🏁 最终总结

夏普比率是一个强大的分析工具,但其价值取决于是否使用了正确的收益率序列。

📌 对于个股:应根据该股票自身的周期收益率计算夏普比率。

📌 跨不同时间周期比较不同资产时:必须确保所使用的夏普比率采用一致的收益率定义、无风险利率、回溯窗口和年化方法。

📌 对于投资组合:应根据投资组合自身的收益率计算,而不是对各持仓股票的夏普比率取平均值。

📌 对于交易策略:最好根据权益曲线的周期收益率计算,而不是将每笔交易视为时间间隔相等的观测值。

📌 对于绩效监控:使用 63、126 或 252 个周期的滚动回溯窗口,可以观察风险调整后绩效是在改善还是恶化。

📌 当主要关注点是下行风险而非总波动率时:索提诺比率可能提供更符合投资者实际需求的分析视角。

归根结底,没有任何单一比率能够完整描述投资表现。

夏普比率衡量收益相对于总波动率的表现;索提诺比率衡量收益相对于下行风险的表现;而马丁比率(Martin Ratio)衡量收益相对于回撤相关风险的表现。

将这些指标结合使用,可以更全面地评估风险调整后绩效。


📝 说明

夏普比率的应用范围非常广泛。感兴趣的读者可以进一步探索其更多应用场景和计算方法。

📚 夏普比率(第二部分):五种常见的计算错误

介绍如何避免计算和解读夏普比率时最常见的错误,包括收益率周期不一致、年化方法错误、波动率计算无效,以及其他方法论方面的问题。

翻译说明

本译文由机器辅助完成,英文原版仍为权威版本。我们已尽力保留原文的含义和专业术语,但部分措辞、术语或表达方式可能与原文有所不同。如有任何内容不清楚,请参阅作者 TradingView 个人主页上的英文原版,以英文版本为准。

夏普比率——TrendAdvantage 教育参考资料

免责声明

这些信息和出版物并非旨在提供,也不构成TradingView提供或认可的任何形式的财务、投资、交易或其他类型的建议或推荐。请阅读使用条款了解更多信息。