博客
夏普比率:如何用每日 P&L 计算
夏普比率是平均每日结果除以每日结果的标准差。一步步算一遍,看看为什么不同工具给出的数值不一致,并检查这个数值背后有多少天的数据。
10 分钟阅读Dennis Jahn#术语表#指标
交易涉及风险。Tradeways 提供交易日志和分析软件,不提供投资建议。 阅读风险披露.
相关
博客
夏普比率是平均每日结果除以每日结果的标准差。一步步算一遍,看看为什么不同工具给出的数值不一致,并检查这个数值背后有多少天的数据。
10 分钟阅读Dennis Jahn#术语表#指标
交易涉及风险。Tradeways 提供交易日志和分析软件,不提供投资建议。 阅读风险披露.
相关
我们使用 Cookie(包括分析类)来改进 Tradeways。 · 隐私
夏普比率是平均每日结果除以每日结果的标准差,后者衡量各个交易日围绕平均值分散的程度。年化时乘以 √252。例如,10 天的平均值为 +30 USD、标准差为 280.99 USD,得到 30 ÷ 280.99 × 15.87 = 1.69。
同样的 10 天,电子表格可能显示 1.79,而且 10 天太少,任何一个数值都说明不了太多。本文一步步算完这个例子,说明哪些选择会改变数值,并说明 Tradeways 采用的口径。
夏普比率 =(平均每日结果 − 每日无风险利率)÷ 每日结果的标准差 × √252
标准差 = √(与平均值之差的平方和 ÷ (n − 1))
其中 n 是天数。如例子所示,有些工具改为除以 n。
这个比率没有单位,因为平均值的单位与标准差的单位相互抵消。每一天都要使用同一种单位:货币、R 倍数,或账户的百分比。
下面的账户是假设的,与索提诺比率指南使用的是同一个账户。每日结果为扣费后的 USD 金额。
| 日期 | 净 P&L | 与 +30 平均值之差 | 差值平方 |
|---|---|---|---|
| 1 | +420 | +390 | 152,100 |
| 2 | −310 | −340 | 115,600 |
| 3 | +180 | +150 | 22,500 |
| 4 | +260 | +230 | 52,900 |
| 5 | −240 | −270 | 72,900 |
| 6 | −90 | −120 | 14,400 |
| 7 | +350 | +320 | 102,400 |
| 8 | −380 | −410 | 168,100 |
| 9 | +120 | +90 | 8,100 |
| 10 | −10 | −40 | 1,600 |
这 10 天合计 +300 USD,平均每日为 +30 USD。10 个平方值之和为 710,600。
标准差为 √(710,600 ÷ 9) = 280.99 USD。每日比率为 30 ÷ 280.99 = 0.1068,年化后为 0.1068 × 15.87 = 1.69。
这个比率的提出者用上面的公式定义它。截至 2026 年 10 月 15 日,William Sharpe 1994 年的论文 The Sharpe Ratio 将历史比率定义为高于基准的平均回报除以这些超额回报的标准差,并给出了电子表格公式 AVERAGE ÷ STDEV。不同工具在这个公式周围的选择各不相同:
把你的数值与电子表格、Broker 报告或其他时期的数值比较之前,先确认双方使用相同的除数、天数、年化方式和利率。
Sharpe 1994 年的论文指出,平均回报的 t 统计量等于每期比率乘以 √T,其中 T 是回报的期数。对这个例子,就是 0.1068 × √10 = 0.34。平均每日结果只有其标准误的约三分之一,标准误为 280.99 ÷ √10 = 88.86 USD。
t 统计量这么小,意味着单独一天就可能改变结论。去掉第 1 天(+420 USD),其余 9 天的平均值是 −13.33 USD。
t 统计量随天数的平方根增长。在同样的每日比率下,100 天对应 1.07,252 天对应 1.69。正好 252 天时,t 统计量等于年化比率。由 10 天算出的 1.69 年化数值,所依据的数据远少于由一整年交易算出的同一数值。
没有哪个“好”的夏普比率门槛可以直接套用到你自己的每日 P&L 上。作为参照,Sharpe 1994 年的论文用年化比率 0.40 来说明“股票市场”,其依据是每年 6% 的平均超额回报和 15% 的标准差这两个典型估计。这个数值描述的是每天都投入的资本的百分比回报。用你交易日的货币 P&L 算出的比率衡量的是另一回事,而且上面每一个单独的选择都会把示例的数值移到 1.33 与 1.79 之间,这个区间比整个 0.40 还要宽。
请与你自己更早的时期比较,使用相同的算法,并且要有足够多的天数才有意义。
符号是唯一可以单独解读的部分,而且只适用于所测量的时期。无风险利率为 0 时,比率低于 0 表示该时期你的平均每日结果是亏损的。
夏普比率用平均每日结果除以所有天数的分散程度,所以远高于平均值的盈利日会像同样远低于平均值的亏损日一样拉大标准差。索提诺比率用同样的平均值除以下行偏差,而下行偏差只由亏损日决定。
对这个例子,Tradeways 显示的索提诺比率是 1.92,夏普比率是 1.69。索提诺指南还加入了一个亏损日相同、但有一个大额盈利日的账户:它的夏普比率降到 1.20,索提诺比率仍为 1.92。当两个比率的走向出现分歧时,先检查是你的盈利日还是亏损日发生了变化。
这两个比率都看不出账户在峰值之间回撤了多深。最大 Drawdown可以。盈利因子和交易期望值衡量的是你的 Trade 本身,不做任何波动加权。
Tradeways Dashboard 上的夏普比率 Widget(见 Widget 文档)使用:
对示例账户,在 P&L 以货币显示且无风险利率为 0 时,Widget 显示 1.69。如果你每年交易的天数少于 252 天,请记住 √252 描述的是每天都交易的一年,正如上面关于年化的选择所示。对同样的 10 天,使用 STDEV.P 的电子表格显示 1.79。
无风险利率是百分比回报,所以只能从同样属于回报的结果中扣除。当 Dashboard 以账户百分比显示 P&L 时才使用它。P&L 使用其他任何单位时,请保持为 0。范围内不足两天,或每天的结果都相同时,卡片显示“—”。
这个比率描述的是过去的结果,不能预测下一个交易时段。在用它支持交易决策之前,请阅读 Tradeways 风险披露。
查看 Tradeways Dashboard 可以显示什么,然后把夏普比率和索提诺比率 Widget 并排添加,用于你想评估的时期。