Concept

Multiple-testing Correction

Multiple-testing Correction, also known as White's reality check, SPA, is a Performance, Backtesting & Validation concept. The Library holds 1 implementation, a working definition you can pull into Quant.

Top Multiple-testing Correction indicator

The top custom implementation, built on the original standard Multiple-testing Correction formula.

1 total

The Multiple-testing Correction implementation below can become a backtested trading strategy — describe your rules and Quant writes the code.

What is a multiple-testing correction?

A multiple-testing correction is any statistical adjustment that accounts for how many strategies, parameters, or signals were tried before the reported result was selected. Test one rule at the conventional 5% significance level and a false positive is unlikely; test two hundred rules and roughly ten will pass by chance alone, so the best of them can look spectacular while meaning nothing. Corrections restore honesty by raising the evidence bar in proportion to the size of the search.

The problem, known in finance as data snooping or data-mining bias, is arguably the central statistical hazard of backtesting, because modern tooling makes it trivial to test thousands of variants against one shared history. Classical corrections such as Bonferroni and Sidak shrink the per-test significance level as the number of tests grows. Finance-specific machinery goes further: White's reality check, a bootstrap test introduced by Halbert White in 2000, evaluates whether the best rule in a family genuinely beats a benchmark once the full search is accounted for, and Hansen's SPA (superior predictive ability) test refines it to be less distorted by the inclusion of very poor rules in the family.

Traders care because uncorrected backtest selection is one of the main ways illusory edges are manufactured. The practical difficulty is bookkeeping: corrections require knowing how many tests were run, including informal ones, and trials on the same data are correlated, so the effective number of independent tests is smaller than the raw count and must be estimated rather than assumed.

How it's calculated

The classical corrections adjust the per-test significance level alpha for N tests. Bootstrap methods such as the reality check and SPA test have no closed form; they resample the data to build the distribution of the best rule's performance under the null.

alpha_bonferroni = alpha / N
alpha_sidak = 1 - (1 - alpha)^(1 / N)
alpha: desired family-wise significance level (e.g. 0.05)
N: number of tests performed; for correlated trials, an effective number of independent tests
alpha_bonferroni: per-test threshold under the Bonferroni correction
alpha_sidak: per-test threshold under the Sidak correction, exact for independent tests

Bonferroni is conservative when tests are correlated, as backtest variants on shared data always are; bootstrap approaches like White's reality check handle the correlation structure implicitly by resampling the actual return series.

Some practitioners instead control the false discovery rate (e.g. Benjamini-Hochberg), tolerating a known fraction of false positives rather than guarding against any.

How traders use it

  • As a research-program discipline: log every configuration tested, estimate the effective trial count, and require the surviving strategy to clear the corrected threshold rather than the naive one.
  • Via bootstrap tests when evaluating a family of rules against a benchmark: White's reality check or the SPA test answers whether the best rule's outperformance exceeds what the luckiest member of that family would show under the null.
  • Through the deflated Sharpe ratio, which packages a multiple-testing correction specifically for Sharpe ratios and is often the most convenient form for strategy selection.
  • As a skeptical lens on published and vendor results: asking how large the unreported search was, and what threshold the result would need to clear after correction, deflates many impressive-looking findings.
  • With awareness of the trade-off: overly harsh corrections reject genuine but modest edges, which is one reason practitioners pair them with independent evidence such as forward confirmation rather than relying on any single gate.

Multiple-testing correction vs related concepts

Deflated Sharpe Ratio: A specialization: the DSR applies the multiple-testing idea to Sharpe ratios by setting the hurdle at the expected best Sharpe ratio across N unskilled trials, with an additional adjustment for skewed, fat-tailed returns.

Probability of Backtest Overfitting: Attacks the same selection problem non-parametrically, by measuring how often the in-sample best trial ranks below median out-of-sample across combinatorial splits, rather than by adjusting a significance threshold.

Randomization Tests: Randomization builds a null distribution for a single strategy by shuffling data or signals. Multiple-testing corrections address a different question: how the null distribution of the best result shifts when many strategies were tried.

Concept family

Performance, Backtesting & Validation

30 concepts mapped · 30 in the Library

Multiple-testing Correction FAQ

Turn Multiple-testing Correction into a trading strategy.

Take the implementation from this page into Quant, then build on it, backtest it on real data, and keep refining it in conversation.