garch (x, order = c(1, 1), coef = NULL, itmax = 200, eps = NULL,
grad = c("analytical","numerical"), series = NULL, trace = TRUE, ...)
predict (object, newdata, genuine = FALSE)
coef (object)
residuals (object)
fitted (object)
print (object, digits = max(3,.Options$digits-3))
summary (object)
plot (object, ask = interactive())
print.summary (object, digits = max(3,.Options$digits-3),
signif.stars = .Options$show.signif.stars, ...)order[2] corresponds to the ARCH part and
order[1] to the GARCH part.itmax and the maximum number of iterations
2*itmax the optimizer is allowed to compute.max(1e-20,eps^2)) and
relative function convergence tolerance
(max(1e-10,eps^(2/3))), the coefficient-convergence
tolerance (sqrt(eps)), and the false convergence tolerance
(deparse(substitute(x)).garch.eval(parse(text=object$series)).print.coefmat.plot method work interactively? See
interactive.garch and its methods print and plot a list
of class "garch" with the following elements:x.x.x.x.garch function.predict a bivariate time series (two-column matrix) of
predictions.
For coef, a numeric vector, for residuals and
fitted a univariate (vector) and a bivariate time series
(two-column matrix), respectively. For summary and print.summary a list of
class "summary.garch".
garch uses a Quasi-Newton optimizer to find the
maximum-likelihood estimates of the conditionally normal model. The
first max(p,q) values are assumed to be fixed. The optimizer uses a
hessian approximation computed from the BFGS
update. Only a Cholesky factor of the Hessian approximation is
stored. For more details see Dennis et al. (1981), Dennis and Mei
(1979), Dennis and More (1977), and Goldfarb (1976). The gradient is
either computed analytically or using a numerical approximation. predict returns +/- the conditional standard deviation
predictions from a fitted GARCH model.
coef returns the coefficient estimates.
residuals returns the GARCH residuals, i.e., the time series
used to fit the model divided by the computed conditional standard
deviation predictions for this series. Under the assumption of
conditional normality the residual series should be i.i.d. standard
normal.
fitted returns +/- the conditional standard deviation
predictions for the series which has been used to fit the model.
print, summary, plot, and print.summary
provide the usual generic functions for fitted GARCH
models. summary computes the asymptotic standard errors of the
coefficient estimates from an outer-product approximation of the
Hessian evaluated at the estimates, see Bollerslev (1986). It furthermore
tests the residuals for normality and remaining ARCH effects, see
jarque.bera.test and Box.test.
plot graphically investigates normality and remaining ARCH
effects for the residuals.
R. F. Engle (1982): Autoregressive Conditional Heteroscedasticity with Estimates of the Variance of United Kingdom Inflation. Econometrica 50, 987-1008.
J. E. Dennis, D. M. Gay, and R. E. Welsch (1981): Algorithm 573 - An Adaptive Nonlinear Least-Squares Algorithm. ACM Trans. Math. Software 7, 369-383.
J. E. Dennis and H. H. W. Mei (1979): Two New Unconstrained Optimization Algorithms which use Function and Gradient Values. J. Optim. Theory Applic. 28, 453-482.
J. E. Dennis and J. J. More (1977): Quasi-Newton Methods, Motivation and Theory. SIAM Rev. 19, 46-89.
D. Goldfarb (1976): Factorized Variable Metric Methods for Unconstrained Optimization. Math. Comput. 30, 796-811.
n <- 1100
a <- c (0.1, 0.5, 0.2) # ARCH(2) coefficients
e <- rnorm (n)
x <- double (n)
x[1:2] <- rnorm (2, sd = a[1]/(1.0-a[2]-a[3]))
for (i in 3:n) # Generate ARCH(2) process
{
x[i] <- e[i]*sqrt(a[1]+a[2]*x[i-1]^2+a[3]*x[i-2]^2)
}
x <- ts(x[101:1100])
x.arch <- garch (x, order = c(0,2)) # Fit ARCH(2)
summary (x.arch) # Diagnostic tests
plot (x.arch)
data (EuStockMarkets)
dax <- diff(log(EuStockMarkets))[,"DAX"]
dax.garch <- garch (dax) # Fit a GARCH(1,1) to DAX returns
summary (dax.garch) # ARCH effects are filtered. However,
plot (dax.garch) # conditional normality seems to be violatedRun the code above in your browser using DataLab