The default EGARCH(P,Q) model in Econometrics Toolbox™ is of the form
with Gaussian innovation distribution and
The default model has no mean offset, and the lagged log variances and standardized innovations are at consecutive lags.
You can specify a model of this form using the shorthand syntax egarch(P,Q)
. For the input arguments P
and Q
, enter the number of lagged log variances (GARCH terms), P, and lagged standardized innovations (ARCH and leverage terms), Q, respectively. The following restrictions apply:
P and Q must be nonnegative integers.
If P > 0, then you must also specify Q > 0.
When you use this shorthand syntax, egarch
creates an egarch
model with these default property values.
Property | Default Value |
---|---|
P | Number of GARCH terms, P |
Q | Number of ARCH and leverage terms, Q |
Offset | 0 |
Constant | NaN |
GARCH | Cell vector of NaN s |
ARCH | Cell vector of NaN s |
Leverage | Cell vector of NaN s |
Distribution | "Gaussian" |
To assign nondefault values to any properties, you can modify the created model using dot notation.
To illustrate, consider specifying the EGARCH(1,1) model
with Gaussian innovation distribution and
Mdl = egarch(1,1)
Mdl = egarch with properties: Description: "EGARCH(1,1) Conditional Variance Model (Gaussian Distribution)" Distribution: Name = "Gaussian" P: 1 Q: 1 Constant: NaN GARCH: {NaN} at lag [1] ARCH: {NaN} at lag [1] Leverage: {NaN} at lag [1] Offset: 0
The created model, Mdl
, has NaN
s for all model parameters. A NaN
value signals that a parameter needs to be estimated or otherwise specified by the user. All parameters must be specified to forecast or simulate the model
To estimate parameters, input the model (along with data) to estimate
. This returns a new fitted egarch
model. The fitted model has parameter estimates for each input NaN
value.
Calling egarch
without any input arguments returns an EGARCH(0,0) model specification with default property values:
DefaultMdl = egarch
DefaultMdl = egarch with properties: Description: "EGARCH(0,0) Conditional Variance Model (Gaussian Distribution)" Distribution: Name = "Gaussian" P: 0 Q: 0 Constant: NaN GARCH: {} ARCH: {} Leverage: {} Offset: 0
This example shows how to use the shorthand egarch(P,Q)
syntax to specify the default EGARCH(P, Q) model, with a Gaussian innovation distribution and
By default, all parameters in the created model have unknown values.
Specify the default EGARCH(1,1) model:
Mdl = egarch(1,1)
Mdl = egarch with properties: Description: "EGARCH(1,1) Conditional Variance Model (Gaussian Distribution)" Distribution: Name = "Gaussian" P: 1 Q: 1 Constant: NaN GARCH: {NaN} at lag [1] ARCH: {NaN} at lag [1] Leverage: {NaN} at lag [1] Offset: 0
The output shows that the created model, Mdl
, has NaN
values for all model parameters: the constant term, the GARCH coefficient, the ARCH coefficient, and the leverage coefficient. You can modify the created model using dot notation, or input it (along with data) to estimate
.
The most flexible way to specify EGARCH models is using name-value pair arguments. You do not need, nor are you able, to specify a value for every model property. egarch
assigns default values to any model properties you do not (or cannot) specify.
The general EGARCH(P,Q) model is of the form
where and
The innovation distribution can be Gaussian or Student’s t. The default distribution is Gaussian.
In order to estimate, forecast, or simulate a model, you must specify the parametric form of the model (e.g., which lags correspond to nonzero coefficients, the innovation distribution) and any known parameter values. You can set any unknown parameters equal to NaN
, and then input the model to estimate
(along with data) to get estimated parameter values.
egarch
(and estimate
) returns a model corresponding to the model specification. You can modify models to change or update the specification. Input models (with no NaN
values) to forecast
or simulate
for forecasting and simulation, respectively. Here are some example specifications using name-value arguments.
Model | Specification |
---|---|
| egarch('GARCH',NaN,'ARCH',NaN,... or egarch(1,1) |
| egarch('Offset',NaN,'GARCH',NaN,... |
| egarch('Constant',-0.1,'GARCH',0.4,... |
Here is a full description of the name-value arguments you can use to specify EGARCH models.
Note
You cannot assign values to the properties P
and Q
. egarch
sets P
equal to the largest GARCH lag, and Q
equal to the largest lag with a nonzero standardized innovation coefficient, including ARCH and leverage coefficients.
Name-Value Arguments for EGARCH Models
Name | Corresponding EGARCH Model Term(s) | When to Specify |
---|---|---|
Offset | Mean offset, μ | To include a nonzero mean offset. For example, 'Offset',0.2 . If you plan to estimate the offset term, specify 'Offset',NaN .By default, Offset has value 0 (meaning, no offset). |
Constant | Constant in the conditional variance model, κ | To set equality constraints for κ. For example, if a model has known constant –0.1, specify 'Constant',-0.1 .By default, Constant has value NaN . |
GARCH | GARCH coefficients, | To set equality constraints for the GARCH coefficients. For example, to specify an EGARCH(1,1) model with specify 'GARCH',0.6 .You only need to specify the nonzero elements of GARCH . If the nonzero coefficients are at nonconsecutive lags, specify the corresponding lags using GARCHLags .Any coefficients you specify must satisfy all stationarity constraints. |
GARCHLags | Lags corresponding to nonzero GARCH coefficients | GARCHLags is not a model property.Use this argument as a shortcut for specifying GARCH when the nonzero GARCH coefficients correspond to nonconsecutive lags. For example, to specify nonzero GARCH coefficients at lags 1 and 3, e.g., nonzero and specify 'GARCHLags',[1,3] .Use GARCH and GARCHLags together to specify known nonzero GARCH coefficients at nonconsecutive lags. For example, if and specify 'GARCH',{0.3,0.1},'GARCHLags',[1,3] |
ARCH | ARCH coefficients, | To set equality constraints for the ARCH coefficients. For example, to specify an EGARCH(1,1) model with specify 'ARCH',0.3 .You only need to specify the nonzero elements of ARCH . If the nonzero coefficients are at nonconsecutive lags, specify the corresponding lags using ARCHLags . |
ARCHLags | Lags corresponding to nonzero ARCH coefficients |
Use this argument as a shortcut for specifying Use |
Leverage | Leverage coefficients, | To set equality constraints for the leverage coefficients. For example, to specify an EGARCH(1,1) model with specify 'Leverage',-0.1 .You only need to specify the nonzero elements of Leverage . If the nonzero coefficients are at nonconsecutive lags, specify the corresponding lags using LeverageLags . |
LeverageLags | Lags corresponding to nonzero leverage coefficients |
Use this argument as a shortcut for specifying Use |
Distribution | Distribution of the innovation process | Use this argument to specify a Student’s t innovation distribution. By default, the innovation distribution is Gaussian. For example, to specify a t distribution with unknown degrees of freedom, specify To specify a t innovation distribution with known degrees of freedom, assign |
You can specify the lag structure, innovation distribution, and leverages of EGARCH models using the Econometric Modeler app. The app treats all coefficients as unknown and estimable, including the degrees of freedom parameter for a t innovation distribution.
At the command line, open the Econometric Modeler app.
econometricModeler
Alternatively, open the app from the apps gallery (see Econometric Modeler).
In the app, you can see all supported models by selecting a time series variable for the response in the Data Browser. Then, on the Econometric Modeler tab, in the Models section, click the arrow to display the models gallery.
The GARCH Models section contains all supported conditional variance models. To specify an EGARCH model, click EGARCH
. The EGARCH Model Parameters dialog box appears.
Adjustable parameters include:
GARCH Degree – The order of the GARCH polynomial.
ARCH Degree – The order of the ARCH polynomial. The value of this parameter also specifies the order of the leverage polynomial.
Include Offset – The inclusion of a model offset.
Innovation Distribution – The innovation distribution.
As you adjust parameter values, the equation in the Model Equation section changes to match your specifications. Adjustable parameters correspond to input and name-value pair arguments described in the previous sections and in the egarch
reference page.
For more details on specifying models using the app, see Fitting Models to Data and Specifying Lag Operator Polynomials Interactively.
This example shows how to specify an EGARCH(P, Q) model with a mean offset. Use name-value pair arguments to specify a model that differs from the default model.
Specify an EGARCH(1,1) model with a mean offset,
where and
Mdl = egarch('Offset',NaN,'GARCHLags',1,'ARCHLags',1,... 'LeverageLags',1)
Mdl = egarch with properties: Description: "EGARCH(1,1) Conditional Variance Model with Offset (Gaussian Distribution)" Distribution: Name = "Gaussian" P: 1 Q: 1 Constant: NaN GARCH: {NaN} at lag [1] ARCH: {NaN} at lag [1] Leverage: {NaN} at lag [1] Offset: NaN
The mean offset appears in the output as an additional parameter to be estimated or otherwise specified.
This example shows how to specify an EGARCH model with nonzero coefficients at nonconsecutive lags.
Specify an EGARCH(3,1) model with nonzero GARCH terms at lags 1 and 3. Include a mean offset.
Mdl = egarch('Offset',NaN,'GARCHLags',[1,3],'ARCHLags',1,... 'LeverageLags',1)
Mdl = egarch with properties: Description: "EGARCH(3,1) Conditional Variance Model with Offset (Gaussian Distribution)" Distribution: Name = "Gaussian" P: 3 Q: 1 Constant: NaN GARCH: {NaN NaN} at lags [1 3] ARCH: {NaN} at lag [1] Leverage: {NaN} at lag [1] Offset: NaN
The unknown nonzero GARCH coefficients correspond to lagged log variances at lags 1 and 3. The output shows only the nonzero coefficients.
Display the value of GARCH
:
Mdl.GARCH
ans=1×3 cell array
{[NaN]} {[0]} {[NaN]}
The GARCH
cell array returns three elements. The first and third elements have value NaN
, indicating these coefficients are nonzero and need to be estimated or otherwise specified. By default, egarch
sets the interim coefficient at lag 2 equal to zero to maintain consistency with MATLAB® cell array indexing.
This example shows how to specify an EGARCH model with known parameter values. You can use such a fully specified model as an input to simulate
or forecast
.
Specify the EGARCH(1,1) model
with a Gaussian innovation distribution.
Mdl = egarch('Constant',0.1,'GARCH',0.6,'ARCH',0.2,... 'Leverage',-0.1)
Mdl = egarch with properties: Description: "EGARCH(1,1) Conditional Variance Model (Gaussian Distribution)" Distribution: Name = "Gaussian" P: 1 Q: 1 Constant: 0.1 GARCH: {0.6} at lag [1] ARCH: {0.2} at lag [1] Leverage: {-0.1} at lag [1] Offset: 0
Because all parameter values are specified, the created model has no NaN
values. The functions simulate
and forecast
don't accept input models with NaN
values.
This example shows how to specify an EGARCH model with a Student's t innovation distribution.
Specify an EGARCH(1,1) model with a mean offset,
where and
Assume follows a Student's t innovation distribution with 10 degrees of freedom.
tDist = struct('Name','t','DoF',10); Mdl = egarch('Offset',NaN,'GARCHLags',1,'ARCHLags',1,... 'LeverageLags',1,'Distribution',tDist)
Mdl = egarch with properties: Description: "EGARCH(1,1) Conditional Variance Model with Offset (t Distribution)" Distribution: Name = "t", DoF = 10 P: 1 Q: 1 Constant: NaN GARCH: {NaN} at lag [1] ARCH: {NaN} at lag [1] Leverage: {NaN} at lag [1] Offset: NaN
The value of Distribution
is a struct
array with field Name
equal to 't'
and field DoF
equal to 10
. When you specify the degrees of freedom, they aren't estimated if you input the model to estimate
.