This is the second part of the series on volatility modelling. For other parts of the series follow the tag volatility.
In this exercise set we will use the
dmbp dataset from part-1 and extend our analysis to GARCH (Generalized Autoregressive Conditional Heteroscedasticity) models.
Answers to the exercises are available here.
rugarch package and the
dmbp dataset (Bollerslev, T. and Ghysels, E. 1996, Periodic Autoregressive Conditional Heteroscedasticity, Journal
of Business and Economic Statistics, 14, 139–151). This dataset has daily logarithmic nominal returns for Deutsche-mark / Pound. There is also a dummy variable to indicate non-trading days.
Define the daily return as a time series variable.
We will first simulate and analyze a GARCH process. Use the
ugarchspec function to define an GARCH(1,1) process. The return has a simple mean specification with mean=0. The variance follows as AR-1 process with constant=0.2, AR-1 coefficient = 0.2 and MA-1 coefficient = 0.6.
Simulate the defined GARCH process for 500 time periods. Exercises 4 to 6 use this simulated data.
Plot the returns vs time and note the apparent unpredictability. Plot the path of conditional sigma vs time and note that there is some persistence over time.
Plot the ACF of returns and squared returns. Note that there is no auto-correlation between returns but squared returns have significant first degree autocorrelation.
Test for ARCH effects using the Ljung Box test for the simulated data.
We will now use the currency returns data. Use the
ugarchfit function to estimate a GARCH(1,1) model for the data. The return has a simple mean specification with mean=0.
Plot the fit diagnostics graphs.
Fit an AR(1)-GARCH(1,1) model to the data.
Plot the fit diagnostics graphs for the new model.