← 返回文章库

看懂回测报告:夏普、索提诺、最大回撤、胜率盈亏比各说明什么

2026-07-08 · L5

我见过太多人跑完一次回测,第一眼就去找”年化收益”那个数字,看到一个诱人的百分比就两眼放光,恨不得立刻加仓。可年化收益这东西,单独拿出来几乎没有意义——年化50%,是每天稳稳地涨、还是靠一次运气爆仓前的暴涨撑起来的?是一路平顺、还是中间跌掉过七成本金又爬回来的?你不看别的指标,根本分不清这两种天差地别的策略。真正专业的做法,是把年化收益放到一堆”配套指标”里一起看,这篇就讲清楚回测报告里最常见的几个:夏普、索提诺、最大回撤、胜率和盈亏比,它们各自在回答什么问题,又该怎么组合起来看。

夏普/索提诺:单位风险的回报

先问一个问题:两个策略,一个年化20%、波动也大,另一个年化15%、波动很小,哪个更好?

单看年化收益,你会选第一个。但如果考虑到”为了这20%,你得承受多大的颠簸”,答案可能就反过来了。这正是夏普比率要回答的问题:每承担一份风险,能换来多少超额回报。 具体想弄清楚它的计算方式和背后的原理,可以看 夏普与索提诺比率,这里只说结论性的用法——夏普比率越高,说明这个策略是用更”划算”的方式在赚钱,而不是靠堆风险硬换收益。同样是年化20%,夏普1.5的策略比夏普0.5的策略更值得信任,因为前者的每一分收益,背后承担的波动更小。

但夏普比率有一个天生的”洁癖”:它把向上的波动和向下的波动一视同仁地计入风险。一只股票某个月暴涨了15%,在夏普的计算里,这跟暴跌15%贡献的”风险”是一样大的。可现实里,没有人会因为策略”涨得太猛”而抱怨——大家真正害怕的,只是往下跌的那部分。这就是索提诺比率要修正的地方:它只把下行波动算作风险,上涨的波动不计入分母。换句话说,索提诺比率回答的是更精确的一个问题——每承担一份”亏钱的风险”,能换来多少回报。对于那种上涨凶猛、下跌也偶尔剧烈的策略(比如趋势跟踪类),索提诺往往比夏普更能反映真实的风险收益比,因为它不会因为”涨得好”而错误地扣分。

拿到回测报告,我的习惯是两个都看:夏普给你一个通用的、行业里人人都懂的参照系,方便跟别的策略横向比较;索提诺则帮你确认,这个策略的风险主要是不是来自”正常的上涨波动”被误计了。如果一个策略的索提诺明显比夏普高出一大截,通常说明它的波动里”往上冲”的成分不少,风险没有夏普看起来那么吓人;反过来如果两者差不多,说明上下波动比较对称,该有的谨慎不能少。

最大回撤:最深的坑有多深

夏普和索提诺告诉你”性价比”,但它们都是统计意义上的平均概念,不会告诉你一件更要命的事:这个策略最惨的时候,能把你埋多深。这就是**最大回撤(Max Drawdown, MDD)**要回答的问题。

最大回撤衡量的是净值曲线从历史最高点,一路跌到之后某个低点的最大跌幅。它不是”平均跌多少”,而是历史上最深的那一次坑。一个策略年化收益15%、夏普1.2,听起来很稳健,但如果它的最大回撤是45%,意味着在回测期间的某一刻,你账户里的钱曾经缩水了将近一半。这个数字,统计学上的”平均风险”根本反映不出来,但它才是决定你能不能拿得住这个策略的关键。

为什么最大回撤这么重要?因为回撤和回本之间存在一个不对称的数学关系:亏50%,你得涨100%才能回本;亏70%,得涨233%;亏90%,得涨900%。回撤越深,爬出来所需要的涨幅呈指数级增加。更现实的是心理层面——绝大多数人根本熬不住深度回撤。眼看着账户缩水三四成,大部分人在”策略是不是失效了”的自我怀疑里,会提前割肉离场,亲手把一个本该能扛过去的策略,做成了实打实的亏损。所以看回测报告,最大回撤这一项,我建议你比年化收益看得还认真:这个策略历史上最深跌过多少,你扪心自问,自己能不能扛住那种缩水的感觉。 想直接算一算某段净值序列的最大回撤,可以用一下 最大回撤计算器 这个工具,把数据粘进去就能看到峰值、谷值和回本所需涨幅。

这里还有个容易被忽略的细节:回测报告里的最大回撤,只是历史上出现过的那一次,不代表未来的上限。如果一个策略的逻辑没变,未来完全可能出现比历史更深的回撤——毕竟历史数据窗口就那么长,还没轮到”最坏情况”上演,不代表它不会发生。看到回测报告写着”最大回撤18%“,心里最好默默给它打个折扣,给自己留一点余地。

胜率与盈亏比:一对必须一起看的兄弟

回测报告里另一对常被误读的数字,是胜率盈亏比

