Documentation Center

  • Trial Software
  • Product Updates

Specify Conditional Mean Model Innovation Distribution

About the Innovation Process

You can express all stationary stochastic processes in the general linear form [1]

The innovation process, , is an uncorrelated—but not necessarily independent—mean zero process with a known distribution.

In Econometrics Toolbox™, the general form for the innovation process is . Here, zt is an independent and identically distributed (iid) series with mean 0 and variance 1, and is the variance of the innovation process at time t. Thus, is an uncorrelated series with mean 0 and variance .

arima model objects have two properties for storing information about the innovation process:

  • Variance stores the form of

  • Distribution stores the parametric form of the distribution of zt

Choices for the Variance Model

  • If for all times t, then is an independent process with constant variance, .

    The default value for Variance is NaN, meaning constant variance with unknown value. You can alternatively assign Variance any positive scalar value, or estimate it using estimate.

  • A time series can exhibit volatility clustering, meaning a tendency for large changes to follow large changes, and small changes to follow small changes. You can model this behavior with a conditional variance model—a dynamic model describing the evolution of the process variance, , conditional on past innovations and variances.

    Set Variance equal to one of the three conditional variance model objects available in Econometrics Toolbox (garch, egarch, or gjr). This creates a composite conditional mean and variance model variable.

Choices for the Innovation Distribution

The available distributions for zt are:

  • Standardized Gaussian

  • Standardized Student's t with ν > 2 degrees of freedom,

    where follows a Student's t distribution with ν > 2 degrees of freedom.

The t distribution is useful for modeling time series with more extreme values than expected under a Gaussian distribution. Series with larger values than expected under normality are said to have excess kurtosis.

    Tip   It is good practice to assess the distributional properties of model residuals to determine if a Gaussian innovation distribution (the default distribution) is appropriate for your data.

Specify the Innovation Distribution

The property Distribution in a model stores the distribution name (and degrees of freedom for the t distribution). The data type of Distribution is a struct array. For a Gaussian innovation distribution, the data structure has only one field: Name. For a Student's t distribution, the data structure must have two fields:

  • Name, with value 't'

  • DoF, with a scalar value larger than two (NaN is the default value)

If the innovation distribution is Gaussian, you do not need to assign a value to Distribution. arima creates the required data structure.

To illustrate, consider specifying an MA(2) model with an iid Gaussian innovation process:

Mdl = arima(0,0,2)
Mdl = 

    ARIMA(0,0,2) Model:
    --------------------
    Distribution: Name = 'Gaussian'
               P: 0
               D: 0
               Q: 2
        Constant: NaN
              AR: {}
             SAR: {}
              MA: {NaN NaN} at Lags [1 2]
             SMA: {}
        Variance: NaN

The model output shows that Distribution is a struct array with one field, Name, with the value 'Gaussian'.

When specifying a Student's t innovation distribution, you can specify the distribution with either unknown or known degrees of freedom. If the degrees of freedom are unknown, you can simply assign Distribution the value 't'. By default, the property Distribution has a data structure with field Name equal to 't', and field DoF equal to NaN. When you input the model to estimate, the degrees of freedom are estimated along with any other unknown model parameters.

For example, specify an MA(2) model with an iid Student's t innovation distribution, with unknown degrees of freedom:

Mdl = arima('MALags',1:2,'Distribution','t')
Mdl = 

    ARIMA(0,0,2) Model:
    --------------------
    Distribution: Name = 't', DoF = NaN
               P: 0
               D: 0
               Q: 2
        Constant: NaN
              AR: {}
             SAR: {}
              MA: {NaN NaN} at Lags [1 2]
             SMA: {}
        Variance: NaN

The output shows that Distribution is a data structure with two fields. Field Name has the value 't', and field DoF has the value NaN.

If the degrees of freedom are known, and you want to set an equality constraint, assign a struct array to Distribution with fields Name and DoF. In this case, if the model is input to estimate, the degrees of freedom won't be estimated (the equality constraint is upheld).

Specify an MA(2) model with an iid Student's t innovation process with eight degrees of freedom:

Mdl = arima('MALags',1:2,'Distribution',struct('Name','t','DoF',8))
Mdl = 

    ARIMA(0,0,2) Model:
    --------------------
    Distribution: Name = 't', DoF = 8
               P: 0
               D: 0
               Q: 2
        Constant: NaN
              AR: {}
             SAR: {}
              MA: {NaN NaN} at Lags [1 2]
             SMA: {}
        Variance: NaN

The output shows the specified innovation distribution.

Modify the Innovation Distribution

After a model exists in the Workspace, you can modify its Distribution property using dot notation. You cannot modify the fields of the Distribution data structure directly. For example, Mdl.Distribution.DoF = 8 is not a valid assignment. However, you can get the individual fields.

Start with an MA(2) model:

Mdl = arima(0,0,2);

To change the distribution of the innovation process in an existing model to a Student's t distribution with unknown degrees of freedom, type:

Mdl.Distribution = 't'
Mdl = 

    ARIMA(0,0,2) Model:
    --------------------
    Distribution: Name = 't', DoF = NaN
               P: 0
               D: 0
               Q: 2
        Constant: NaN
              AR: {}
             SAR: {}
              MA: {NaN NaN} at Lags [1 2]
             SMA: {}
        Variance: NaN

To change the distribution to a t distribution with known degrees of freedom, use a data structure:

Mdl.Distribution = struct('Name','t','DoF',8)
Mdl = 

    ARIMA(0,0,2) Model:
    --------------------
    Distribution: Name = 't', DoF = 8
               P: 0
               D: 0
               Q: 2
        Constant: NaN
              AR: {}
             SAR: {}
              MA: {NaN NaN} at Lags [1 2]
             SMA: {}
        Variance: NaN

You can get the individual Distribution fields:

DistributionDoF = Mdl.Distribution.DoF
DistributionDoF =

     8

To change the innovation distribution from a Student's t back to a Gaussian distribution, type:

Mdl.Distribution = 'Gaussian'
Mdl = 

    ARIMA(0,0,2) Model:
    --------------------
    Distribution: Name = 'Gaussian'
               P: 0
               D: 0
               Q: 2
        Constant: NaN
              AR: {}
             SAR: {}
              MA: {NaN NaN} at Lags [1 2]
             SMA: {}
        Variance: NaN

The Name field is updated to 'Gaussian', and there is no longer a DoF field.

References

[1] Wold, H. A Study in the Analysis of Stationary Time Series. Uppsala, Sweden: Almqvist and Wiksell, 1938.

See Also

| |

Related Examples

More About

Was this topic helpful?