Note: This page has been translated by MathWorks. Please click here

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

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

The basic multivariate time series models based on linear autoregressive, moving average models are:

Model Name | Abbreviation | Equation |
---|---|---|

Vector Autoregression | VAR(p) |
$${y}_{t}=c+{\displaystyle \sum _{i=1}^{p}{\Phi}_{i}{y}_{t-i}}+{\epsilon}_{t}$$ |

Vector Moving Average | VMA(q) |
$${y}_{t}=c+{\displaystyle \sum _{j=1}^{q}{\Theta}_{j}{\epsilon}_{t-j}}+{\epsilon}_{t}$$ |

Vector Autoregression Moving Average | VARMA(p, q) |
$${y}_{t}=c+{\displaystyle \sum _{i=1}^{p}{\Phi}_{i}{y}_{t-i}}+{\displaystyle \sum _{j=1}^{q}{\Theta}_{j}{\epsilon}_{t-j}}+{\epsilon}_{t}$$ |

Vector Autoregression Moving Average with a linear time trend | VARMA(p, q) |
$${y}_{t}=c+\delta t+{\displaystyle \sum _{i=1}^{p}{\Phi}_{i}{y}_{t-i}+{\displaystyle \sum _{j=1}^{q}{\Theta}_{j}{\epsilon}_{t-j}+{\epsilon}_{t}}}$$ |

Vector Autoregression Moving Average with eXogenous inputs | VARMAX(p, q) |
$${y}_{t}=c+\beta {x}_{t}+{\displaystyle \sum _{i=1}^{p}{\Phi}_{i}{y}_{t-i}}+{\displaystyle \sum _{j=1}^{q}{\Theta}_{j}{\epsilon}_{t-j}}+{\epsilon}_{t}$$ |

Structural Vector Autoregression Moving Average | SVARMA(p, q) |
$${\Phi}_{0}{y}_{t}=c+{\displaystyle \sum _{i=1}^{p}{\Phi}_{i}{y}_{t-i}}+{\displaystyle \sum _{j=1}^{q}{\Theta}_{j}{\epsilon}_{t-j}}+{\Theta}_{0}{\epsilon}_{t}$$ |

The following variables appear in the equations:

*y*is the vector of_{t}*response*time series variables at time*t*.*y*has_{t}*n*elements.*c*is a constant vector of offsets, with*n*elements.*Φ*are_{i}*n*-by-*n*matrices for each*i*. The*Φ*are autoregressive matrices. There are_{i}*p*autoregressive matrices, and some can be entirely composed of zeros.*ε*is a vector of serially uncorrelated innovations, vectors of length_{t}*n*. The*ε*are multivariate normal random vectors with a covariance matrix_{t}*Σ*.*Θ*are_{j}*n*-by-*n*matrices for each*j*. The*Θ*are moving average matrices. There are_{j}*q*moving average matrices, and some can be entirely composed of zeros.*δ*is a constant vector of linear time trend coefficients, with*n*elements.*x*is an_{t}*r*-by-*1*vector representing exogenous terms at each time*t*.*r*is the number of exogenous series. Exogenous terms are data (or other unmodeled inputs) in addition to the response time series*y*. Each exogenous series appears in all response equations._{t}*β*is an*n*-by-*r*constant matrix of regression coefficients of size*r*. So the product*βx*is a vector of size_{t}*n*.

Generally, the time series *y*_{t} and
*x _{t}* are observable. In other words,
if you have data, it represents one or both of these series. You do not always know
the offset

`estimate`

for ways to estimate unknown parameters. The innovations
Econometrics
Toolbox™ supports the creation and analysis of the VAR(*p*)
model using `varm`

and associated methods.

There is an equivalent representation of the linear autoregressive
equations in terms of lag operators. The lag operator *L* moves the
time index back by one: *L**y*_{t} = *y*_{t–1}. The operator *L ^{m}*
moves the time index back by

In lag operator form, the equation for a SVARMAX(*p*,
*q*) model becomes

$$\left({\Phi}_{0}-{\displaystyle \sum _{i=1}^{p}{\Phi}_{i}{L}^{i}}\right){y}_{t}=c+\beta {x}_{t}+\left({\Theta}_{0}+{\displaystyle \sum _{j=1}^{q}{\Theta}_{j}{L}^{j}}\right){\epsilon}_{t}.$$

This equation can be written as

$$\Phi (L){y}_{t}=c+\beta {x}_{t}+\Theta (L){\epsilon}_{t},$$

where

$$\Theta (L)={\Theta}_{0}-{\displaystyle \sum _{i=1}^{p}{\Theta}_{i}{L}^{i}}$$

and

$$\Theta (L)={\Theta}_{0}+{\displaystyle \sum _{j=1}^{q}{\Theta}_{j}{L}^{j}}.$$

$$\mathrm{det}\left({I}_{n}-{\Phi}_{1}z-{\Phi}_{2}{z}^{2}-\mathrm{...}-{\Phi}_{p}{z}^{p}\right)\ne 0\text{for}\left|z\right|\le 1,$$

This condition implies that, with all innovations equal to zero, the VAR process
converges to *c* as time goes on. See Lütkepohl [80] Chapter 2 for a discussion.

$$\mathrm{det}\left({I}_{n}+{\Theta}_{1}z+{\Theta}_{2}{z}^{2}+\mathrm{...}+{\Theta}_{q}{z}^{q}\right)\ne 0\text{for}\left|z\right|\le 1.$$

This condition implies that the pure VAR representation of the process is stable. See Lütkepohl [80] Chapter 11 for a discussion of invertible VMA models.

A VARMA model is stable if its VAR polynomial is stable. Similarly, a VARMA model is invertible if its VMA polynomial is invertible.

There is no well-defined notion of stability or invertibility for models with exogenous inputs (e.g., VARMAX models). An exogenous input can destabilize a model.

To understand a multiple time series model, or multiple time series data, you generally perform the following steps:

Import and preprocess data.

Specify a model.

Creating VAR Models to set up a model using

`varm`

:Model Objects with Known Parameters to specify a model with known parameters

Model Objects with No Parameter Values to specify a model when you want MATLAB

^{®}to estimate the parametersModel Objects with Selected Parameter Values to specify a model where you know some parameters, and want MATLAB to estimate the others

Determining an Appropriate Number of Lags to determine an appropriate number of lags for your model

Fit the model to data. See Fitting Models to Data to use

`estimate`

to estimate the unknown parameters in your models.Analyze and forecast using the fitted model. This can involve:

Examining the Stability of a Fitted Model to determine whether your model is stable.

VAR Model Forecasting to forecast directly from models or to forecast using a Monte Carlo simulation.

Calculating Impulse Responses to calculate impulse responses, which give forecasts based on an assumed change in an input to a time series.

Compare the results of your model's forecasts to data held out for forecasting. For an example, see VAR Model Case Study.

Your application need not involve all of the steps in this workflow. For example, you might not have any data, but want to simulate a parameterized model. In that case, you would perform only steps 2 and 4 of the generic workflow.

You might iterate through some of these steps.

- Multivariate Time Series Data Structures
- Multivariate Time Series Model Creation
- VAR Model Estimation
- Fit VAR Model to Simulated Data
- Fit VAR Model of CPI and Unemployment Rate
- Estimate Capital Asset Pricing Model Using SUR
- VAR Model Forecasting, Simulation, and Analysis
- Forecast VAR Model
- Forecast VAR Model Using Monte Carlo Simulation
- Simulate Responses of Estimated VARX Model
- VAR Model Case Study
- Cointegration and Error Correction Analysis

Was this topic helpful?