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.

In Econometrics
Toolbox™, the general form of the innovation
process is $${\epsilon}_{t}={\sigma}_{t}{z}_{t}.$$ A conditional variance model
specifies the parametric form of the conditional variance process.
The innovation distribution corresponds to the distribution of the
independent and identically distributed (iid) process *z _{t}*.

For the distribution of *z _{t}*,
you can choose a standardized Gaussian or standardized Student’s

$${z}_{t}=\sqrt{\frac{\nu -2}{\nu}}{T}_{\nu},$$

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*.

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.

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`

. `garch`

, `egarch`

,
and `gjr`

create the required data structure.

To illustrate, consider specifying a GARCH(1,1) model:

Mdl = garch(1,1)

Mdl = GARCH(1,1) Conditional Variance Model: -------------------------------------- Distribution: Name = 'Gaussian' P: 1 Q: 1 Constant: NaN GARCH: {NaN} at Lags [1] ARCH: {NaN} at Lags [1]

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 a GJR(2,1) model with an iid Student’s *t* innovation
distribution, with unknown degrees of freedom:

GJRMdl = gjr('GARCHLags',1:2,'ARCHLags',1,'LeverageLags',1,... 'Distribution','t')

GJRMdl = GJR(2,1) Conditional Variance Model: -------------------------------------- Distribution: Name = 't', DoF = NaN P: 2 Q: 1 Constant: NaN GARCH: {NaN NaN} at Lags [1 2] ARCH: {NaN} at Lags [1] Leverage: {NaN} at Lags [1]

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 a GARCH(1,1) model with an iid Student’s *t* distribution
with eight degrees of freedom:

GARCHMdl = garch('GARCHLags',1,'ARCHLags',1,... 'Distribution',struct('Name','t','DoF',8))

GARCHMdl = GARCH(1,1) Conditional Variance Model: -------------------------------------- Distribution: Name = 't', DoF = 8 P: 1 Q: 1 Constant: NaN GARCH: {NaN} at Lags [1] ARCH: {NaN} at Lags [1]

The output shows the specified 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, ```
GARCHMdl.Distribution.DoF
= 8
```

is not a valid assignment. However, you can get the
individual fields.

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';`

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

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

You can get the individual `Distribution`

fields:

tDoF = Mdl.Distribution.DoF

tDoF = 8

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

`Mdl.Distribution = 'Gaussian'`

Mdl = GARCH(1,1) Conditional Variance Model: -------------------------------------- Distribution: Name = 'Gaussian' P: 1 Q: 1 Constant: NaN GARCH: {NaN} at Lags [1] ARCH: {NaN} at Lags [1]

The `Name`

field is updated to `'Gaussian'`

,
and there is no longer a `DoF`

field.

- Specify GARCH Models Using garch
- Specify EGARCH Models Using egarch
- Specify GJR Models Using gjr
- Modify Properties of Conditional Variance Models

Was this topic helpful?