3
$\begingroup$

Should I back-test in a single (original) price series and bootstrap the strategy returns to get statistics of interest? Or should I create bootstrapped price series using bootstrapped returns from the original price series and run the strategy on those? The latter one requires significantly more computational power.

$\endgroup$
2
  • 5
    $\begingroup$ For backtesting I like the bootstrapping method used by Cowles in the 1930's. If an investment advisor recommended 5 switches from stocks to cash or vice versa during the review period, Cowles selected 5 dates at random for the switch, and using simple pre-computer methods he generated many (I don't remember the exact number) alternative bootstrapped scenarios. He was bootstrapping the trading dates, not the prices (and it is quite efficient). Levich and Thomas used the same technique in their 1993 article on FX trading. Both articles are worth looking at. $\endgroup$
    – nbbo2
    May 8, 2023 at 6:41
  • $\begingroup$ See this quant stackexchange question quant.stackexchange.com/questions/42221/… $\endgroup$
    – nbbo2
    May 8, 2023 at 6:45

1 Answer 1

1
$\begingroup$

Straight bootstrap of the returns of the strategy would result in inconclusive evidence about the ability of the strategy to generate added value in terms of some "abnormal" returns. Bootstrapping original time series would undermine ability of the strategy to generate returns even if the strategy is reasonable. You could instead use solution in the style of Cowles, described above. For example, something like that:

  1. Model distribution of number of bars between two signals (buy and sell) of the actual strategy.
  2. Generate N buy/sell pairs from the distribution (1) and apply it to random points in time series.
  3. Finally, calculate equity curve and all statistics like profit factor, average drawdown, Ulcer and Sharpe ratio, etc.
  4. Repeat (2) and (3) many times, say B = 10 000+ times.
  5. Compare actual metrics and bootstrapped ones.
$\endgroup$
1

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.