Robust GARCH Standard Errors and Distributional Misspecification
Summary
The discussion explains robust standard errors in GARCH estimation as a quasi-maximum-likelihood approach associated with White’s covariance estimator. The central point is robustness to a misspecified conditional distribution: for example, estimation can remain useful when a model assumes normally distributed errors but the true distribution is heavier-tailed. If the assumed distribution is correct, the robust estimator is still described as valid, though conventional maximum-likelihood errors may yield narrower confidence intervals.
A second answer describes the sandwich covariance construction and raises a separate implementation concern: numerical derivative and Hessian settings can affect the reported estimates. It suggests adjusting finite-difference steps, while warning that excessively small steps can introduce precision problems. The post also includes a disagreement over whether the package’s implementation is truly QMLE, citing a published critique of its accuracy and documentation. Accordingly, the discussion offers practical cautions but does not resolve the methodological dispute; users should verify the package’s estimator and numerical settings for their version and application.
Key ideas
- QMLE robust standard errors address misspecification of the assumed error distribution in GARCH models.
- The sandwich covariance estimator is associated with White’s approach to inference under misspecification.
- When the assumed distribution is correct, robust standard errors may be wider than conventional maximum-likelihood errors.
- Numerical derivative and Hessian settings can affect reported standard errors, and excessively small steps can cause precision problems.
- The discussion reports disagreement about whether the package implementation matches QMLE and how accurate its robust errors are.
Tags
Full text
# Robust standard errors in GARCH modelling (rugarch) # Robust standard errors in GARCH modelling (rugarch) I am currently conducting some GARCH modelling and I am wondering about the robust standard errors, which I can obtain from `ugarchfit()` in `rugarch` package in R. I have found a presentation and on page 25 the author says that the robust standard errors are obtained from QMLE estimation, but there is no further explanation. My question is what is the interpretation of these robust standard errors, that is, what are they robust to? I suspect that they are robust to heteroskedasticity, but I would be grateful for some confirmation. Also, what is more common in practice, reporting the non-robust or robust version of the standard errors? EDIT: I have found additional information on the topic here. Basically, it confirms what those errors are robust to. Thus, the question whether their use in case of GARCH modeling (on stock index returns) are justifiable? ## Answer by Richard Hardy (score 3, accepted) https://quant.stackexchange.com/a/29570 There is a mention of robust standard errors in "rugarch" vignette on p. 25. The robust standard errors are due to quasi maximum likelihood estimation (QMLE) as opposed to (the regular) maximum likelihood estimation (MLE). They are robust against violations of the distributional assumption, e.g. when the assumed distribution is Normal while the true distribution is Student-$t$. The source cites White "Maximum likelihood estimation of misspecified models" (1982), the (famous) paper introducing QMLE. Now, are they justifiable? Roughly speaking, if the true distribution is not particularly ill-behaved, QMLE will work. If the true ditribution coincides with the assumed distributions, QMLE will still work, so there is not much to lose (although MLE would give narrower confidence intervals than QMLE, which could be useful). For a rigorous treatment, see White's (1982) paper or an econometrics textbook. ## Answer by Andreï V. Kostyrka (score 2) https://quant.stackexchange.com/a/61339 If you want to see how the VCOV estimator à la White (1982) is constructed, after running `ugarchfit`, in the fitted object, which we call `myobj`, look at `myobj@fit$A` and `myobj@fit$B`. These are the matrices defined in White (1982). `rugarch` uses `solve(A) %*% B %*% solve(A) / n`. Now, if the question is, what is the cause of Hill & McCullough (2019) dissatisfaction with the SE’s, the answer is simple: the default numerical derivation parameters in `rugarch` for derivative and Hessian computation are questionable. The default difference value is `1e-4`, which makes no sense for the constant in the variance equation, which is usually in the order of `1e-6`, and if the point at which the derivative is computed is considered ‘too close to zero’, then the finite-difference step is 0.01! This is a recipe for disaster. Using ``` ugarchfit(..., numderiv.control = list(grad.eps = 1e-8, hess.eps = 1e-8)) ``` solves most issues related to poor QML approximations. However, note that differences too tiny make this evaluation unstable again due to numerical precision loss, but I would not worry in most reasonable applications for difference steps between `1e-7` and `1e-10`. ## Answer by Rantulucci (score 0) https://quant.stackexchange.com/a/57777 According to Hill & McCullough (2019) the rugarck package don't use the QMLE method. They said: "However, the "robust" standard error is not the QMLE used by many other packages, and the documentation does not specically state what type of robust standard error is used." "The poor accuracy of the robust standard error makes us suspect that rugarch uses some robust standard error other than QMLE. The author really should specify what method he uses."
Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.