2. 回撤基础
在讨论任何“回撤控制”与“De-Risking”策略之前,必须先建立一套统一、可度量的回撤语言。否则团队内部会出现“我觉得回撤很大”与“系统显示回撤只有 8%”这类无法对齐的争论。本节把回撤拆成四个可计算、可比较、可归因的指标:回撤、最大回撤、回撤持续时间、回撤修复期,并进一步区分常见回撤类型与对应的市场环境。
一、核心原理:回撤是“相对高点的损失”,不是“相对成本的亏损”
回撤(Drawdown)衡量的是资产净值从历史最高点(High Water Mark, HWM)回落到当前值的过程。它回答的问题是:“如果我在最高点买入,现在亏了多少?” 这与“相对初始本金的盈亏”是两个不同概念。一个策略可能累计盈利 50%,但若从最高点回落 20%,其回撤仍是 20%。
设净值序列为 \(NV_t\),历史最高净值为 \(HWM_t = \max_{s \le t} NV_s\),则:
Drawdown_t = (NV_t - HWM_t) / HWM_t
MaxDrawdown = min(Drawdown_t) # 通常取负值或绝对值表示
最大回撤(Max Drawdown, MDD)是整段样本内最深的回撤幅度,它刻画了“最坏情况下的资金曲线伤口”。但仅看 MDD 不够,因为同样 20% 的回撤,持续 3 天和持续 9 个月,对资金占用、心理压力和 De-Risking 触发频率的影响完全不同。
关键结论:回撤控制的目标不是消灭回撤,而是把回撤的幅度、持续时间、修复速度三者纳入同一套风险预算。只盯 MDD 会忽略“长期阴跌”这种更致命的形态。
二、四个核心指标的定义与计算口径
| 指标 | 定义 | 计算要点 | 实战含义 |
|---|---|---|---|
| 回撤 | 当前净值相对历史最高点的跌幅 | 逐日滚动更新 HWM | 实时风险暴露的“体温” |
| 最大回撤 | 样本期内最深的一次回撤 | 取 Drawdown 序列最小值 | 最坏情况下的资金损失上限 |
| 回撤持续时间 | 从高点回落到最低点所经历的时间 | 记录峰值日与谷值日之差 | 反映下跌的“节奏”与“钝刀”风险 |
| 回撤修复期 | 从谷值恢复到前高所需时间 | 谷值日到净值重新≥HWM 的日数 | 资金被占用的真实成本 |
下面是一段可直接复用的 Python 计算示例,用于从净值序列中提取上述四个指标:
import numpy as np
import pandas as pd
def drawdown_metrics(nav: pd.Series):
nav = nav.dropna()
hwm = nav.cummax()
dd = nav / hwm - 1.0
mdd = dd.min()
trough_date = dd.idxmin()
peak_date = nav.loc[:trough_date].idxmax()
# 修复期:谷值之后首次回到前高
after = nav.loc[trough_date:]
recover = after[after >= hwm.loc[trough_date]]
recovery_date = recover.index[0] if len(recover) else None
duration = (trough_date - peak_date).days
recovery_days = (recovery_date - trough_date).days if recovery_date else np.nan
return {
"max_drawdown": round(mdd, 4),
"peak_date": peak_date,
"trough_date": trough_date,
"duration_days": duration,
"recovery_days": recovery_days,
}
三、常见回撤类型与市场环境映射
回撤不是同质的。不同类型的回撤,其触发机制、持续时间和修复路径差异极大。若用同一套 De-Risking 规则应对所有回撤,往往会在“快速急跌”中过度减仓,又在“长期阴跌”中减仓不足。
- 急速回撤:通常由流动性冲击、黑天鹅事件或拥挤交易踩踏引发。幅度大、持续时间短、修复快。此时 De-Risking 应偏向“快速降杠杆 + 保留核心仓位”,避免在最低点清仓。
- 趋势性回撤:由宏观周期或市场风格切换驱动,持续时间长、修复慢。应触发分层减仓,并延长观察窗口,防止过早重新加仓。
- 震荡型回撤:净值在区间内反复摩擦,回撤幅度不大但频率高。重点是控制交易成本与换手,而非大幅调仓。
- 结构性回撤:策略逻辑失效或因子拥挤导致,回撤可能不可逆。此时应启动策略层面的 De-Risking,而非仅调整仓位。
判断技巧:把回撤持续时间与修复期放在同一张散点图上。右上角(持续时间长、修复慢)的回撤最危险;左下角(短、快)通常可容忍。这个二维视角比单看 MDD 更接近实战。
四、案例与复盘:同样 15% 回撤,结局为何不同
假设两个策略 A 与 B,最大回撤均为 15%。A 在 12 个交易日内完成下跌并在 20 日内修复;B 则用了 90 个交易日缓慢下跌,修复期长达 260 日。若仅看 MDD,两者风险相同;但从资金占用、心理压力和 De-Risking 触发次数看,B 的实际风险远高于 A。
复盘时应至少回答三个问题:
- 这次回撤属于哪一类型?触发因素是市场环境还是策略自身?
- 回撤持续时间与修复期是否超出历史分布?是否触发了预设的 De-Risking 阈值?
- 若当时执行了减仓,减仓时点是在回撤初期、中期还是末期?对修复期的贡献是正还是负?
常见误区:把“最大回撤小”等同于“风险低”。一个策略可能通过频繁止损把 MDD 压得很低,但回撤频率极高、修复期反复拉长,长期复利反而更差。回撤控制必须同时看幅度、频率、持续时间和修复效率。
把上述四个指标与回撤类型结合,就构成了后续所有 De-Risking 规则的输入层。只有当团队对“当前回撤处于什么阶段、属于什么类型、修复预期如何”有共同判断时,减仓、对冲、再平衡等动作才可能被一致执行,而不是各自为战。