回测过拟合概率(PBO)与 CSCV 详解
了解组合对称交叉验证如何估计 PBO、如何将样本外排名转换为 logit,以及为何它不是未来亏损的预测
本指南内容PBO 衡量选择过程,而非单个策略
简短摘要
回测过拟合概率(PBO)衡量在样本内(IS)被选为最佳的策略,在样本外(OOS)排名低于候选组中位数的频率。组合对称交叉验证(CSCV)反复将等长时间块的一半用于选择、另一半用于评估,以估计这一频率。PBO 是基于特定搜索过程、评分指标和历史业绩矩阵的条件诊断;它不是实盘策略亏损的概率。
PBO 衡量选择过程,而非单个策略
研究团队可能尝试不同的回看窗口、入场阈值、持有期、标的范围、成本假设和组合约束,再保留回测得分最高的变体。被选结果因此有很多机会贴合样本的特殊性。PBO 总结这一搜索过程的一个后果:在设定的 IS/OOS 划分中,IS 胜者有多常在 OOS 低于同一候选组的中位数?
Bailey、Borwein、López de Prado 和 Zhu 提出 PBO 框架来研究策略选择风险,并提出 CSCV 作为一种估计方法。其定义关注如何从已测试配置中选择策略,而不只是某个预测方程是否含有过多参数。每个划分中的 IS 是用于候选选择的子集,不一定等同于所有底层模型的估计期。形式化设定见PBO 原论文。
单个策略在全样本上可能有较高的夏普比率,但仍可能只是弱研究候选组里运气最好的一个。反过来,即便所有候选的收益都为负,选择过程也可能经常挑出 OOS 排名高于中位数的候选。PBO 比较提交候选组内的相对排名;它本身不检验预期收益是否为正。
PBO 回答的问题不同于其他验证工具
按时间顺序留出一段数据或进行 walk-forward 测试,是为了观察既定研究流程在之后的数据上表现如何,这些数据没有用于先前决策。Purged cross-validation 处理训练标签区间与测试结果重叠的问题;embargo 可额外加入有独立理由的缓冲区。但这些措施本身都不衡量宽泛策略搜索的赢家有多常跌至 OOS 候选中位数以下。参见[purged cross-validation 与 embargo 指南](/zh-CN/learn/purged-cross-validation-embargo-time-series-finance-explained)。
PBO 也不同于多重检验校正。White’s Reality Check 使用 bootstrap,在考虑数据窥探后检验候选族中的最佳规则是否优于基准。Deflated Sharpe Ratio 会针对选择效应和非正态收益调整基于夏普的显著性计算。PBO 则汇总各划分中 IS 所选候选的 OOS 排名。这些方法采用不同统计量和假设,不能自动互相替代。参见White 关于 Reality Check 的原论文以及 Bailey 和 López de Prado 关于Deflated Sharpe Ratio 的研究。
从完整且同步的业绩矩阵开始
设 M 是 T 行、N 列的矩阵。N 列分别代表一个候选策略或配置,T 行则代表所有候选共有的同一观测区间。一行可以是扣除相关交易成本后的日收益。如果候选的交易频率不同,应先定义共同时间索引,再一致地汇总业绩。把一种策略的日收益与另一种策略的月度总收益逐行比较,不能形成有意义的矩阵。
候选组应反映真实的选择机会:网格搜索中淘汰的变体、看过结果后手动修改的版本、其他标的范围,以及影响最终选择的规则。PBO 只能评估提交的候选及其业绩历史。如果实际搜索范围大得多,却只记录最终入围者,估计就会低估真实搜索过程。
所有候选使用相同的收益口径、货币、杠杆处理方式和业绩指标。如果以净夏普比率选策略,应先把相关费用、价差、融资、资金费、借券和执行假设计入每一列,再计算夏普。后续每个子样本也必须能计算该指标。原论文要求各候选的行保持同步,并且指标能在每个子样本中估计;交易频率不同时,建议对齐到共同索引。
CSCV 将每半样本与其补集配对
选择偶数个 S 个互不重叠、大小相同的时间块,并保留每个块内部的时间顺序。对每一种 S/2 块的选择,将这些块合成样本内(IS)集合,剩余 S/2 块作为样本外(OOS)。对于路径依赖指标,按原始顺序排列所选块,并记录拼接方式对指标意味着什么。
IS 分配数为 C(S,S/2)。若有 A、B、C、D 四块,则六种分配为 AB、AC、AD、BC、BD、CD;每种分配的补集也单独计数。S = 16 时,C(16,8) = 12,870。这些是同一段历史的确定性组合,不是 12,870 次独立市场实验。
“对称”指某一组合的补集会在另一组合中作为选择集重用:一次划分中 AB 是 IS、CD 是 OOS,另一次则相反。“组合”指枚举所有半数块的选择,而非随机抽取一个划分。CSCV 不是按时间顺序回放。所选集合可能包含早期和后期块,而补集包含中间块,因此这里的 OOS 不等于“训练期之后的未来”。

