## Create Autoregressive Integrated Moving Average Models

These examples show how to create various autoregressive integrated moving
average (ARIMA) models by using the `arima`

function.

### Default ARIMA Model

This example shows how to use the shorthand `arima(p,D,q)`

syntax to specify the default ARIMA(*p*, *D*, *q*) model,

$${\Delta}^{D}{y}_{t}=c+{\varphi}_{1}{\Delta}^{D}{y}_{t-1}+\dots +{\varphi}_{p}{\Delta}^{D}{y}_{t-p}+{\epsilon}_{t}+{\theta}_{1}{\epsilon}_{t-1}+\dots +{\theta}_{q}{\epsilon}_{t-q},$$

where $${\Delta}^{D}{y}_{t}$$ is a $${D}^{th}$$ differenced time series. You can write this model in condensed form using lag operator notation:

$$\varphi (L)(1-L{)}^{D}{y}_{t}=c+\theta (L){\epsilon}_{t}.$$

By default, all parameters in the created model object have unknown values, and the innovation distribution is Gaussian with constant variance.

Specify the default ARIMA(1,1,1) model:

Mdl = arima(1,1,1)

Mdl = arima with properties: Description: "ARIMA(1,1,1) Model (Gaussian Distribution)" Distribution: Name = "Gaussian" P: 2 D: 1 Q: 1 Constant: NaN AR: {NaN} at lag [1] SAR: {} MA: {NaN} at lag [1] SMA: {} Seasonality: 0 Beta: [1×0] Variance: NaN

The output shows that the created model object, `Mdl`

, has `NaN`

values for all model parameters: the constant term, the AR and MA coefficients, and the variance. You can modify the created model using dot notation, or input it (along with data) to `estimate`

.

The property `P`

has value 2 (*p* + *D*). This is the number of presample observations needed to initialize the AR model.

### ARIMA Model with Known Parameter Values

This example shows how to specify an ARIMA(*p*, *D*, *q*) model with known parameter values. You can use such a fully specified model as an input to `simulate`

or `forecast`

.

Specify the ARIMA(2,1,1) model

$$\Delta {y}_{t}=0.4+0.8\Delta {y}_{t-1}-0.3\Delta {y}_{t-2}+{\epsilon}_{t}+0.5{\epsilon}_{t-1},$$

where the innovation distribution is Student's *t* with 10 degrees of freedom, and constant variance 0.15.

tdist = struct('Name','t','DoF',10); Mdl = arima('Constant',0.4,'AR',{0.8,-0.3},'MA',0.5,... 'D',1,'Distribution',tdist,'Variance',0.15)

Mdl = arima with properties: Description: "ARIMA(2,1,1) Model (t Distribution)" Distribution: Name = "t", DoF = 10 P: 3 D: 1 Q: 1 Constant: 0.4 AR: {0.8 -0.3} at lags [1 2] SAR: {} MA: {0.5} at lag [1] SMA: {} Seasonality: 0 Beta: [1×0] Variance: 0.15

The name-value pair argument `D`

specifies the degree of nonseasonal integration (*D*).

All parameter values are specified, that is, no object property is `NaN`

-valued.

### Specify ARIMA Model Using Econometric Modeler App

In the **Econometric
Modeler** app, you can specify the lag structure, presence of a constant,
and innovation distribution of an
ARIMA(*p*,*D*,*q*) model by
following these steps. All specified coefficients are unknown but estimable parameters.

At the command line, open the

**Econometric Modeler**app.econometricModeler

Alternatively, open the app from the apps gallery (see

**Econometric Modeler**).In the

**Time Series**pane, select the response time series to which the model will be fit.On the

**Econometric Modeler**tab, in the**Models**section, click**ARIMA**. To create ARIMAX models, see Create ARIMA Models That Include Exogenous Covariates.The

**ARIMA Model Parameters**dialog box appears.Specify the lag structure. To specify an ARIMA(

*p*,*D*,*q*) model that includes all AR lags from 1 through*p*and all MA lags from 1 through*q*, use the**Lag Order**tab. For the flexibility to specify the inclusion of particular lags, use the**Lag Vector**tab. For more details, see Specifying Univariate Lag Operator Polynomials Interactively. Regardless of the tab you use, you can verify the model form by inspecting the equation in the**Model Equation**section.

For example:

To specify an ARIMA(3,1,2) model that includes a constant, includes all consecutive AR and MA lags from 1 through their respective orders, and has a Gaussian innovation distribution:

Set

**Degree of Integration**to`1`

.Set

**Autoregressive Order**to`3`

.Set

**Moving Average Order**to`2`

.

To specify an ARIMA(3,1,2) model that includes all AR and MA lags from 1 through their respective orders, has a Gaussian distribution, but does not include a constant:

