FactorAugmentedSVARResult.factor_irf#

FactorAugmentedSVARResult.factor_irf(horizon=20, *, cumulative=False)[source]#

The factor-space structural impulse responses, undelegated.

Parameters:
  • horizon (int) – Largest lead to return.

  • cumulative (bool) – Return running sums.

Return type:

NDArray[double]

Returns:

The (horizon + 1, r + m, s) factor-system responses; the full factor-level surface lives on structural.

Example

Under the default recursive scheme with the observed block last, the observed block’s shock moves no factor on impact:

>>> import numpy as np
>>> from cultivars.multivariate.large_dim.factor_augmented import FAVAR
>>> rng = np.random.default_rng(0)
>>> panel, policy = rng.standard_normal((120, 5)), rng.standard_normal((120, 1))
>>> res = FAVAR(panel, policy, n_factors=2, order=1).fit()
>>> svar = FactorAugmentedSVAR(res).identify()
>>> on_impact = svar.factor_irf(3)[0]
>>> on_impact.shape, on_impact[:2, 2].tolist()
((3, 3), [0.0, 0.0])