7 days Pro+ free · no cardStart my free trial

Trading statistics: test what a backtest result actually says · 5 / 5

Trading bootstrap: preserve dependent blocks when resampling results

A bootstrap repeatedly resamples observed data under a declared sampling model. If trades share a common daily shock, resampling each trade independently breaks that relationship. Choosing the unit matters more than displaying an impressive simulation count.

Athenum7 minUpdated:

Declare what is sampled together

In an ordinary independent bootstrap, observations are sampled with replacement and the statistic is recomputed. A block approach keeps a group of related observations together. The groups might be sessions, event episodes or justified time windows. Their length and construction affect which dependence the resampling preserves.

The method does not discover unseen crashes, remove selection bias or repair bad execution data. A block boundary can still cut a dependence that extends across sessions. Check multiple defensible block definitions and retain the original chronological equity path. Do not confuse resampling observed outcomes with a validated model of future prices.

Use a small enumeration to understand the mechanism

The example has only two days and cannot support a credible real-world confidence interval. Its purpose is to show exactly which sequences each resampling scheme allows. We enumerate all day selections so no random seed or simulation noise hides the distinction.

For a real estimate, record the data version, statistic, grouping, number of resamples, random generator and interval method. Reproducibility does not ensure validity: it only makes the result inspectable. The basic bootstrap API’s paired option preserves alignment of paired arrays; it does not automatically discover time blocks for a trading strategy.

Worked example: resample the day, not isolated copies of its shock

Day A contains two +2R trades and day B contains two −1R trades. Mean outcome across all four trades is +0.5R. Drawing two whole days with replacement yields AA, AB, BA and BB with equal weight. Their four-trade means are +2R, +0.5R, +0.5R and −1R.

Independent resampling of four individual trades instead lets each draw be +2R or −1R with equal weight. There are sixteen equally weighted sign patterns. An all-winning or all-losing sample occurs in two of sixteen patterns, or 12.5%, versus two of four day-block patterns, or 50%. These are frequencies inside two constructed resampling models, not probabilities of future trading success.

Worked example: resample the day, not isolated copies of its shock
Selected daysFour trade outcomesMean per trade
AA2, 2, 2, 22R
AB2, 2, −1, −10.5R
BA−1, −1, 2, 20.5R
BB−1, −1, −1, −1−1R
The four equally weighted day-block resamples of the constructed two-day dataset. This teaching enumeration is not a confidence interval for a real strategy.Open full-size diagram
  1. AA mean: 2 R
  2. AB mean: 0.5 R
  3. BA mean: 0.5 R
  4. BB mean: -1 R
The four equally weighted day-block resamples of the constructed two-day dataset. This teaching enumeration is not a confidence interval for a real strategy.

Ten thousand resamples are still two observed days

Increasing the number of draws reduces numerical noise in the resampling calculation. It does not add new regimes or independent history. A tight result from repeatedly recycling a narrow sample can remain badly misleading when the sampling model, selected strategy or future market differs.

Before acting

  • Choose a sampling unit that preserves relevant dependence.
  • Record the statistic, data version and resampling procedure.
  • Keep model frequencies distinct from future-event probabilities.
  • Treat block choice and short history as material uncertainty.

Check your understanding

Using the two-day example, what is the mean across all four day-block bootstrap means? Does its agreement with the original sample prove the strategy has positive expected return?

Show the explained answer

The mean is (2 + 0.5 + 0.5 − 1) / 4 = 0.5R, matching the original sample. This agreement follows from the symmetric resampling construction. It does not establish a future edge; the example contains only two observed days and assumes those days are the resampling population.

Sources and further reading

Continue with Athenum