量化回测 青柠量化

夏普比率计算公式怎么理解?分母波动率在吓你什么

Z ZPYZTECH
2026-08-07

夏普公式写出来很短,网上一搜一大把。真正卡住人的,通常不是「分子减什么」,而是:分母那个波动率,到底在吓你什么? 搞不清这一点,你会一边把夏普当圣杯,一边在回测里被它误导。

公式拆开:两句话就够

常见写法:

夏普比率 =(策略收益 − 无风险收益)÷ 策略收益的标准差

  • 分子:你比「把钱放在近似无风险资产」多赚了多少。个人研究里,无风险利率可以取国债利率近似,也可以先取 0 做相对比较——关键是前后一致,别今天取 0、明天取 3% 还横向比。
  • 分母:收益序列有多「抖」。抖得越厉害,同样超额被除得越小,夏普越难看。

年化时,若用日收益算:分子常乘以约 252,分母乘以 √252(假设近似独立)。你不需要背系数,但要知道:日频夏普和周频夏普不能直接拿来比大小,频率一变,数字尺度会变。

分母在吓你什么:不是「跌得多」,是「路径不稳」

很多人把波动率和最大回撤混成一谈。回撤关心的是「从峰到谷亏了多深」;标准差关心的是「收益序列上下晃得有多频繁、多剧烈」。一条曲线可以回撤不大、但天天上蹿下跳(夏普被压);也可以回撤很深、但多数日子平滑、只有一段暴跌(夏普未必最差)。

所以分母吓的是:你拿收益时,账户净值有多不老实。 它对「偶发大亏」有反应,但对「一次深度回撤后的持有体验」不如最大回撤直观。这也是为什么只看夏普不够——分母惩罚的是波动,不是你最怕的那种「腰斩式」体验本身。

举个可自己验的小例子(数字仅作理解,不是市场结论):

  • – 策略甲:日收益几乎每天 +0.05%,偶有小回撤,标准差很小 → 年化一般,夏普可能很高。
  • – 策略乙:多数日子小亏小赚,偶有几天大赚,标准差更大 → 年化可能更高,夏普未必更高。

若你的目标是「睡得着」,甲更对味;若你能接受颠簸去换更高期望,乙可能更合适。夏普会偏向甲,这不是公式错了,是它在按自己的尺子量

回测里最容易算歪的三处

1. 收益序列口径。 用净值日收益率,还是用每笔交易收益率?夏普经典语境是组合净值的时间序列。拿「每笔盈亏百分比」硬套标准差,含义会变味。

2. 无风险利率乱跳。 横比两个策略时,Rf 必须相同。研究阶段取 0 可以,但写进结论时要注明。

3. 空仓期怎么处理。 策略大量时间空仓、收益接近 0,波动会被压低,夏普可能虚高。有人觉得这是优点(少交易少风险),有人觉得这是「没怎么干活却拿高分」。两种解读都成立——你要在报告里写清楚空仓占比,别只甩一个夏普。

动手验:用同一条净值算两遍

找一条你已有的回测净值序列,做两件事:

  1. 1. 按日收益算夏普(Rf 取 0),记下数字。
  2. 2. 把同一段净值按周重采样再算一遍。若你惊讶「差这么多」,恭喜,你已经碰到频率效应——以后对比策略,先统一采样频率。

再加一步:把最大回撤和夏普并排。夏普升、回撤也升,问自己接受哪个;夏普降、回撤明显降,也可能是值得的交易。公式不会替你做偏好选择。

还要分清「波动来自哪里」。若标准差主要来自少数几天的暴涨暴跌,你可以单独把那几天剔除或缩尾后再算一版夏普——不是为了美化,而是为了知道:高/低夏普是不是被极端日绑架。若缩尾后数字崩塌,说明分母在吓你的其实是尾部事件,这时与其继续迷信夏普,不如先把单日风险和停牌/涨跌停规则写清楚。

若你希望同一套策略在改参数前后,净值、夏普、回撤能版本化对照,可以把规则落到可复现回测里。青柠量化 强调策略与结果本地保存,方便你反复核对口径,而不是每次重跑都丢记录。

下载与说明见产品页:
https://www.zpyztech.com/product/qingquant/


免责声明: 本文仅作量化知识科普,不构成任何投资建议。历史指标与回测不代表未来表现,请独立判断并自行承担投资风险。

读到这里,不如自己验证一次

文章里的逻辑,你可以在青柠量化里用真实数据重新跑一遍。免费,零代码。

免费下载客户端

写下你的看法

邮箱仅用于回复通知,不会公开。