|
Statistics and Algorithms / GARCH Models / GARCH Models (Multivariate) / MV GARCH Restricted Covariance Models / DCC (Dynamic Conditional Correlations) |
While CC generally has a well-behaved likelihood function, and can handle a bigger set of variables than the more fully parameterized models, it does have the drawback of requiring the correlation to be constant. In some applications, time-varying correlations are essential. Engle(2002) proposed a method of handling this which he dubbed Dynamic Conditional Correlations. This adds two scalar parameters which govern a “GARCH(1,1)” model on the covariance matrix as a whole:
\begin{equation} {\bf{Q}}_t = (1 - a - b){\kern 1pt} {\bf{\bar Q}} + au_{t - 1} u'_{t - 1} + b{\kern 1pt} {\bf{Q}}_{t - 1} \label{eq:garch_dcc} \end{equation}
where \({\bf{\bar Q}}\) is the unconditional covariance matrix.
However, \(\bf{Q}\) isn’t the sequence of covariance matrices. Instead, it is used solely to provide the correlation matrix. The actual \(\bf{H}\) matrix is generated using univariate GARCH models for the variances, combined with the correlations produced by the \(\bf{Q}\).
\begin{equation} H_{ij,t} = Q_{ij,t} {{\sqrt {H_{ii,t} H_{jj,t} } } \mathord{\left/ {\vphantom {{\sqrt {H_{ii,t} H_{jj,t} } } {\sqrt {Q_{ii,t} Q_{jj,t} } }}} \right. } {\sqrt {Q_{ii,t} Q_{jj,t} } }} \end{equation}
In GARCHMV.RPF the example of DCC is:
garch(p=1,q=1,mv=dcc) / xjpn xfra xsui
The output has the mean model coefficients first, then the coefficients from the variance models (this is the default VARIANCES=SIMPLE), then the DCC parameters, shown as DCC(A) and DCC(B), which are the \(a\) and \(b\) in the \(\bf{Q}\) recursion.
Note that while apparently a generalization of the CC model, the two don't formally nest as CC estimates freely the correlation matrix and (if \(n > 2\)) actually has more free parameters than the DCC model. While you can't do a standard likelihood ratio test to compare CC with DCC, in this case, DCC has a higher log likelihood by roughly 1000, so CC is clearly quite inadequate. The @TSECCTEST procedure offers a Lagrange Multiplier test for CC against a time-varying alternative, though that alternative is not DCC.
There’s a separate DCC option which chooses the form of the submodel \eqref{eq:garch_dcc}. The default is DCC=COVARIANCE, which is \eqref{eq:garch_dcc} as written, using the model residuals. DCC=CORRELATION is Engle’s original idea of
\begin{equation} {\bf{Q}}_t = (1 - a - b){\bf{\bar Q}} + a\varepsilon _{t - 1} \varepsilon '_{t - 1} + b{\bf{Q}}_{t - 1} \end{equation}
where \(\varepsilon _{t} \) is the vector of standardized residuals (residuals divided by the model estimate for its standard deviation) and \({\bf{\bar Q}}\) is the sample covariance matrix of those. Engle’s recursion is really designed for “two-step” estimation procedures which estimate univariate models first and take the standardized residuals as given in a second step of estimating the joint covariance matrix. However, it can't be applied easily with any of the VARIANCE models which have interactions among the variances from different equations (SPILLOVER, VARMA and KOUTMOS). It also, in practice, rarely fits better than DCC=COVARIANCE, and often fits quite a bit worse. (It tends to be more easily dominated by outliers.) DCC=COVARIANCE is the calculation that GARCH has been doing since DCC was added and remains the default.
DCC=CDCC (corrected DCC) is based upon the suggestion in Aielli(2013). Aielli shows the Engle’s DCC recursion isn't internally consistent, in the sense that \(E(\varepsilon _t \varepsilon '_t ) \ne {\bf{Q}}_t \) as it would be if the secondary model were actually “GARCH”, and he proposes an alternative which fixes that. Aielli’s model has the same problem as Engle’s that it doesn’t really apply except to models which can be done in two steps (mainly because the calculation of the implied \({\bf{\bar Q}}\) requires that the individual variances be known), so DCC=CDCC uses a “feasible” estimator of the sample correlation matrix.
This is similar to DCC, but adds to the \(\bf{Q}\) recursion an asymmetry term as described on page UG–308 with a scalar multiplier (labeled as DCC(G) in the output).
MV-DCC GARCH - Estimation by BFGS
Convergence in 42 Iterations. Final criterion was 0.0000033 <= 0.0000100
Usable Observations 6236
Log Likelihood -11814.4403
Variable Coeff Std Error T-Stat Signif
************************************************************************************
1. Mean(XJPN) 0.003987506 0.006060129 0.65799 0.51054435
2. Mean(XFRA) -0.003133447 0.006152936 -0.50926 0.61056964
3. Mean(XSUI) -0.003070966 0.007508317 -0.40901 0.68253341
4. C(1) 0.008499092 0.001136736 7.47675 0.00000000
5. C(2) 0.012485541 0.001314571 9.49780 0.00000000
6. C(3) 0.016566320 0.001742031 9.50977 0.00000000
7. A(1) 0.151662080 0.009226265 16.43808 0.00000000
8. A(2) 0.138382721 0.008036770 17.21870 0.00000000
9. A(3) 0.123692585 0.006958449 17.77588 0.00000000
10. B(1) 0.852005668 0.008113585 105.00977 0.00000000
11. B(2) 0.848527776 0.008240241 102.97366 0.00000000
12. B(3) 0.858001790 0.007341456 116.87079 0.00000000
13. DCC(A) 0.053230310 0.003340516 15.93476 0.00000000
14. DCC(B) 0.939072327 0.003985276 235.63544 0.00000000
Copyright © 2026 Thomas A. Doan