RATS 11.1
RATS 11.1

GARCHUV.RPF example

We’ll use the example file GARCHUV.RPF to demonstrate the different forms of standard univariate GARCH models. Note that, in practice, you wouldn’t use all of these (or even all but one or two) in a single analysis—this is just for illustration. GARCHUV.RPF is based upon an example from Verbeek (2008). All the examples look at the returns on the Deutsche Mark-Dollar exchange rate, which (as described in "Data Scaling") is scaled by 100.

 

open data garch.asc

data(format=free,org=columns) 1 1867 bp cd dm jy sf

set dlogdm = 100*log(dm/dm{1})

See "UV GARCH Output" for a description of the typical output from a (univariate) GARCH instruction. The overall form is common to all the models, with changes to the coefficients list depending upon the specific model estimated.

ARCH Models

The simplest “variance model” is the ARCH(q) model:

\begin{equation} h_t = c_0 + a_1 u_{t - 1}^2 + a_2 u_{t - 2}^2 + \ldots + a_q u_{t - q}^2 \label{eq:garch_archq} \end{equation}

Assume that the dependent variable is the daily appreciation of the Deutsche Mark vs the dollar, and the model to be estimated is an ARCH(6). You can estimate this using GARCH by:

 

garch(q=6) / dlogdm

 

The GARCH instruction is designed to handle univariate or multivariate models, so the syntax has the estimation range first (hence the /) followed by the list of dependent variable series.

GARCH Models

Even Engle in his original paper ran into some problems implementing the ARCH model with real world data. (He worked with inflation data, not financial returns, though even financial returns don't do well with just ARCH terms). Volatility seems to have a different type of persistence than can be explained by an ARCH(1) model, where both the short- and long-term clustering depend upon a single parameter. It’s possible to add additional lags of the squared variance, as was done in the example above, but unconstrained estimates of the lags will often show some negative coefficients. Engle used four lags, but had to constrain the shape of the lag distribution.

 

Bollerslev(1986) proposed the GARCH model as an alternative. In a GARCH model, the variance term depends upon the lagged variances as well as the lagged (squared) residuals. This allows for a more flexible persistence in volatility with a relatively small number of parameters. The variance model for the standard GARCH(p,q) is

\begin{equation} h_t = c_0 + a_1 u_{t - 1}^2 + a_2 u_{t - 2}^2 + \ldots + a_q u_{t - q}^2 + b_1 h_{t - 1} + b_2 h_{t - 2} + \ldots + b_p h_{t - p} \end{equation}

To estimate a GARCH(1,1) on the same series as above, use

 

garch(p=1,q=1) / dlogdm

Standard Extensions

Exponential GARCH (EGARCH)

Integrated GARCH (I-GARCH)

Fat-Tailed Distributions

Asymmetry

More Complicated Mean Models

GARCH-M

GARCH-X

Other Topics

Estimation

Output

Saving Residuals and Variances

Graphing Variances

Diagnostics

Forecasts

Other Extensions

 


Copyright © 2026 Thomas A. Doan