无风险利率这一栏请自己填。用国债收益率、货币基金收益率还是银行存款利率,不同口径算出来的夏普 比率不一样,没有唯一正确答案,但同一批对比对象必须用同一个口径,否则比出来的高低没有意义。
逐期明细
| 第几期 | 该期收益率 | 偏离均值 | 累计净值 | 当期回撤 | 偏离方向 |
|---|---|---|---|---|---|
| 1 | 2.40% | 1.77 pp | 102.40 | — | 高于均值 |
| 2 | −1.80% | −2.43 pp | 100.56 | −1.80% | 低于均值 |
| 3 | 3.10% | 2.47 pp | 103.67 | — | 高于均值 |
| 4 | 0.60% | −0.03 pp | 104.30 | — | 低于均值 |
| 5 | −3.50% | −4.13 pp | 100.65 | −3.50% | 低于均值 |
| 6 | 4.20% | 3.57 pp | 104.87 | — | 高于均值 |
| 7 | 1.10% | 0.47 pp | 106.03 | — | 高于均值 |
| 8 | −0.90% | −1.53 pp | 105.07 | −0.90% | 低于均值 |
| 9 | 2.80% | 2.17 pp | 108.01 | — | 高于均值 |
| 10 | −2.20% | −2.83 pp | 105.64 | −2.20% | 低于均值 |
| 11 | 1.50% | 0.87 pp | 107.22 | −0.73% | 高于均值 |
| 12 | 0.30% | −0.33 pp | 107.54 | −0.44% | 低于均值 |
本工具只做统计换算:算术均值、样本标准差(除以 n−1)、以无风险利率为门 槛的下行标准差、 按每年固定期数做的平方根年化,以及按输入顺序折出净值曲线后取到的最大回撤。 它不判断某个夏普值或卡玛值算高还是算低,不含交易费用、税负与申赎摩擦, 也不识别你填的这串数字是回测结果还是实盘结果。序列顺序不影响标准差与夏普, 但会直接改变最大回撤与卡玛比率。
怎么用
7 步- 粘贴收益率序列:把一组周期收益率填进文本框,单位是百分数,逗号、空格或换行分隔都行,写成 2.4 或 2.4% 都能识别。至少要两个数才能算标准差。
- 选对周期类型:这串数字是日收益就选「日」,是月收益就选「月」。这一栏决定年化时乘的是根号 252 还是根号 12,选错会让波动率差出好几倍。
- 填无风险年化利率:填一个你认可的无风险收益口径,比如国债收益率或货币基金收益率。这个数直接从超额收益里扣,填得越高夏普越低。
- 读结果并看逐期明细:上方给出夏普、索提诺、卡玛与年化波动率、年化收益、最大回撤,下方表格逐期列出每期收益、偏离均值的幅度、累计净值与当期回撤。偏离越大的那几期,就是波动率的主要来源。
- 把三个比率横着对比:夏普罚全部波动、索提诺只罚下跌、卡玛只认最深的那一个坑。三个数放在一起看:如果卡玛明显比夏普难看,说明这条曲线平时挺稳,坑却挖得很深,标准差没把这件事说出来。
- 把序列打乱再算一遍:把同一串收益率换个顺序重新粘进去,夏普和索提诺一个字都不会变,卡玛和最大回撤却会变。这一步能直观看出「路径」这件事被标准差彻底忽略了。
- 换口径再算一遍:把无风险利率上下各调一档,或者换一段样本区间重算,看看夏普比率变化多大。稳不稳,比它本身是多少更值得关心。
夏普比率在衡量什么
单看收益率是没法比较两笔投资的。一个人一年赚 30%,另一个人赚 12%,谁做得更好? 答案取决于他们各自承担了多少波动。如果第一个人的净值在一年里上下翻腾了三四十个点, 而第二个人几乎是一条缓坡向上的线,那么第一个人只是把赌注下得更大,不一定更聪明。 夏普比率就是把这件事量化:分子是收益减去无风险收益的那部分,分母是收益率的标准差, 算出来的数字表示每承担一个单位的波动,能换回多少超额收益。
注意分子里减掉的那一项。躺着买无风险资产也能拿到一份收益,这部分不算本事, 必须先扣掉,剩下的才是承担风险换来的补偿。所以夏普比率衡量的从来不是「赚得多不多」, 而是「这份多赚的钱是不是买得划算」。
年化是折算,不是观测
工具里的年化波动率,是把样本标准差乘以根号周期数得到的:日频乘根号 252,月频乘根号 12。 这个做法背后有个很强的假设——每期收益互相独立、分布不变。它只是一个换算约定, 并不代表你真的观测到了一年的波动。样本越短,这层折算就越像放大镜: 六十个交易日的标准差本身估得就毛糙,再乘上十六倍左右的放大系数,误差同样被放大。
更隐蔽的问题是样本区间的选择。一段只有上涨的三个月,波动率会算得偏低,夏普自然好看; 把起点往前挪一个月,把那次下跌包进来,同一个策略的夏普可能直接腰斩。 所以看到一个漂亮的夏普数字,第一反应应该是问「这是哪段时间算的、包不包含完整的涨跌」, 而不是先信了再说。
无风险利率这一栏,会改变结论
这个工具刻意把无风险利率做成必填项,不给默认答案。原因是它没有唯一正确值: 有人用短期国债收益率,有人用货币基金的七日年化,有人干脆用银行定存利率, 期限选一年还是十年也是分歧点。这些口径之间差个一两个百分点很正常, 而这一两个百分点是从分子里直接扣的。
当两个对象的年化收益都不高、波动又接近时,换一个无风险利率口径足以让它们的排名对调。 结论就是:夏普比率不是一个能脱离上下文报出来的绝对数。你自己算的时候, 同一批对比对象必须锁死同一个口径、同一个期限、同一段样本区间; 别人报给你的时候,先问清楚这三件事,再决定要不要采信。
几个容易踩的坑
把波动率当成风险的全部。 标准差只描述收益率围绕均值的抖动幅度,它不认识流动性枯竭、不认识杠杆爆仓、 也不认识一只票停牌半年之后的复牌跳水。有些策略平时曲线极其平滑、夏普很高, 风险却全部压在尾部的小概率事件上,标准差在事发之前完全看不出这一点。
忽略了顺序不影响夏普。 把同一串收益率打乱重排,均值和标准差一个字都不变,夏普比率也不变。 但先跌 30% 再慢慢涨回来,和先涨上去再回撤 30%,持有体验和实际的加减仓行为天差地别。 想看清路径造成的伤害,得配合最大回撤一起看——工具里的卡玛比率就是干这件事的, 它把分母换成最大回撤,所以你打乱顺序重算一遍,卡玛会变而夏普不会。
拿不同频率的夏普直接对比。 日频算出来的年化波动率和月频算出来的往往对不上,因为收益率序列存在自相关时, 平方根法则就不成立了。跨频率比较之前,至少要确认两边用的是同一种频率的原始数据。
用夏普给自己的持仓打分,样本却只有几期。 标准差在小样本下极不稳定,几期数据算出来的夏普基本上是噪声。与其纠结那个三位小数, 不如老老实实积累更长的记录。
怎么用它做决策
最实用的用法是横向比,而不是看绝对值。把几个候选对象放在同一段区间、 同一个无风险利率口径下各算一遍,谁的单位风险回报更高一目了然。 第二个用法是做稳健性检验:把样本区间前后各挪一段重算,如果排名翻来覆去地变, 说明这个差距是噪声而不是能力。第三个用法是配合索提诺看波动的构成—— 索提诺只惩罚跌,如果它明显高于夏普,说明这个组合的波动主要来自向上跳, 夏普对它其实是不公平的。
还有一个反向用法:拿它去检验别人报给你的数字。有人说自己的策略年化 40%、夏普 3, 你可以倒推一下——分子接近 38 个百分点,那分母只能是十来个点的年化波动率, 也就是净值几乎不怎么抖却每年翻小一半。把这两个条件放在一起,它需要样本区间、 口径和运气三样都站在同一边。这个反推只要十几秒,比听半小时路演有用。
边界与假设
本工具只做统计换算:算术均值、样本标准差、以无风险利率为门槛的下行标准差、 按固定期数做的平方根年化,以及把收益率按输入顺序折成净值曲线(起点记作 100)后取到的最大回撤。 卡玛比率取的是「年化收益 ÷ 最大回撤」这一常见口径,分子不再扣无风险利率, 这一点与夏普、索提诺不同,跨平台对比前请先确认对方用的是哪种口径。 工具不含交易费用、申赎费与税负,不区分你填进去的是回测数据还是实盘记录, 也不判断某个夏普值或卡玛值算高还是算低。收益率序列一次最多接受 600 个数,超出部分会被截断。
风险提示:历史波动率与历史收益率都不能推断未来,过往业绩不代表未来表现。本工具仅为测算演示,不构成投资建议。
常见问题
8 条夏普比率怎么计算?
无风险利率填多少?会影响结论吗?
用三个月的数据算年化夏普,靠谱吗?
夏普比率多少算好?
索提诺比率和夏普比率有什么区别?
卡玛比率是什么?和夏普、索提诺差在哪里?
卡玛比率有什么缺陷?为什么有时显示「无法计算」?
为什么和某个平台展示的对不上?这个结果算税后费后吗?
本工具仅为测算演示,不构成投资建议。计算结果受输入假设影响,实际情况请以官方规定与金融机构公布为准。