# Interpretation of Ljung-Box tests for GARCH models from the 'rugarch' package in R

I have used the 'rugarch' R package to fit a GARCH model, as:

model.garch = ugarchspec(mean.model=list(armaOrder=c(1,1)),variance.model=list(model = "sGARCH"),distribution.model = "norm")
ugarchfit(model.garch, data=my_data)


However, I am confused about the right interpretation of the Ljung-Box tests associated with my results. Specifically, this is what I have:

Weighted Ljung-Box Test on Standardized Residuals
------------------------------------
statistic   p-value
Lag                       1.304 2.535e-01
Lag[2*(p+q)+(p+q)-1]    10.501 3.392e-06
Lag[4*(p+q)+(p+q)-1]    17.820 3.235e-02
d.o.f=5
H0 : No serial correlation

Weighted Ljung-Box Test on Standardized Squared Residuals
------------------------------------
statistic p-value
Lag                     0.1355  0.7128
Lag[2*(p+q)+(p+q)-1]    0.3466  0.9786
Lag[4*(p+q)+(p+q)-1]    0.4837  0.9986
d.o.f=2

Weighted ARCH LM Tests
------------------------------------
Statistic Shape Scale P-Value
ARCH Lag   0.00900 0.500 2.000  0.9244
ARCH Lag   0.03188 1.440 1.667  0.9974
ARCH Lag   0.14606 2.315 1.543  0.9985


Given that some of the p-values from the "Weighted Ljung-Box Test on Standardized Residuals" are significant (with the exemption of Lag), should I conclude that my GARCH model failed to correct for the temporal auto-correlation in my data?

Perhaps more importantly, how those results influence the overall assessment of the model given that the p-values from the "Weighted Ljung-Box Test on Standardized Squared Residuals" and the "Weighted ARCH LM Tests" are NOT significant? Thank you in advance!

## 1 Answer

A GARCH model assumes the standardized errors (shocks, innovations) are i.i.d. with zero mean and unit variance. After having fit a GARCH model, it makes sense to test whether this is the case. Some common checks are to examine presence of autocorrelation and/or autoregressive conditional heteroskedasticity in the standardized errors; under the i.i.d. assumption, there should be none. If any is found, the model assumptions are violated, so the face value of the modeling results cannot be trusted.

Ljung-Box (LB) test on standardized residuals tests for autocorrelation in standardized errors, while LB test on standardized squared residuals and ARCH-LM test test for autoregressive conditional heteroskedasticity. Autocorrelation and autoregressive conditional heteroskedasticity are not the same. You can have one, the other or both in a time series. Hence, you should not be surprised if some tests find presence of one but not the other.

A problem with applying any of these tests to standardized (squared) residuals from a GARCH model is that the test statistics have nonstandard distributions under the null. (They have their standard null distributions when applied to raw data, but not when applied to residuals of a GARCH model.)* As far as I know, this is not accounted for in the rugarch package. Hence, you should take the test results with a grain of salt.

*There are papers and (I think) textbooks showing that ARCH-LM test should be substituted by Li-Mak test to have the correct distribution under the null if the mean of the process is modelled as a constant (not as ARMA as in your case). Similar corrections are needed for the LB tests. When the mean is not modelled as a constant, I am not sure whether there exists any test at all with a known null distribution. See my answer in the thread "Remaining heteroskedasticity even after GARCH estimation" for some references.