1. Calculators
  2. Quant & Algorithmic Trading

Probability of Backtest Overfitting (PBO) Calculator

Find out whether picking the best of your backtests actually picks a better strategy. Paste the returns of every variant you tried, and the calculator runs combinatorially symmetric cross-validation to estimate the probability of backtest overfitting and how much performance the winner loses out of sample.

Updated Oct 16, 2026Free · no sign-upFormulas tested

Your inputs

Paste the returns of every strategy variant you tested, one column per variant and one row per period. The calculator splits the history into blocks, picks the best variant on each half and checks how it ranks on the other half.

Simulated example: 10 variants × 120 months, mostly noise with small true differences. First line may hold the variant names. Columns can be separated by commas, tabs or spaces.

Results

Probability of backtest overfitting35.7%In 25 of 70 splits, the in-sample best ranked at or below the out-of-sample median
In-sample Sharpe ratio of the selected variant
0.53
Average over the splits, annualized
Out-of-sample Sharpe ratio of the selected variant
0.06
11% of the in-sample figure
Probability of loss out of sample
42.9%
Share of splits in which the selected variant lost money on the other half
Degradation slope
-0.88
Change in out-of-sample performance per unit of in-sample performance
Splits tested
70
10 variants, 120 months, 8 blocks of about 15 months

Overfitting is a real risk here: in 36% of the splits the variant that looked best in sample did no better than the median variant out of sample. On average its Sharpe ratio fell from 0.53 to 0.06.

Where the in-sample winner ranks out of sample (logit of relative rank)

At or below the median (overfit)Above the median
0%5%10%15%20%25%-2.3-1.0-0.20.61.5

Each bar is the share of splits in which the in-sample winner landed at that out-of-sample rank. Left of zero it did worse than the median variant; the far right means it was also the best out of sample. PBO is the red share.

Variants: full-sample results and how often each won in sample

VariantAverage return per monthSharpe ratio (annualized)Chosen in sampleShare of splits
V1-0.28%-0.2900%
V2-0.21%-0.1900%
V3-0.02%-0.0234%
V4-0.31%-0.2600%
V50.25%0.2146%
V60.01%0.0134%
V7-0.04%-0.0300%
V80.38%0.332130%
V90.44%0.363043%
V100.18%0.16913%

Results are estimates from the numbers you enter. They are not financial, tax or legal advice.

How to use the backtest overfitting calculator

  1. Export the returns of every variant you tested. Each column is one configuration (a parameter set, a filter, a universe); each row is one period, in time order. All columns must cover the same periods.
  2. Paste the table. The first line can hold the variant names. Columns can be separated by commas, tabs or spaces, so a block copied from a spreadsheet works. The default is a simulated example: 10 variants over 120 months.
  3. Choose the number of blocks (S). The history is cut into S contiguous blocks of equal length, and every way of choosing half of them for the in-sample set is tested. Eight blocks give 70 splits.
  4. Choose the ranking metric and the frequency. The Sharpe ratio is the usual choice; average return ignores risk. The frequency only affects how results are annualized.

How CSCV works

Combinatorially symmetric cross-validation, from Bailey, Borwein, López de Prado and Zhu (2014, published in the Journal of Computational Finance in 2017), turns the question “did I overfit?” into a repeated experiment:

  1. Split the T × N matrix of returns into S blocks of consecutive rows.
  2. For every combination of S/2 blocks, use those rows as the in-sample set and the remaining rows as the out-of-sample set. There are C(S, S/2) such splits.
  3. In each split, find the variant with the best in-sample performance, then see where that same variant ranks out of sample.
  4. Count how often it ranks at or below the out-of-sample median.
ω = rankOOS ÷ (N + 1) · λ = ln( ω ÷ (1 − ω) )rankOOS is the out-of-sample rank of the in-sample winner among the N variants (1 = worst, N = best) and ω its relative rank. The logit λ is negative when the winner falls below the median.
PBO = (number of splits with λ ≤ 0) ÷ C(S, S/2)C(S, S/2) is the number of ways to choose S/2 of the S blocks: 70 for S = 8.

The design is symmetric: every block appears in the in-sample set in exactly half of the splits, and in-sample and out-of-sample sets always have the same length. Keeping blocks contiguous preserves the serial structure of returns within each block.

A worked example

The default data simulate 10 variants of a fictional strategy over 120 months. Every month has a common market shock plus noise specific to each variant, and the true average returns differ only slightly, from 0.20% a month for V1 to 0.65% for V10. In other words, the variants are mostly noise with a little real skill. The numbers are generated by a seeded random number generator, so they are the same every time.

With 8 blocks the calculator tests 70 splits. In each, the in-sample winner had an average annualized Sharpe ratio of 0.53 on the data it was picked from. On the other half, the same variants averaged only 0.06, keeping 11% of their in-sample performance.

The probability of backtest overfitting is 35.7%: in that share of splits, the winner did no better than the median variant out of sample. In 42.9% of splits it lost money out of sample, and it was never the best variant out of sample (0% of splits).

