arch.bootstrap.MCS

class arch.bootstrap.MCS(losses: ndarray | DataFrame, size: float, reps: int = 1000, block_size: int | None = None, method: 'R' | 'max' = 'R', bootstrap: 'stationary' | 'sb' | 'circular' | 'cbb' | 'moving block' | 'mbb' = 'stationary', *, seed: None | int | Generator | RandomState = None)[source]

Model Confidence Set (MCS) of Hansen, Lunde and Nason.

Parameters:
losses: ndarray | DataFrame

T by k array containing losses from a set of models

size: float

Value in (0,1) to use as the test size when implementing the mcs. Default value is 0.05.

block_size: int | None = None

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.

method: 'R' | 'max' = 'R'

MCS test and elimination implementation method, either ‘max’ or ‘R’. Default is ‘R’.

reps: int = 1000

Number of bootstrap replications to uses. Default is 1000.

bootstrap: 'stationary' | 'sb' | 'circular' | 'cbb' | 'moving block' | 'mbb' = 'stationary'

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

seed: None | int | Generator | RandomState = None

Seed value to use when creating the bootstrap used in the comparison. If an integer or None, the NumPy default_rng is used with the seed value. If a Generator or a RandomState, the argument is used.

Notes

See [1] for details.

References

Methods

compute()

Compute the set of models in the confidence set.

reset()

Reset the bootstrap to it's initial state.

seed(value)

Seed the bootstrap's random number generator

Properties

excluded

List of model indices that are excluded from the MCS

included

List of model indices that are included in the MCS

pvalues

Model p-values for inclusion in the MCS