已弃用 (2026-05-25) —— 该算子是 Layer-1 变换、非 Layer-0 原子输入,已并入
drawdown_series_v1。保留作历史。
做什么(One-liner)
从日 returns 算回撤序列 + 最大回撤。库级 primitive,portfolio 风险度量核心依赖。
怎么用
python
from services.algo.time_series import drawdown_series
dd_series, max_dd = drawdown_series(returns)
# max_dd = -0.23 means 23% max drawdown核心公式
cum_t = Π(1 + r_i) for i in 1..t (起始 1.0)
running_max_t = max(cum_1, ..., cum_t)
dd_t = (cum_t - running_max_t) / running_max_t ∈ (-1, 0]
max_dd = min(dd_series)假设与适用场景
假设:simple returns(非 log) + compounding + 起始 1.0。
适用:backtest 绩效、CPPI、基金 fact-sheet。
不适用:价格序列输入、log returns、n<2。
已知局限
- 无 recovery 时间输出
- 起始点 1.0(非实际资本)
- log returns 会有 second-order 误差
参考文献
Magdon-Ismail & Atiya (2004) + Chekhlov et al. (2005) 优化嵌入。
Golden Test
tests/golden/fixtures/tier1/drawdown_series/,1e-12 tolerance,2026-04-20 passing。
Changelog
- 1.0.0 (2026-04-20) — 首次 Active

