VARMAResult.invertibility_check#

VARMAResult.invertibility_check()[source]#

Eigenvalue verdict for the moving-average companion matrix.

Return type:

_StabilityAssessment

Returns:

The _StabilityAssessment; the moving-average polynomial is invertible exactly when every root lies inside the unit circle. Invertibility is what makes the innovations recoverable from the observed history, so a non-invertible estimate means the residuals – and everything computed from them – identify a different, observationally equivalent representation.

Example

>>> import numpy as np
>>> rng = np.random.default_rng(0)
>>> u = rng.standard_normal((302, 2))
>>> y = np.zeros((302, 2))
>>> for t in range(1, 302):
...     y[t] = 0.5 * y[t - 1] + u[t] + 0.4 * u[t - 1]
>>> check = VARMA(y[2:], order=(1, 1)).fit().invertibility_check()
>>> check.is_stable, bool(check.max_modulus < 0.6)
(True, True)