# arch.bootstrap.StepM¶

class arch.bootstrap.StepM(benchmark, models, size=0.05, block_size=None, reps=1000, bootstrap='stationary', studentize=True, nested=False)[source]

StepM multiple comparison procedure of Romano and Wolf.

Parameters
• benchmark ({ndarray, Series}) – T element array of benchmark model losses

• models ({ndarray, DataFrame}) – T by k element array of alternative model losses

• size (float, optional) – Value in (0,1) to use as the test size when implementing the comparison. Default value is 0.05.

• block_size (int, optional) – Length of window to use in the bootstrap. If not provided, sqrt(T) is used. In general, this should be provided and chosen to be appropriate for the data.

• reps (int, optional) – Number of bootstrap replications to uses. Default is 1000.

• bootstrap (str, optional) – Bootstrap to use. Options are ‘stationary’ or ‘sb’: Stationary bootstrap (Default) ‘circular’ or ‘cbb’: Circular block bootstrap ‘moving block’ or ‘mbb’: Moving block bootstrap

• studentize (bool, optional) – Flag indicating to studentize loss differentials. Default is True

• nested (bool, optional) – Flag indicating to use a nested bootstrap to compute variances for studentization. Default is False. Note that this can be slow since the procedure requires k extra bootstraps.

References

Romano, J. P., & Wolf, M. (2005). “Stepwise multiple testing as formalized data snooping.” Econometrica, 73(4), 1237-1282.

Notes

The size controls the Family Wise Error Rate (FWER) since this is a multiple comparison procedure. Uses SPA and the consistent selection procedure.

See 1 for detail.

References

1

Romano, J. P., & Wolf, M. (2005). Stepwise multiple testing as formalized data snooping. Econometrica, 73(4), 1237-1282.

Methods

 Compute the set of superior models. Reset the bootstrap to it’s initial state. seed(value) Seed the bootstrap’s random number generator

Properties

 superior_models List of the indices or column names of the superior models