胜率,就是盈利交易占总交易次数的比例。很多新手对胜率有一种执念——觉得胜率越高,策略越厉害,60%胜率听起来就是比40%胜率靠谱。但这个直觉是错的,错就错在胜率从来不能单独拿出来看,它必须和盈亏比(平均每笔盈利 ÷ 平均每笔亏损)绑在一起才有意义。

举两个极端的例子。策略A胜率70%,但盈亏比只有0.5——也就是说,赢的时候平均每次赚1块,输的时候平均每次亏2块。算一下期望值:0.7×1 − 0.3×2 = 0.7 − 0.6 = 0.1,勉强为正,但薄得很,一旦手续费、滑点这些现实摩擦一叠加,很容易由正转负。策略B胜率只有35%,盈亏比却有3——赢一次赚3块,输一次才亏1块。算期望值:0.35×3 − 0.65×1 = 1.05 − 0.65 = 0.4,比策略A厚实得多。也就是说,一个”十次有七次对”的策略,期望值反而可能不如一个”十次只有三四次对”的策略。 这正是很多趋势跟踪类策略的真实画像——胜率不高,常常在30%到40%之间,但靠着极少数几次大赢单,把整体收益拉起来。如果你光看胜率,会直接把这类策略判死刑,但那恰恰是判断错了方向。

想具体了解胜率和盈亏比背后的期望值算法,可以看 盈亏比与胜率 里的详细拆解。这里只强调一个态度上的转变:别再追求”高胜率”本身,追求的应该是胜率和盈亏比组合出来的正期望值。 一个策略哪怕看着”十次错七次”,只要盈亏比够高、期望值为正,长期跑下去依然能赚钱;反过来一个天天都对、但每次对得少、错一次亏得多的策略,看着安心,细算下来可能根本不赚钱,甚至是负期望。

顺带一提,胜率和盈亏比之间往往存在一种此消彼长的关系:想提高胜率,通常得把止盈设得近一点、见好就收,但这样每次赚得就少了,盈亏比会跟着下降;想提高盈亏比,往往得让盈利单跑得更远,但代价是不少本来能小赢的单子,会在中途回撤里变成打平甚至小亏,胜率因此下降。没有免费的午餐,这两个数字通常是一个跷跷板,理解了这层关系,你再看回测报告里的这两项,就不会孤立地评判其中一个了。

怎么综合看一份回测

把前面几个指标放到一起,看一份回测报告的顺序,我建议是这样的:

  1. 先看最大回撤——这是”我能不能扛住”的问题,如果回撤深到你完全无法接受,后面的收益再好看也没意义,这类策略对你来说根本不成立;
  2. 再看夏普和索提诺——这是”这份收益划不划算”的问题,同样的年化,数值越高说明赚得越”干净”;
  3. 然后看胜率和盈亏比的组合——算一下期望值是不是扎实为正,别被单独一个高胜率或者高盈亏比迷惑;
  4. 最后才看年化收益——这时候的年化收益,已经是在你确认”回撤能扛、性价比合理、期望值为正”之后,才拿来做参考的锦上添花的数字,而不是第一眼就冲上去追的东西。

这套顺序,本质上是在提醒自己:风险排在收益前面。 一个新手看回测,眼睛只会往收益最高的那个策略上飘;一个走过几轮实盘的人,眼睛会先往回撤和期望值上飘,收益反而是最后才看的那一项。想系统补一下这几个指标在整个投资框架里的位置,可以回到 L5 量化投资 里的阶梯继续往下看。

[!pitfall] 这几个指标里,任何一个单独拿出来,都可以被”调”得很好看,尤其是胜率——只要把止盈设得足够近,胜率冲到80%以上并不难,但那往往是拿盈亏比换来的虚假繁荣,细算期望值可能根本不赚钱。夏普比率也一样,靠缩窄回测区间、剔除几段不利的行情,一样能把数字修饰得漂亮。真正靠谱的做法,是把夏普/索提诺、最大回撤、胜率盈亏比这几项放在一起交叉验证,任何一项好得不正常,都要去问一句”是不是在调这个数字的过程中,牺牲了别的什么”。更重要的是,别忘了回测终究是对着历史数据打出来的成绩单——回测表现好,不等于未来表现也会好,市场结构会变,过去有效的规律随时可能失灵,任何一份回测报告都只能当参考,不能当承诺。

小结

一份回测报告里最容易骗人的,从来不是某个指标造假,而是你只看了其中一个、却当成了全部。夏普和索提诺告诉你收益划不划算,最大回撤告诉你最深能跌多少、你扛不扛得住,胜率和盈亏比合起来告诉你这套交易逻辑的期望值是正是负。把这几个指标放在一起交叉着看,你才不会被一条漂亮的收益曲线牵着走。记住,回测终究是历史的答卷,不是未来的保证书——看懂这些指标的意义,是为了更理性地筛掉那些一眼就不靠谱的策略,而不是为了找到一个”稳赚不赔”的幻觉。


本文仅为投资教育科普,不构成任何投资建议。回测指标存在局限,历史表现不代表未来收益,量化交易与实盘操作均有风险,投资决策需谨慎并结合自身实际情况。