将所选候选的 OOS 排名转换为 logit
对划分 c,在 IS 子集上应用研究中的选择规则,选出最佳候选 n*(c)。然后用相同业绩指标在补集 OOS 上为全部 N 个候选评分。定义所选候选的 OOS 排名为 r(c):1 最差,N 最佳。提前规定并始终如一地处理并列。
将排名转换为相对排名 ω(c) = r(c)/(N+1)。分母 N+1 确保最低和最高排名的数值也严格介于 0 与 1 之间。logit 为 λ(c) = ln(ω(c)/(1−ω(c)))。所选候选低于 OOS 中位数时为负,在中位数处为零,高于中位数时为正。估计 PBO 是所有 CSCV 分配中 λ(c) ≤ 0 的占比。
单一 PBO 值表示 IS 胜者在 OOS 达到中位数或更低的频率。完整的 logit 分布还能显示所选候选通常是否接近中间、是否频繁大幅下滑,或是否倾向于排在中位数之上。logit 是相对排名的变换值,不是单笔实盘交易的概率,也不是经校准的未来收益预测。
四块的假设示例得出 66.7% 的 PBO
假设有四个等长历史块和四条候选规则 R1 至 R4。下表展示六种 IS 分配。“OOS 排名”是 IS 选中的规则在补集块上、四条规则中的排名。所有数值均为假设值,仅用于说明计算。
| IS 块 | IS 胜者 | OOS 排名 r | 相对排名 ω = r/5 | Logit ln(ω/(1−ω)) | 位于中位数或以下? |
|---|---|---|---|---|---|
| AB | R1 | 1 | 0.20 | −1.386 | 是 |
| AC | R3 | 4 | 0.80 | +1.386 | 否 |
| AD | R2 | 2 | 0.40 | −0.405 | 是 |
| BC | R1 | 1 | 0.20 | −1.386 | 是 |
| BD | R4 | 3 | 0.60 | +0.405 | 否 |
| CD | R3 | 2 | 0.40 | −0.405 | 是 |
六个被选规则中有四个的 OOS 相对排名不高于二分之一。因此经验 PBO 为 4/6 ≈ 0.667,即约 66.7%。例如,排名 2 得到 ω = 2/(4+1) = 0.4,λ = ln(0.4/0.6) ≈ −0.405。排名 3 得到 ω = 0.6,对应符号相反、约为 +0.405 的 logit。
这不代表下个月亏钱的概率是 66.7%。它表示在这个假设矩阵和排名规则下,IS 胜者在六种枚举划分中有四次处于 OOS 候选中位数或以下。其余两次胜者也可能有负的绝对 OOS 收益,只是相对同组候选表现更好。
将 PBO 视为有条件且有局限的诊断
PBO 取决于候选族、观测到的业绩矩阵、选择指标、时间块和并列规则。未记录的实验不在评估范围内。“模型无关”是指无需了解预测方程、仅凭候选的业绩历史即可计算;并不表示它不受设计选择、数据质量或假设影响。
CSCV 将块组合为对称且等大的子集,但 OOS 通常不是一个连续的后续时间段。重新组合块可能破坏长期依赖、季节性或经济状态的先后顺序。S 同时决定组合数和每个块代表的时长,因此应结合策略相关期限与结构来选择并记录。组合数量很大,也不会产生同样数量的独立观测,因为相同的块会被重复使用。
该统计量也继承源收益中的偏差。幸存者偏差、修订后的数据、当时不可用的特征、不现实的成交、遗漏成本,或事后选定的标的范围,都可能误导所有候选的历史表现。CSCV 不会自动清除重叠标签区间,不一定会在每个划分内重新估计完整模型流程,也不会防止预处理泄漏。应根据研究问题明确实施这些步骤。时序防漏可参阅TimeSeriesSplit 官方文档和 purged 验证指南。
最大回撤等路径依赖指标需要格外谨慎:拼接不相邻的块会改变路径,也可能改变指标。PBO 论文指出,有些指标与夏普不同,会受到观测顺序影响。解读排名前,应说明如何处理顺序、间隔、缺失观测和复利。
将 PBO 与时序证据及完整搜索记录一并报告
计算前应保存候选登记表、看过结果后做过的所有调整、业绩矩阵、选择指标和并列规则。报告 T、N、S、块的构造方式、C(S,S/2)、OOS 排名口径、估计 PBO 和 logit 分布。还要报告绝对 OOS 业绩、成本、换手率、回撤及亏损候选数量;排名本身无法说明所有候选是否都很弱。
用 walk-forward 或真正按时间顺序隔离的 holdout,评估冻结后的研究流程在后续数据上的表现。选择模型和阈值时,不要查看最终时段;反复查看会使它变成另一个选择集。像 TimeSeriesSplit 这样的时间序列工具会按文档中的假设创建时间顺序折,而 PBO 衡量的是已搜索候选族的另一种排名特征。
因此,PBO 可以补充标签重叠控制、多重检验分析、现实的执行建模、前瞻性评估和实盘监控,但不能取代它们。另请阅读[金融中的多重检验与错误发现率](/zh-CN/learn/multiple-testing-false-discovery-rate-finance-explained)以及[序列相关下的夏普比率调整](/zh-CN/learn/sharpe-ratio-serial-correlation-annualization-explained)。单一统计量无法把历史排名变成持续交易优势的证明。
常见问题
Q1PBO 是否表示策略有这么大的亏损概率?
不是。它估计在指定划分中,IS 所选候选在 OOS 排名不高于候选中位数的频率。它不是未来亏损概率,也不是经过校准的实盘收益预测。
Q2CSCV 和 walk-forward 测试一样吗?
不一样。CSCV 将每半块选择与其补集配对,因此 OOS 可能同时包含较早和较晚的块。Walk-forward 将训练集置于每个后续测试期之前,以检验更接近实际部署的时间顺序过程。
Q3PBO 较低能证明所选策略有优势吗?
不能。赢家可能优于一个较弱的候选组,但绝对收益仍为负。应分别评估净收益、不确定性、成本、信息泄漏,以及真正后续数据上的表现。
资料来源与延伸阅读
报告问题
我们会准备一封包含本文链接的邮件。发送后,Mark 才会收到你的反馈
快速检查
读完指南后,用 3 道题检查一下
问题 01
哪种事件会计入 PBO 估计?
选择答案即可查看解释