🔒 样本内外、Walk-Forward 与 Bootstrap 检验

样本外的「封存纪律」、Walk-Forward 的滚动验证、蒙特卡洛与 Bootstrap 的稳健性检验——对抗过拟合的三道闸门。

样本外验证是量化研究的「临床实验」:样本内绩效只是假设,样本外才是证据。本篇讲三道闸门的正确姿势——多数「样本外失效」的悲剧不是因为方法,而是因为纪律被变通(偷偷看了测试集、反复开箱)。

闸门一:样本划分与封存

三分法:训练区(~60%,探索与拟合)→ 验证区(~20%,参数选择与模型比较)→ 测试区(~20%,全程封存,只开一次箱)。

三条容易被变通的纪律,逐条较真:

  1. 测试区只能开一次箱:开箱 → 不满意 → 回去改 → 再开箱——第二次开箱时它已是训练集的一部分(你基于它的表现做了决策)。正确流程:每次「开箱失败」都必须追加新数据(等市场走完新的一年)形成新的测试区,而不是重用旧的;
  2. 任何决策不得引用测试区:包括「要不要继续这个研究方向」的判断——看过测试区绩效后再决定改什么,信息就已泄漏;
  3. 划分按时间不按随机:金融数据时序相关,随机划分等于让模型「看到未来」(ML 场景的 purged CV,见机器学习策略 )。

封存的仪式感是必要的:测试区数据加密、承诺书、或至少一个「只跑一次」的脚本——防的不是别人,是三个月后想偷看回测的自己。

闸门二:Walk-Forward 滚动验证

Walk-Forward(WF)模拟真实的研究节奏:用历史训练 → 立即样本外检验 → 时间前滚重复。

两种形态:

  • 锚定式(anchored):训练区从起点扩张(1–5 年训练 → 检验第 6 年 → 1–6 年训练 → 检验第 7 年…)。样本利用充分,适合数据量小、结构稳定的策略;
  • 滚动式(rolling):固定长度窗口整体前移(始终用最近 5 年训练检验下一年)。强制适应结构漂移,适合 regime 变化快的策略。

绩效只统计全部样本外段的拼接曲线——这就是「如果当时真的按这个流程操作会得到的净值」。三个判读要点:

  1. **WF 的样本外衰减比(WF 绩效/全样本绩效)**是过拟合的直接体温计:> 0.7 健康,< 0.5 说明样本内数字主要是过拟合的产物;
  2. 参数稳定性:每段 WF 选出的最优参数应大体连续(如动量窗口 18→20→17→22 天);参数逐段漂移巨大 = 策略在「追逐噪声」;
  3. WF 也有代价:它默认「历史最优参数在下一段仍最优」,压缩了参数搜索空间的表达力——WF 绩效是策略绩效的保守估计,实盘常在 WF 与全样本绩效之间。

与 WF 互补的还有样本外多起点检验:把「起点」放在不同年份重复整个研究流程(2010 起步、2014 起步、2018 起步各做一遍)——若只有特定起点能得出好策略,结论就是起点选择偏差。

闸门三:蒙特卡洛与 Bootstrap

前两道闸门回答「参数与流程诚实吗」,第三道回答「这条净值曲线本身可靠吗」——它是蒙特卡洛 方法在回测层的应用:

  1. 净值 Bootstrap:对日收益序列重抽样生成 10000 条合成净值 → 绩效指标的分布(年化收益的 5% 分位、MDD 的 95% 分位)。判读:不只看点估计,看分布的左尾你是否承受得起(分块 bootstrap 保留自相关与波动聚集,见蒙特卡洛 );
  2. 置换检验:把信号随机打乱重跑回测 N 次 → 「随机策略」的绩效分布 → 你的真实策略绩效须落在分布的高分位之外(95%+)——它直接检验「这个策略比瞎蒙好吗」,绕开收益分布的一切假设(与实验设计 的置换检验同源);
  3. White’s Reality Check / SPA 检验:对「尝试过 N 个变体后挑出的最优」做数据挖掘偏差校正——学术界的标准答案,工程上简化为:把 N 次尝试的样本外绩效全列出来,看最优者是否仍显著优于「N 次中随机挑一个」的分布。

三道闸门的合成读法:WF 显示样本外衰减比 0.8(流程诚实)+ Bootstrap 左尾可承受(曲线可靠)+ 置换检验 99 分位(优于瞎蒙)——三个独立维度的证据同时成立,才值得把真钱放进去。任何一道不成立,回到研究流程 。

常见的「伪样本外」

伪样本外形态为什么是伪的正确做法
「样本外」跑完不满意,改了参数重跑第二次跑已在决策中使用它每次重跑都推进测试区起点
用全样本选出「好年份」展示样本外区间选择本身用了全样本信息区间先于任何回测固定
模拟盘跑 2 周「样本外通过」样本量远不足以区分运气(t ≈ 0.3)预注册最小样本期(如 20 个交易日,见实验设计 )
把测试区绩效写进论文再「验证」一次验证集已被污染测试集一次性使用,新验证需新数据

关联阅读:统计根基多重检验与 FDR ;bootstrap 的采样细节蒙特卡洛 ;上线后的样本外延续仿真盘与灰度 。