Appendix A. Block Bootstrapping Algorithm
Statistical bootstrapping algorithms generate artificial data series from an original sample via random resampling with replacement. Applied to financial time series, bootstrapping procedures help to construct the
distribution of returns over long investment horizons, the problem that can hardly be solved without any model assumptions using original sample only.
Block Bootstrapping is a variation of bootstrapping that randomly selects (potentially overlapping) blocks of contiguous observations, as opposed to individual observations. The nice property of block bootstrapping is
that it helps preserving serial dependence in the dataset.
In the following example block bootstrapping algorithm is described:
Bootstrapping at Wikipedia
- Suppose, 4 years of daily portfolio returns are available (1000 observations total). The goal is to construct the distribution of portfolio returns over 5 year horizon.
- Let’s group original sample into 950 overlapping blocks of 50 days in each.
- To generate 100 artificial samples of 5 year length, it is necessary to randomly resample with replacement (i.e. the same block is allowed to be used for several times) 2500 (250*5*100/50)
blocks, obtained from the original sample.
- The produced samples are then used to construct the empirical distribution of portfolio returns over 5 year horizon.