The table shows that V9 won 43% of the in-sample contests. It also has the best full-sample Sharpe ratio (0.36), but by construction it is not the variant with the highest true return: noise decided the ranking.

Reading the results

PBO. The headline number estimates how likely the best backtest is to be a below-median strategy in practice. Around 50%, ranking by backtest is no better than drawing a variant at random. A low PBO says the ranking carries real information, not that the winning strategy is profitable.

The logit histogram. The chart shows the distribution of λ across all splits. Mass on the right means the in-sample winner tends to stay near the top; mass on the left means it tends to sink. The red bars add up to the PBO.

Performance degradation. The gap between the in-sample and out-of-sample Sharpe ratios of the selected variant measures how much of its backtest performance was luck. The degradation slope, from a regression of out-of-sample on in-sample performance across splits, is -0.88 in the example: a higher in-sample figure went with a lower out-of-sample one. Part of this negative relation is built into the method, because a variant’s in-sample and out-of-sample halves together make up its full history, so an unusually good first half leaves less for the second. A clearly negative slope is still the signature of selection on noise.

Probability of loss. The share of splits in which the selected variant lost money out of sample. It speaks directly to the risk of deploying the backtest winner.

What drives overfitting

  • Number of variants. The more configurations you try, the more likely the best one is best by luck. Ten variants is a small search; parameter sweeps often test thousands.
  • Signal-to-noise ratio. When true differences between variants are small relative to the noise in returns, as in the example, the ranking is mostly random. Larger, persistent differences in skill lower the PBO.
  • Sample length. Longer histories shrink the noise in each block’s performance estimate.
  • Similar variants. Many near-identical parameter sets behave like a few independent trials. The method handles correlation automatically, because it works with the actual return paths.
  • Metric. Ranking by average return instead of Sharpe ratio gives a PBO of 32.9% here. Use the metric you would actually choose by, because the PBO describes that choice.

How PBO fits with other checks

PBO evaluates the research process that produced a strategy, not the strategy itself. The deflated Sharpe ratio asks whether the winner’s Sharpe ratio beats what the best of N lucky trials would show, using only summary statistics. Walk-forward efficiency compares in-sample and out-of-sample returns in time order, the way a strategy would actually be re-optimized and traded. A strategy that passes all three is far more credible than one that passes any single test.

What this calculator does not include

  • Missing trials. The result is only as honest as the matrix. Variants you tried but did not export, and earlier ideas that shaped the search, are invisible to it.
  • Time order across blocks. CSCV uses future blocks as in-sample data for past ones. That makes efficient use of a short history but ignores regime changes in a way a walk-forward test does not.
  • Costs. Paste returns after commissions, spreads and slippage; otherwise high-turnover variants look better than they are.
  • Small samples. With few variants or short blocks, the PBO can take only a few values and is itself very uncertain.
  • Statistical power. A low PBO does not prove the best strategy will make money. Check its out-of-sample returns and risk with the Sharpe ratio calculator.
  • Unequal blocks. When the number of rows is not a multiple of S, the earliest blocks get one extra row each.

Frequently asked questions

What is the probability of backtest overfitting?
It is the probability that the strategy configuration with the best in-sample performance ranks at or below the median of all configurations out of sample. Bailey, Borwein, López de Prado and Zhu proposed estimating it with combinatorially symmetric cross-validation (CSCV). A PBO near 50% or above means the selection process is no better than picking a variant at random.
What is a good PBO?
Lower is better, but there is no official cut-off. A PBO close to zero means the in-sample winner reliably stays above the median out of sample; a PBO near 50% or above means the backtest ranking is mostly noise. In the simulated example, the PBO is 35.7%, which says the selection carries some information but should not be trusted on its own.
How many blocks should I use?
More blocks give more splits and a smoother estimate, but each block gets shorter and noisier. With 120 monthly rows, 8 blocks of 15 months each give 70 splits. With 4 blocks the example gives a PBO of 16.7% from only 6 splits; with 12 blocks, 32.9% from 924. Choose blocks long enough to contain a meaningful number of trades.
Do I need the returns of every variant I tested?
Yes. The method measures the selection process, so the matrix must contain every configuration that could have been chosen, including the ones that were discarded. Leaving out the losers understates the PBO. Most backtesting tools can export the return series of every run in an optimization.
How is PBO different from the deflated Sharpe ratio?
The deflated Sharpe ratio adjusts a single Sharpe ratio for the number of trials using a formula and summary statistics. PBO works directly with the returns of all trials and makes no distributional assumptions, but it needs the full matrix. They answer related questions and are often used together.

Related calculators

All calculators →

This calculator is for education and planning. It uses the formulas described above and the inputs you provide; real results depend on fees, taxes, timing and other details that a general tool cannot know. PromtFinance does not give personal financial advice. Check important decisions with your provider or a qualified professional.