绩效评估
上一章回测跑完了:10 万元变成 120,475 元,赚了 20.5%。这个数字本身回答不了任何问题——20.5% 算高还是低?中间最深亏过多少?这些收益是稳稳赚来的,还是赌来的?两条终点相同的净值曲线,一条平滑向上,一条中途腰斩再爬回来,对持有者是完全不同的两种东西。
绩效评估就是把一条净值曲线翻译成一组可比较的数字:收益翻译成年化收益,波动翻译成回撤,「风险换收益值不值」翻译成夏普和卡玛,买卖的微观结构翻译成胜率和盈亏比。本章五个指标,每个都用上一章那条真实的净值序列(250 个交易日,2025-01-02 到 2025-12-17)手算一遍。
年化收益:把时间拉平
Section titled “年化收益:把时间拉平”
人话: 是期初净值, 是期末净值, 是交易日数(A 股一年约 252 个)。把总收益开 次方根,得到「如果按这个复利速度跑满一年」的收益——这样三个月的策略和三年的策略才能放在同一把尺子上比。之所以用开方(几何平均)而不是除以年数(算术平均),是因为收益是乘法累积的:今年 +50%、明年 −50%,算术平均是 0,但你其实亏了 25%()。几何算法如实反映复利。
手算:本例 ,,:
这段回测恰好约一年(250 个交易日),年化 20.7% 和总收益 20.5% 几乎相同—— 的指数接近 1,年化几乎没做调整。如果只有 3 个月数据,同样 20.5% 会年化出超过 100%,这正是短样本年化容易吓人一跳的原因(见文末常见坑)。
最大回撤:最深的那道伤口
Section titled “最大回撤:最深的那道伤口”
人话:每天先记下「截至今天的历史最高净值」,再算今天从这个最高点跌下来百分之几;全周期里跌得最深的那一次,就是最大回撤。它回答的问题是:**持有过程中,账户最多比高点缩水多少?**这是大多数人对「风险」最真实的体感——不是方差,是「我眼睁睁看着账户少了两成」。
手算:扫描净值序列,历史最高点出现在 2025-05-09,净值 118105.74;此后最深跌到 2025-09-11 的 99541.83:
从高点到谷底隔了约 4 个月——最大回撤是个数字,回撤的持续时间是另一种折磨:4 个月里每一天净值都在前高之下,你要每天回答自己「这个策略是不是失效了」。报回撤时不报修复时间,和只报年化不报回撤一样会误导人。
夏普比率:风险换收益值不值
Section titled “夏普比率:风险换收益值不值”
人话: 是日收益均值, 是日收益标准差, 是日无风险利率。分子是「比存银行多赚的部分」,分母是「为了赚这部分每天承受的波动」,商是每承担一单位波动换来多少超额收益,再乘 年化。无风险利率取 2%(约等于国内一年期存款/国债水平),这是一个简化——实务会按期限匹配选利率,但对这个数量级的策略,r_f 取 1.5% 还是 2.5% 几乎不改变结论。
手算:由净值序列算出 249 个日收益 :
- 日收益均值 ,日收益标准差 ;
- 日无风险利率 ;
经验标尺:夏普 1 以上算不错,2 以上很少见且要警惕是否过拟合。0.92 的意思是「每承受一份波动换来近一份超额收益」——及格,但谈不上惊艳。一个细节:这个策略有空仓期,空仓时日收益是 0,把整体波动摊薄了,所以同一策略「满仓版」的夏普通常比这低。
卡玛比率:用回撤给收益定价
Section titled “卡玛比率:用回撤给收益定价”
人话:年化收益除以最大回撤。夏普用「日波动」当风险,卡玛用「最深的伤口」当风险——后者更贴近持仓体验:我不在乎每天上下 1%,我在乎最多会亏多少。
手算:。即每承担 1% 的最大回撤,换来 1.31% 的年化收益。经验上卡玛大于 1 才值得考虑实盘——意味着「最深的坑」一年能爬回来。
胜率与盈亏比:缺一不可
Section titled “胜率与盈亏比:缺一不可”
人话:胜率是「十次交易赢几次」,盈亏比是「赢的时候赢的厚度是亏的时候的几倍」。策略赚不赚钱看的是两者的乘积,单独看任何一个都会被骗。
手算一个高胜率亏钱的策略:10 笔交易,9 笔各赚 1%,1 笔亏 20%:
- 胜率 = 9/10 = 90%,看起来神准;
- 盈亏比 = 1% / 20% = 0.05;
- 每笔期望收益 = ;
- 10 笔复利下来:,亏掉 12.5%。
90% 的胜率,稳定亏钱。现实中这种策略很常见:不断「止盈」落袋小钱,亏了死扛,直到一笔大亏吞掉全部利润——人肉版的「高胜率、低盈亏比」。反过来看上一章的双均线策略:五笔完整买卖只有一笔大赚(胜率 20%),其余四笔小亏,但那一笔赚了约 1.29 万,盈亏比足够大,整体盈利。这是趋势策略的典型形态:胜率是它的成本,盈亏比是它的利润来源。评价任何策略,两个数字必须一起报。
基准与超额收益:Alpha 与 Beta 的实战度量
Section titled “基准与超额收益:Alpha 与 Beta 的实战度量”前面五个指标衡量的都是绝对表现。但只看绝对收益会掩盖一个残酷的事实:你在牛市里赚的钱,可能是大盘送的;在熊市里亏的钱,可能策略已经尽力了。
- 2020 年核心资产大牛市,沪深 300 指数大涨 27%。如果你的策略赚了 15%,看起来很丰厚,但你其实跑输了市场 12 个百分点——随便买个指数 ETF 都比你强;
- 2018 年单边阴跌,沪深 300 下跌 25%。如果你的策略亏损 5%,表面上在赔钱,但你跑赢了大盘 20 个百分点——极其优异的防守能力。
回忆第 2 章的一元线性回归:。策略收益可以拆成两块:随大盘起伏的被动收益( 收益,靠天吃饭),以及剥离大盘后的独立超额收益( 收益,真本事)。
基准指数的选择
Section titled “基准指数的选择”衡量超额收益,首先要选一把公正的尺子(基准 Benchmark):
| 策略风格 | 对应标准基准 | 为什么不能错配 |
|---|---|---|
| 大盘白马 / 价值选股 | 沪深 300 | 错配小盘基准会把市场风格差异误当成超额 |
| 中盘成长 | 中证 500 | 中盘股波动大于沪深 300,不能直接对比 |
| 小市值 / 动量选股 | 中证 1000 / 国证 2000 | 若拿沪深 300 当基准,在小盘牛市里会制造出虚假的巨额超额 |
信息比率(IR):超额收益的夏普比率
Section titled “信息比率(IR):超额收益的夏普比率”
其中日超额收益 。
人话解释:分子是年化平均跑赢基准的幅度,分母 是跟踪误差(超额收益的年化标准差,即跑赢幅度的波动大小)。商就是信息比率(Information Ratio, IR):每承受 1 单位相对跑偏的风险,能换来多少稳定的超额收益。它衡量的是机构口中「纯 Alpha 的质量」。
手算一遍: 某策略运行 250 个交易日,总收益 22%,同期基准指数上涨 10%,年化超额收益约 。 计算 250 天的每日超额收益 ,算出其日标准差为 :
经验标尺:信息比率大于 0.5 算及格,大于 1.0 算优秀,大于 1.5 在公募与量化私募界都属于头部水准。超额收益不稳定的策略(某个月暴赚 20%、其余月份持续跑输),跟踪误差很大,IR 会非常低。
输入:策略净值序列 V[0..n],基准净值序列 B[0..n],无风险年利率 rf年化收益 ← (V[n] / V[0])^(252/n) − 1peak ← V[0]对 t 从 0 到 n: peak ← max(peak, V[t]) dd[t] ← V[t] / peak − 1最大回撤 ← −min(dd)日收益 r[t] ← V[t] / V[t−1] − 1夏普 ← (mean(r) − rf/252) / sd(r) × √252卡玛 ← 年化收益 / 最大回撤
# 基准与超额计算基准日收益 r_bench[t] ← B[t] / B[t−1] − 1超额日收益 r_active[t] ← r[t] − r_bench[t]跟踪误差 TE ← sd(r_active) × √252年化超额 ← mean(r_active) × 252信息比率 IR ← 年化超额 / TE注意 peak 是逐日更新的累积最大值——回撤永远是相对「历史最高点」算的,不是相对期初,也不是相对昨天。
图:净值与回撤水下曲线
Section titled “图:净值与回撤水下曲线”把净值序列的每一天都换算成「距历史高点的跌幅」,就得到下面的回撤图(行业惯称水下曲线,underwater curve):
看回撤图比看净值图更能感受风险。净值图上,5 月到 9 月那段只是「一条有点波折的线」;回撤图上,它是一片深 16%、持续 4 个月的绿色水域——每一天你都在水下,等待净值游回前高。这条曲线还回答了净值图看不出的问题:创新高的频率(曲线触到 0 轴的次数)、单次受伤的深度、以及修复的速度。评价一条净值曲线,先看它的水下部分。
- 只报年化,不报回撤。「年化 30%」和「年化 30%、最大回撤 40%」是两个策略。前者听着诱人,后者意味着你中途要扛过账户缩水四成的日子——绝大多数人扛不过去,会在谷底附近割肉,把浮动亏损变成永久亏损。任何业绩报告,年化和最大回撤必须同时出现;本章的卡玛比率就是把两者绑成一个数的强制手段。
- 只看绝对收益,误把市场 Beta 当 Alpha。在指数大涨 50% 的年份赚 30% 不是本事,其实跑输了 20 个百分点;熊市只跌 5% 也不是失败。评价策略必须对照基准看超额收益与信息比率。
- 样本太短,指标全是噪声。本章的回测恰好约一年,已经是最低限度的样本;三个月的实盘业绩算出的夏普,置信区间宽到没有意义——日收益的均值本身估计误差就很大,再除以另一个带误差的波动率、乘上 ,误差被逐级放大。短样本年化尤其危险:3 个月赚 10% 年化出 46%,但这 46% 里大半是运气。经验法则:少于 1 年的数据,指标只当参考,不当结论;少于 3 个月的,连参考都算不上。
五个指标把净值曲线翻译完了:年化 20.7%、最大回撤 15.7%、夏普 0.92、卡玛 1.31,再加上胜率与盈亏比的微观结构。这套翻译有个前提——这些数字都是同一段历史、同一组参数下算出来的,是「过去表现」而非「未来预期」。参数是怎么来的、换段历史还灵不灵,是下一章过拟合与样本外检验要回答的问题。