garchFit#

Purpose#

Estimates univariate GARCH model.

Format#

gOut = garchFit(y, p[, q, gctl])#
gOut = garchFit(y, x, p[, q, gctl])
gOut = garchFit(dataset, formula, p[, q, gctl])
Parameters:
  • y (Matrix) – dependent variables.

  • x (Matrix) – independent variables.

  • dataset (string) – name of data set or null string.

  • formula (string) – formula string of the model. E.g. "y ~ X1 + X2" ‘y’ is the name of dependent variable, ‘X1’ and ‘X2’ are names of independent variables; E.g. "y ~ ." , ‘.’ means including all variables except dependent variable ‘y’;

  • p (scalar) – order of the GARCH parameters.

  • q (scalar) – Optional input, order of the ARCH parameters.

  • gctl (struct) –

    Optional input, garchControl structure.

    gctl.density

    scalar, density of error term:

    0

    Normal distribution. (Default)

    1

    Student’s t-distribution.

    3

    Skew generalized t-distribution.

    gctl.asymmetry

    scalar, if nonzero assymetry terms are added. (Default = 0)

    gctl.inmean

    scalar, GARCH-in-mean, square root of conditional variance is included in the mean equation.

    gctl.stConstraintsType

    scalar, type of enforcement of stationarity requirements:

    1

    Roots of characteristic polynomial constrained outside unit circle. (Default)

    2

    ARCH, GARCH parameters constrained to sum to less than one and greater than zero.

    3

    None.

    gctl.cvConstraintsType

    scalar, type of enforcement of nonnegative conditional variances:

    0

    Direct constraints. (Default)

    1

    Nelson & Cao constraints.

    gctl.covType

    scalar, type of covariance matrix of parameters:

    1

    Maximum Likelihood. (Default)

    2

    Quasi-Maximum Likelihood. (Default)

    3

    None.

    gctl.sqpsolvemtControlProc

    function pointer, pointer to a function that updates optimization settings by setting the sqpsolvemtControl structure members.

    gctl.cmlmtControlProc

    function pointer, pointer to a function that updates optimization settings by setting the cmlmtControl structure members.

    gctl.start

    PV structure, estimation starting values.

Returns:

gOut (struct) –

garchEstimation structure containing the following members:

gout.aic

scalar, Akiake criterion.

gout.bic

scalar, Bayesian information criterion.

gout.lrs

scalar, likelihood ratio statistic.

gout.numObs

scalar, number of observations.

gout.df

scalar, degrees of freedom.

gout.par

instance of PV structure containing parameter estimates.

gout.retcode

scalar, return code:

1

Normal convergence.

2

Forced exit.

3

Function calculation failed.

4

Gradient calculation failed.

5

Hessian calculation failed.

6

Line search failed.

7

Error with constraints.

8

Function complex.

gout.moment

KxK matrix, moment matrix of parameter estimates.

gout.climits

Kx2 matrix, confidence limits.

gout.tsmtDesc

An instance of the tsmtModelDesc structure containing the following members:

tsmtDesc.depvar

Kx1 string array, names of endogenous variables.

tsmtDesc.indvars

Mx1 string array, names of exogenous variables.

tsmtDesc.timespan

2x1 string array, range of the time series. Available if date vector is passed as part of a dataframe input.

tsmtDesc.ncases

Scalar, number of observations.

tsmtDesc.df

Scalar, degrees of freedom.

tsmtDesc.model_name

String, model name.

gout.sumStats

An instance of the tsmtSummaryStats structure containing the following members:

sumStats.sse

Vector, sum of the squared errors of estimates for endogenous variables in the model.

sumStats.mse

Vector, mean squared errors of estimates for endogenous variables in the model.

sumStats.rmse

Vector, root mean squared errors of estimates for endogenous variables in the model.

sumStats.see

Vector, standard error of the estimates for endogenous variables in the model.

sumStats.rsq

Vector, r-squared of estimates for endogenous variables in the model.

sumStats.AdjRsq

Scalar, adjusted r-squared of estimates for endogenous variables in the model.

sumStats.ssy

Scalar, total sum of the squares for endogenous variables in the model.

sumStats.DW

Scalar, Durbin-Watson statistic for residuals from the estimates for endogenous variables in the model.

Example#

new;
cls,;
library tsmt;

y = loadd(getGAUSSHome("pkgs/tsmt/examples/garch.dat"));

struct garchEstimation gOut;
gOut = garchFit(y, 1, 1);

This prints the following output:

================================================================================
Model:                   GARCH(1,1)          Dependent variable:               Y
Time Span:                  Unknown          Valid cases:                    300
================================================================================
                             Coefficient            Upper CI            Lower CI

          beta0[1,1]             0.01208            -0.00351             0.02768
          garch[1,1]             0.15215            -0.46226             0.76655
          arch[1,1]              0.18499             0.01761             0.35236
          omega[1,1]             0.01429             0.00182             0.02675
================================================================================

                AIC:                                                   315.54085
                LRS:                                                   307.54085

Library#

tsmt

Source#

tsgarch.src

See also

Functions garchMFit(), garchGJRFit(), igarchFit()