Previous Page | Next Page

The AUTOREG Procedure

Heteroscedasticity and GARCH Models

There are several approaches to dealing with heteroscedasticity. If the error variance at different times is known, weighted regression is a good method. If, as is usually the case, the error variance is unknown and must be estimated from the data, you can model the changing error variance.

The generalized autoregressive conditional heteroscedasticity (GARCH) model is one approach to modeling time series with heteroscedastic errors. The GARCH regression model with autoregressive errors is


This model combines the mth-order autoregressive error model with the GARCH variance model. It is denoted as the AR-GARCH regression model.

The Lagrange multiplier (LM) tests shown in Figure 8.11 can help determine the order of the ARCH model appropriate for the data. The tests are significant through order 12, which indicates that a very high-order ARCH model is needed to model the heteroscedasticity.

The basic ARCH model is a short memory process in that only the most recent q squared residuals are used to estimate the changing variance. The GARCH model allows long memory processes, which use all the past squared residuals to estimate the current variance. The LM tests in Figure 8.11 suggest the use of the GARCH model instead of the ARCH model.

The GARCH model is specified with the GARCH=(P= ,Q= ) option in the MODEL statement. The basic ARCH model is the same as the GARCH model and is specified with the GARCH=(Q=) option.

The following statements fit an AR(2)-GARCH model for the Y series regressed on TIME. The GARCH=(P=1,Q=1) option specifies the GARCH conditional variance model. The NLAG=2 option specifies the AR(2) error process. Only the maximum likelihood method is supported for GARCH models; therefore, the METHOD= option is not needed. The CEV= option in the OUTPUT statement stores the estimated conditional error variance at each time period in the variable VHAT in an output data set named OUT. The data set is the same as in the section Testing for Heteroscedasticity.

   /*-- AR(2)-GARCH(1,1) model for the Y series regressed on TIME --*/
   proc autoreg data=a;
      model y = time / nlag=2 garch=(q=1,p=1) maxit=50;
      output out=out cev=vhat;

The results for the GARCH model are shown in Figure 8.12. (The preliminary estimates are not shown.)

Figure 8.12 AR(2)-GARCH Model
Heteroscedastic Autocorrelated Time Series

The AUTOREG Procedure

GARCH Estimates
SSE 218.860964 Observations 120
MSE 1.82384 Uncond Var 1.62996534
Log Likelihood -187.44013 Total R-Square 0.9941
SBC 408.392693 AIC 388.88025
MAE 0.97051351 AICC 389.88025
MAPE 2.75945185 Normality Test 0.0839
    Pr > ChiSq 0.9589

Variable DF Estimate Standard Error t Value Approx
Pr > |t|
Intercept 1 8.9301 0.7235 12.34 <.0001
time 1 0.5075 0.0107 47.30 <.0001
AR1 1 -1.2301 0.1078 -11.41 <.0001
AR2 1 0.5023 0.1057 4.75 <.0001
ARCH0 1 0.0850 0.0757 1.12 0.2614
ARCH1 1 0.2103 0.0847 2.48 0.0130
GARCH1 1 0.7376 0.0960 7.68 <.0001

The normality test is not significant (p = 0.959), which is consistent with the hypothesis that the residuals from the GARCH model, , are normally distributed. The parameter estimates table includes rows for the GARCH parameters. ARCH0 represents the estimate for the parameter , ARCH1 represents , and GARCH1 represents .

The following statements transform the estimated conditional error variance series VHAT to the estimated standard deviation series SHAT. Then, they plot SHAT together with the true standard deviation S used to generate the simulated data.

   data out;
      set out;
      shat = sqrt( vhat );
   title 'Predicted and Actual Standard Deviations';
   proc sgplot data=out noautolegend;
      scatter x=time y=s; 
      series x=time y=shat/ lineattrs=(color=black); 

The plot is shown in Figure 8.13.

Figure 8.13 Estimated and Actual Error Standard Deviation Series
Estimated and Actual Error Standard Deviation Series

Note that in this example the form of heteroscedasticity used in generating the simulated series Y does not fit the GARCH model. The GARCH model assumes conditional heteroscedasticity, with homoscedastic unconditional error variance. That is, the GARCH model assumes that the changes in variance are a function of the realizations of preceding errors and that these changes represent temporary and random departures from a constant unconditional variance. The data-generating process used to simulate series Y, contrary to the GARCH model, has exogenous unconditional heteroscedasticity that is independent of past errors.

Nonetheless, as shown in Figure 8.13, the GARCH model does a reasonably good job of approximating the error variance in this example, and some improvement in the efficiency of the estimator of the regression parameters can be expected.

The GARCH model may perform better in cases where theory suggests that the data-generating process produces true autoregressive conditional heteroscedasticity. This is the case in some economic theories of asset returns, and GARCH-type models are often used for analysis of financial market data.


The AUTOREG procedure supports several variations of the generalized conditional heteroscedasticity model.

Using the TYPE= suboption of the GARCH= option, you can control the constraints placed on the estimated GARCH parameters. You can specify unconstrained, nonnegativity constrained (default), stationarity constrained, or integration constrained. The integration constraint produces the integrated GARCH, or IGARCH, model.

You can also use the TYPE= option to specify the exponential form of the GARCH model, called the EGARCH model. The MEAN suboption of the GARCH= option specifies the GARCH-in-mean, or GARCH-M, model.

The following statements illustrate the use of the TYPE= option to fit an AR(2)-EGARCH model to the series Y. (Output is not shown.)

   /*-- AR(2)-EGARCH(1,1) model --*/
   proc autoreg data=a;
      model y = time / nlag=2 garch=(p=1,q=1,type=exp);

See the section GARCH, IGARCH, EGARCH, and GARCH-M Models later in this chapter for details.

Previous Page | Next Page | Top of Page