NAG Library Function Document

nag_forecast_agarchI (g13fbc)


    1  Purpose
    7  Accuracy
    10  Example


nag_forecast_agarchI (g13fbc) forecasts the conditional variances, h t , t = 1 , , τ  from a type I AGARCH p,q  sequence, where τ  is the forecast horizon (see Engle and Ng (1993)).


#include <nag.h>
#include <nagg13.h>
void  nag_forecast_agarchI (Integer num, Integer nt, Integer p, Integer q, const double theta[], double gamma, double fht[], const double ht[], const double et[], NagError *fail)


Assume the standard γ=0  GARCH p,q  process can be represented by:
ε t ψ t-1 N 0, h t  
h t = α 0 + i=1 q α i ε t-i 2 + i=1 p β i h t-i ,   t = 1 , , T .  
or type I AGARCH p,q  process with conditional variance h t  given by:
h t = α 0 + i=1 q α i ε t-i + γ 2 + i=1 p β i h t-i ,   t = 1 , , T .  
has been modelled by nag_estimate_agarchI (g13fac) and the estimated conditional variances and residuals are contained in the arrays ht and et respectively. Then nag_forecast_agarchI (g13fbc) will use the last maxp,q  elements of the arrays ht and et to estimate the conditional variance forecasts, h t ψ T , where t = T + 1 , , T + τ  and τ  is the forecast horizon.


Bollerslev T (1986) Generalised autoregressive conditional heteroskedasticity Journal of Econometrics 31 307–327
Engle R (1982) Autoregressive conditional heteroskedasticity with estimates of the variance of United Kingdom inflation Econometrica 50 987–1008
Engle R and Ng V (1993) Measuring and testing the impact of news on volatility Journal of Finance 48 1749–1777
Hamilton J (1994) Time Series Analysis Princeton University Press


1:     num IntegerInput
On entry: the number of terms in the arrays ht and et from the modelled sequence.
Constraint: maxp,q num .
2:     nt IntegerInput
On entry: τ , the forecast horizon.
Constraint: nt>0 .
3:     p IntegerInput
On entry: the GARCH p,q  argument p .
Constraint: 0 < maxp,q num , ​ p0 .
4:     q IntegerInput
On entry: the GARCH p,q  argument q .
Constraint: 0 < maxp,q num , ​ q1 .
5:     theta[q+p+1] const doubleInput
On entry: the first element must contain the coefficient α o  and the next q elements must contain the coefficients α i , for i=1,2,,q. The remaining p elements must contain the coefficients β j , for j=1,2,,p.
6:     gamma doubleInput
On entry: the asymmetry argument γ  for the GARCH p,q  sequence.
7:     fht[nt] doubleOutput
On exit: the forecast values of the conditional variance, h t , for t=1,2,,τ.
8:     ht[num] const doubleInput
On entry: the sequence of past conditional variances for the GARCH p,q  process, h t , for t=1,2,,T.
9:     et[num] const doubleInput
On entry: the sequence of past residuals for the GARCH p,q  process, ε t , for t=1,2,,T.
10:   fail NagError *Input/Output
The NAG error argument (see Section 3.7 in How to Use the NAG Library and its Documentation).

Error Indicators and Warnings

On entry, num=value  while maxp,q = value. These arguments must satisfy num maxp,q .
Dynamic memory allocation failed.
On entry, nt=value.
Constraint: nt1.
On entry, num=value.
Constraint: num0.
On entry, p=value.
Constraint: p0.
On entry, q=value.
Constraint: q1.


Not applicable.

Parallelism and Performance

nag_forecast_agarchI (g13fbc) is not threaded in any implementation.

Further Comments



See the example for nag_estimate_agarchI (g13fac).
© The Numerical Algorithms Group Ltd, Oxford, UK. 2017