Set

**Degree of Integration**to`1`

.Set

**Autoregressive Order**to`3`

.Set

**Moving Average Order**to`2`

.Clear the

**Include Constant Term**check box.

To specify an ARIMA(8,1,4) model containing nonconsecutive lags

$$\left(1-{\varphi}_{1}L-{\varphi}_{4}{L}^{4}-{\varphi}_{8}{L}^{8}\right)\left(1-L\right){y}_{t}=\left(1+{\theta}_{1}{L}^{1}+{\theta}_{4}{L}^{4}\right){\epsilon}_{t},$$

where

*ε*is a series of IID Gaussian innovations:_{t}Click the

**Lag Vector**tab.Set

**Degree of Integration**to`1`

.Set

**Autoregressive Lags**to`1 4 8`

.Set

**Moving Average Lags**to`1 4`

.Clear the

**Include Constant Term**check box.

To specify an ARIMA(3,1,2) model that includes all consecutive AR and MA lags through their respective orders and a constant term, and has

*t*-distribution innovations:Set

**Degree of Integration**to`1`

.Set

**Autoregressive Order**to`3`

.Set

**Moving Average Order**to`2`

.Click the

**Innovation Distribution**button, then select`t`

.

The degrees of freedom parameter of the

*t*distribution is an unknown but estimable parameter.

After you specify a model, click **Estimate** to
estimate all unknown parameters in the model.

### What Are ARIMA Models?

The autoregressive integrated moving average (ARIMA) process generates nonstationary
series that are integrated of order *D*, denoted
*I*(*D*). A nonstationary
*I*(*D*) process is one that can be made
stationary by taking *D* differences. Such processes are often called
*difference-stationary* or *unit root*
processes.

A series that you can model as a stationary
ARMA(*p*,*q*) process after being differenced
*D* times is denoted by
ARIMA(*p*,*D*,*q*). The form of
the ARIMA(*p*,*D*,*q*) model in
Econometrics Toolbox™ is

$${\Delta}^{D}{y}_{t}=c+{\varphi}_{1}{\Delta}^{D}{y}_{t-1}+\dots +{\varphi}_{p}{\Delta}^{D}{y}_{t-p}+{\epsilon}_{t}+{\theta}_{1}{\epsilon}_{t-1}+\dots +{\theta}_{q}{\epsilon}_{t-q},$$ | (1) |

*D*th differenced time series, and $${\epsilon}_{t}$$ is an uncorrelated innovation process with mean zero.

In lag operator notation, $${L}^{i}{y}_{t}={y}_{t-i}$$. You can write the
ARIMA(*p*,*D*,*q*) model
as

$${\varphi}^{*}(L){y}_{t}=\varphi (L){(1-L)}^{D}{y}_{t}=c+\theta (L){\epsilon}_{t}.$$ | (2) |

*D*unit roots. You can factor this polynomial as $$\varphi (L){(1-L)}^{D},$$ where$$\varphi (L)=(1-{\varphi}_{1}L-\dots -{\varphi}_{p}{L}^{p})$$ is a stable degree

*p*AR lag operator polynomial (with all roots lying outside the unit circle). Similarly, $$\theta (L)=(1+{\theta}_{1}L+\dots +{\theta}_{q}{L}^{q})$$ is an invertible degree

*q*MA lag operator polynomial (with all roots lying outside the unit circle).

The signs of the coefficients in the AR lag operator polynomial, $$\varphi (L)$$, are opposite to the right side of Equation 1. When specifying and interpreting AR coefficients in Econometrics Toolbox, use the form in Equation 1.

**Note**

In the original Box-Jenkins methodology, you difference an integrated series until
it is stationary before modeling. Then, you model the differenced series as a
stationary ARMA(*p*,*q*) process [1]. Econometrics Toolbox fits and forecasts
ARIMA(*p*,*D*,*q*) processes
directly, so you do not need to difference data before modeling (or backtransform
forecasts).

## References

[1] Box, George E. P., Gwilym M. Jenkins, and Gregory C. Reinsel. *Time Series Analysis: Forecasting and Control*. 3rd ed. Englewood Cliffs, NJ: Prentice Hall, 1994.

## See Also

### Apps

### Objects

### Functions

## Related Topics

- Analyze Time Series Data Using Econometric Modeler
- Specifying Univariate Lag Operator Polynomials Interactively
- Creating Univariate Conditional Mean Models
- Modify Properties of Conditional Mean Model Objects
- Specify Conditional Mean Model Innovation Distribution
- Nonseasonal Differencing
- Trend-Stationary vs. Difference-Stationary Processes
- Lag Operator Notation