p 值
p 值(p-value)是在原假设成立的前提下,观测到「至少和实测结果一样极端」的结果的概率。在策略检验里,原假设通常是「这条规则没有优势」,而 p 值来自在已记录交易上执行的置换或自助法流程。
Senzoukria · 术语表 · 更新于 2026 年 9 月
这个数字的含义
先定下一个原假设,比如「这套策略的交易,和同分布的随机抽样区分不开」。在真实交易上算一个统计量:净结果、每笔夏普、每笔期望。然后确定:如果原假设为真,这个统计量有多大比例的情况下会达到至少这么大。这个频率就是 p 值。
在置换检验里,这个频率是直接数出来的:把数据重排很多次,每次重算统计量,再数出有多少次重排达到或超过了真实结果。整个过程不需要任何关于分布的公式——对于极少服从正态的交易结果来说,这一点很重要。
它不是什么
- 它不是「原假设为真」的概率。那需要给原假设一个先验,而这项检验并不使用先验。
- 它不是「这套策略会继续奏效」的概率。它描述的是样本,不是未来。
- 它不是效应大小的度量。一个极小的优势配上一个巨大的样本,也能产出很小的 p 值;而十笔交易上的一个巨大优势却做不到。
- 它没有针对挑选做修正。从一大堆配置里挑出最好的那个,它的 p 值就是偏乐观的;紧缩夏普比率和 PBO 才处理这件事。
在 Senzoukria 里
桌面端回测面板会在它的「通过 / 不通过」闯关清单里显示一个 p 值,由置换检验阶段计算得出。对应的那条标准写作「置换检验:优势与偶然区分得开」。p 值和 PSR、DSR、PBO 以及试过的配置数量并排放置,读的人一眼就能看出这个样本是否同时扛住了选择性修正。
「回放」绩效面板并不报告 p 值;当样本太小时,它会加一句注记:这些比率被显示出来,是因为它们算得准确,而不是因为它们有统计意义。显著性检验是回测面板的职能。
常见错误
- 停在某个固定阈值上。约定俗成的临界值只是一个约定,而一次假阳性的代价是在实盘账户上付的,不是在论文里付的。
- 在同一批数据上反复检验,只留下最小的那个 p 值。每一次检验都是一次试验。
- 报告 p 值时,不给出产生它的统计量和样本量。
- 把一个很大的 p 值读成「不存在优势」的证明。它只说明这批样本没能显示出优势。
相关内容
其他语言版本
常见问题
- p 值很小,就足以把一套策略拿去实盘吗?
- 不够。它说明的是:在那批样本、那套假设之下,按「无优势」这个假设来看,观测到的结果很罕见。它没有考虑未被建模的成本、试过多少组配置、相对账户规则的回撤,也没有考虑市场状态切换。桌面端的闯关清单正因如此,只把它列为若干条标准之一。
- 为什么我重跑一次闯关,p 值就变了?
- 置换阶段抽取的是随机重排,所以同一批数据跑两次,计数会略有不同。置换次数越多,这种波动越小。如果两次运行之间 p 值跨过了某条决策边界,那是样本在告诉你:这个结果处在临界地带。