SetIdentifiedSVARResult.impact_bounds#
- property SetIdentifiedSVARResult.impact_bounds: NDArray[float64][source]#
Exact
(k, 2)lower and upper impact responses to the shock.Example
A single sign leaves the other variable’s response free in sign: its upper bound is still its innovation standard deviation, and its lower bound is the most negative response compatible with the restricted variable rising:
>>> import numpy as np >>> from cultivars.multivariate.reduced_form.vector_autoregression import VAR >>> rng = np.random.default_rng(0) >>> B = np.array([[1.0, 0.5], [0.3, 1.0]]) >>> y = np.zeros((402, 2)) >>> for t in range(1, 402): ... y[t] = 0.4 * y[t - 1] + B @ rng.standard_normal(2) >>> res = VAR(y, order=1, names=("gdp", "infl")).fit() >>> one = SetIdentifiedSVAR(res, {"gdp": "+"}).identify() >>> one.impact_bounds.shape, one.impact_bounds.round(3).tolist() ((2, 2), [[0.0, 1.122], [-0.758, 1.041]])