Note: This page has been translated by MathWorks. Click here to see

To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

Generate ARMA model impulse responses

The `armairf`

function returns the impulse response functions (IRF) of the variables in a univariate or
multivariate autoregressive, moving average (ARMA) model specified by arrays of
coefficients or lag operator polynomials.

If you have a completely specified, univariate `arima`

model object, from which you want to estimate its IRF, then see
`impulse`

. To estimate the IRF of a regression
model with ARIMA errors, see `impulse`

.

IRFs trace the effects of an innovation shock to one variable on the response of all
variables in the system. Whereas, the forecast error decomposition (FEVD) provides
information about the relative importance of each innovation in affecting all variables
in the system. To estimate FEVDs of univariate or multivariate ARMA models, see
`armafevd`

.

`armairf(ar0,ma0)`

`armairf(ar0,ma0,Name,Value)`

`Y = armairf(___)`

`armairf(ax,___)`

`[Y,h] = armairf(___)`

`armairf(`

plots, in
separate figures, the impulse response function of the
`ar0`

,`ma0`

)`numVars`

time series variables composing an
ARMA(*p*,*q*) model. The autoregressive
(AR) and moving average (MA) coefficients of the model are
`ar0`

and `ma0`

, respectively. Each figure
contains `numVars`

line plots representing the responses of a
variable from applying a one-standard-deviation shock, at time 0, to all
variables in the system over the forecast horizon.

The `armairf`

function:

Accepts vectors or cell vectors of matrices in difference-equation notation.

Accepts

`LagOp`

lag operator polynomials corresponding to the AR and MA polynomials in lag operator notation.Accommodates time series models that are univariate or multivariate, stationary or integrated, structural or in reduced form, and invertible or noninvertible.

Assumes that the model constant

*c*is 0.

`armairf(`

plots the `ar0`

,`ma0`

,`Name,Value`

)`numVars`

IRFs with additional options specified by
one or more `Name,Value`

pair arguments. For example,
`'NumObs',10,'Method','generalized'`

specifies a 10-period
forecast horizon and the estimation of the generalized IRF.

`armairf(`

plots to the axes specified in `ax`

,___)`ax`

instead of
the axes in new figures. The option `ax`

can precede any of the input argument
combinations in the previous syntaxes.

To compute

*forecast error impulse responses*, use the default value of`InnovCov`

, which is a`numVars`

-by-`numVars`

identity matrix. In this case, all available computation methods (see`Method`

) result in equivalent impulse response functions.To accommodate structural ARMA(

*p*,*q*) models, supply`LagOp`

lag operator polynomials for the input arguments`ar0`

and`ma0`

. To specify a structural coefficient when you call`LagOp`

, set the corresponding lag to 0 by using the`'Lags'`

name-value pair argument.For orthogonalized, multivariate IRFs, arrange the variables according to

*Wold causal ordering*[2]:The first variable (corresponding to the first rows and columns of

`ar0`

and`ma0`

) is most likely to have an immediate impact (*t*= 0) on all other variables.The second variable (corresponding to the second rows and columns of

`ar0`

and`ma0`

) is most likely to have an immediate impact the remaining variables, but not the first variable.In general, variable

*j*(corresponding to row*j*and column*j*of`ar0`

and`ma0`

) is the most likely to have an immediate impact on the last`numVars`

–*j*variables, but not the previous*j*– 1 variables.

If

`Method`

is`'orthogonalized'`

, then the resulting impulse response function depends on the order of the variables in the time series model. If`Method`

is`'generalized'`

, then the resulting impulse response function is invariant to the order of the variables. Therefore, the two methods generally produce different results.If

`InnovCov`

is a diagonal matrix, then the resulting generalized and orthogonal impulse response functions are identical. Otherwise, the resulting generalized and orthogonal IRFs are identical only when the first variable shocks all variables (that is, all else being the same, both methods yield the same`Y(:,1,:)`

).

[1]
Hamilton, J. D. *Time Series Analysis*. Princeton, NJ: Princeton University Press, 1994.

[2]
Lütkepohl, H. *New Introduction to Multiple Time Series Analysis*. New York, NY: Springer-Verlag, 2007.

[3]
Pesaran, H. H., and Y. Shin. "Generalized Impulse Response
Analysis in Linear Multivariate Models." *Economic Letters.* Vol. 58, 1998,
pp. 17–29.