DCC-GARCH: cómo estimar correlaciones variables en el tiempo entre activos
Aprende cómo DCC-GARCH separa la volatilidad condicional de cada activo de las correlaciones cambiantes, cómo actualiza y normaliza la matriz Q y dónde puede inducir a error el DCC estándar.
En esta guíaPor qué modelar las correlaciones de forma dinámica
Resumen breve
DCC-GARCH combina modelos separados de volatilidad condicional para cada activo con un proceso parsimonioso que actualiza las correlaciones entre sus innovaciones estandarizadas. La estimación de covarianza se expresa como \(H_t=D_tR_tD_t\): la matriz diagonal \(D_t\) recoge la escala cambiante de cada activo y \(R_t\) describe la dependencia condicional. Esta estimación basada en un modelo puede servir para medir el riesgo, pero no explica causalidad, no pronostica rendimientos ni genera señales de trading.
Por qué modelar las correlaciones de forma dinámica
Una matriz de covarianza es más que una lista de relaciones de largo plazo. En un momento de decisión, un inversor puede necesitar la varianza condicional de cada rendimiento y la covarianza condicional entre cada par de activos, con la información disponible hasta entonces. Si la volatilidad y el movimiento conjunto cambian con el tiempo, una única matriz estimada sobre toda la muestra promedia periodos tranquilos, periodos de tensión y posibles cambios estructurales.
DCC-GARCH permite que evolucione la matriz de correlación condicional y mantiene el modelo compacto. El trabajo de Robert Engle de 2002 propone una especificación de correlación condicional dinámica que combina modelos univariantes de volatilidad con una recursión de correlación con pocos parámetros (Engle, 2002). Así aborda un problema práctico de escala: un modelo de covarianza sin restricciones necesitaría cada vez más parámetros al aumentar el universo de activos.
El método resulta útil cuando interesa cómo cambia la dependencia condicional entre activos después de permitir que cada serie tenga su propia volatilidad variable. No determina por qué se mueven juntos. Para una introducción más sencilla a la varianza variable en una sola serie, consulta agrupamiento de la volatilidad y GARCH. Para las correlaciones entre pares de divisas y los límites de interpretarlas como exposición compartida, consulta correlación entre pares de forex.
Separar la volatilidad de cada activo de su correlación
Sea \(r_t\) el vector de rendimientos de \(N\) activos, \(\mu_t\) su media condicional y \(\epsilon_t=r_t-\mu_t\) la innovación. DCC descompone la matriz de covarianza condicional así:
\[ H_t=\operatorname{Var}(\epsilon_t\mid\mathcal{F}_{t-1})=D_tR_tD_t, \]
donde \(\mathcal{F}_{t-1}\) representa la información disponible antes de observar el instante \(t\), \(D_t=\operatorname{diag}(\sigma_{1,t},\ldots,\sigma_{N,t})\) contiene las desviaciones estándar condicionales y \(R_t\) es una matriz de correlación condicional.
Cada \(\sigma_{i,t}^2\) puede modelarse con una ecuación univariante de la familia GARCH, por ejemplo:
\[ \sigma_{i,t}^{2}=\omega_i+\alpha_i\epsilon_{i,t-1}^{2}+\beta_i\sigma_{i,t-1}^{2}. \]
Este modelo marginal describe cómo cambia la escala de la innovación del activo \(i\) a partir de su propio historial. No afirma que también cambie su correlación con el activo \(j\). Del mismo modo, que cambie \(R_t\) no implica por sí solo que aumente la volatilidad de alguno de los dos activos. La covarianza combina ambos efectos:
\[ H_{ij,t}=\sigma_{i,t}\sigma_{j,t}\rho_{ij,t}. \]
La covarianza puede aumentar si sube la volatilidad de uno o ambos activos aunque \(\rho_{ij,t}\) permanezca fija. DCC intenta estimar por separado la variación restante de la correlación condicional una vez modeladas las volatilidades marginales. Esto lo distingue de ajustar GARCH independientes y después tratar como constante la covarianza de los rendimientos sin estandarizar.
Las innovaciones estandarizadas contienen información sobre la dependencia
Tras ajustar las medias condicionales y las varianzas marginales, se calculan las innovaciones estandarizadas:
\[ z_t=D_t^{-1}\epsilon_t. \]
Si los modelos marginales son adecuados, la varianza condicional de cada componente de \(z_t\) debería ser aproximadamente uno. Aun así, los componentes pueden depender entre sí en el mismo instante; su patrón conjunto es lo que se utiliza para actualizar las correlaciones. La estandarización evita que un gran movimiento bruto de un activo normalmente muy volátil se considere automáticamente una evidencia de dependencia más fuerte que un movimiento estandarizado comparable de otro activo.
En la práctica, los residuos estandarizados son cantidades estimadas, no verdades observadas directamente. Un modelo de media deficiente puede dejar estructura predecible en \(\epsilon_t\); un modelo de volatilidad deficiente puede dejar una escala cambiante en \(z_t\). Entonces, la etapa de correlación puede absorber errores marginales y distorsionar \(R_t\). Las colas pesadas, los valores atípicos, las fechas faltantes, los horarios de negociación no coincidentes, las acciones corporativas y los precios obsoletos también afectan a los residuos de entrada.
Engle y Sheppard describen un método en dos etapas: estimar modelos GARCH univariantes y después estimar los parámetros de correlación con sus residuos estandarizados (Engle and Sheppard, 2001). Separar los ajustes marginales simplifica el cálculo, pero implica que el resultado de la segunda etapa depende de las especificaciones de la primera y de cómo se alinearon temporalmente las series.
La recursión de Q se normaliza para obtener una matriz de correlación
El DCC estándar actualiza primero una matriz auxiliar \(Q_t\):
\[ Q_t=(1-a-b)\bar{Q}+a z_{t-1}z_{t-1}^{\top}+bQ_{t-1}. \]
\(\bar Q\) es una matriz de largo plazo de las innovaciones estandarizadas. \(a\) controla cuánto influyen en la actualización los movimientos conjuntos recientes y \(b\) la persistencia de la \(Q\) anterior. En la especificación escalar habitual de DCC estándar, los valores no negativos de \(a,b\) con \(a+b<1\), junto con una \(\bar Q\) definida positiva y una inicialización adecuada, mantienen definida positiva la recursión usual. La estacionariedad estricta y la inferencia válida siguen dependiendo del modelo completo y sus supuestos. Estas restricciones corresponden a la especificación elegida, no garantizan todas las variantes.
Los elementos diagonales de \(Q_t\) no suelen ser uno, así que \(Q_t\) no es en general una matriz de correlación. Define \(S_t=\operatorname{diag}(Q_t)\) y normaliza:
\[ R_t=S_t^{-1/2}Q_tS_t^{-1/2}. \]
Así, la diagonal queda en uno y los elementos fuera de ella se convierten en correlaciones condicionales sin unidades. La covarianza condicional resulta entonces \(H_t=D_tR_tD_t\). Distinguir \(Q_t\), \(R_t\) y \(H_t\) ayuda a evitar un error habitual: la recursión actualiza una matriz auxiliar de dependencia, la normalización crea correlaciones y las desviaciones estándar marginales las devuelven a la escala de los rendimientos. La normalización es central en el método de Engle (2002).
<!-- learn:illustration --> <!-- Ilustración conceptual sin texto: series de rendimientos con envolventes de volatilidad distintas desembocan en una banda compartida de dependencia que cambia suavemente; es conceptual, no son datos de mercado ni una previsión. -->

La estimación es práctica, pero tiene etapas y supuestos
En una implementación habitual de dos etapas, primero se ajustan una media condicional y una varianza univariante de la familia GARCH para cada activo. Con ellas se calcula \(z_t\) y luego se estiman los parámetros DCC mediante la parte de correlación de una verosimilitud o cuasiverosimilitud. La primera etapa puede usar una verosimilitud gaussiana aunque los rendimientos no sean gaussianos; bajo condiciones de regularidad adecuadas puede servir como cuasimáxima verosimilitud, pero los errores estándar y la inferencia deben corresponder al estimador y sus supuestos reales.
La separación es atractiva desde el punto de vista computacional frente a estimar todo un sistema GARCH multivariante sin restricciones. También crea dependencias entre etapas: la incertidumbre de los parámetros marginales afecta a los residuos estandarizados y, por tanto, a la estimación de la segunda etapa. Una estimación de \(a\) o \(b\) no mide directamente una constante de mercado inmutable. Su interpretación depende de la muestra, los modelos marginales, la inicialización, los supuestos distribucionales y la estabilidad de las dinámicas de correlación.
A menudo, \(\bar Q\) se estima con la covarianza muestral de los residuos estandarizados, pero las definiciones y correcciones exactas varían. La implementación debe indicar cómo estima \(\bar Q\), inicializa \(Q_0\), trata observaciones faltantes, impone restricciones y calcula la verosimilitud. La optimización cerca de \(a+b=1\), una \(\bar Q\) casi singular o un universo de activos demasiado grande puede causar inestabilidad numérica. Informa de los diagnósticos de convergencia y comprueba la sensibilidad a ventanas y especificaciones marginales alternativas razonables.
Para transacciones con marcas de tiempo irregulares, las entradas de rendimientos sincronizados de DCC estándar pueden ser inadecuadas sin un diseño de muestreo deliberado. Puede hacer falta otro estimador para observaciones asíncronas; consulta la guía de covarianza de Hayashi–Yoshida. La contracción de un objetivo de covarianza ruidoso, como la contracción de covarianza de Ledoit–Wolf, también es un paso separado que no debe confundirse con la recursión de correlación dinámica de DCC.
Una actualización hipotética muestra por qué importa la normalización
Considera dos innovaciones estandarizadas y una actualización DCC inventada. Fija \(a=0.05\), \(b=0.90\), \(\bar q_{12}=0.10\), \(q_{12,t-1}=0.30\), y \(z_{1,t-1}=1.5,\ z_{2,t-1}=1.0\). Son datos inventados para mostrar la aritmética, no estimaciones de mercado. La actualización del elemento fuera de la diagonal es:
\[ q_{12,t}=(1-0.05-0.90)(0.10)+0.05(1.5)(1.0)+0.90(0.30)=0.350. \]
Para ilustrar la normalización, supón que los valores diagonales inventados son \(\bar q_{11}=\bar q_{22}=1\) y \(q_{11,t-1}=q_{22,t-1}=1\). La misma recursión da:
\[ q_{11,t}=0.05(1)+0.05(1.5^2)+0.90(1)=1.0625,\qquad q_{22,t}=0.05(1)+0.05(1.0^2)+0.90(1)=1. \]
Por tanto, la correlación normalizada es:
\[ \rho_{12,t}=\frac{0.350}{\sqrt{1.0625\cdot1}}\approx0.340. \]
El elemento auxiliar fuera de la diagonal pasó de 0.30 a 0.35, mientras que la correlación que se reporta es aproximadamente 0.34 porque también cambió la diagonal de \(Q_t\). Informar \(q_{12,t}=0.35\) como si fuera la correlación omite la normalización. El cálculo ilustra un paso de la recursión; no afirma significación estadística, persistencia futura, pesos óptimos de cartera ni valor de trading.
DCC estándar, cDCC y AG-DCC son especificaciones distintas
DCC estándar suele aplicar los mismos parámetros escalares de respuesta y persistencia a todos los pares. Esto ahorra parámetros cuando hay muchos activos, pero puede ser demasiado restrictivo si cada par se ajusta a distinto ritmo. Además, bajo la etiqueta DCC pueden cambiar la parametrización, las restricciones, el método de estimación o la inicialización. Conviene indicar la especificación exacta.
El trabajo de Aielli sobre DCC corregido muestra que el estimador DCC convencional y la interpretación de sus parámetros de correlación pueden presentar problemas al crecer la dimensión transversal, y propone cDCC con una recursión modificada (Aielli, 2013). cDCC no es otro nombre para DCC estándar. La distinción importa sobre todo al ampliar el sistema a muchos activos o interpretar estructuralmente los coeficientes estimados.
Las especificaciones DCC generalizadas asimétricas abordan otra limitación: las perturbaciones estandarizadas positivas y negativas pueden influir de forma distinta en las correlaciones futuras. El modelo AG-DCC de Cappiello, Engle y Sheppard permite parámetros de impacto de noticias y suavizado específicos de cada serie, además de asimetrías condicionales en las correlaciones (Cappiello, Engle, and Sheppard, 2006). AG-DCC ofrece más flexibilidad que la recursión escalar común de DCC, por lo que cambian el número de parámetros, las restricciones y la interpretación. No debe sustituir en silencio al DCC estándar ni suponerse superior sin evaluarlo.
Interpretar y validar la estimación dentro de su alcance
Un \(R_t\) ajustado describe correlaciones condicionales implícitas en el modelo, según la frecuencia de los datos, la ventana muestral, la especificación de la media, los modelos marginales de volatilidad y la variante DCC elegida. No identifica una transmisión causal. Si aumenta la correlación estimada durante una caída, puede deberse a noticias comunes, cambios en la composición, liquidez, una especificación de volatilidad inadecuada u otros mecanismos; la estimación por sí sola no los distingue.
Para medir el riesgo, compara la previsión de covarianza dinámica con referencias razonables, como una covarianza muestral móvil o un modelo de correlación constante. Usa únicamente la información disponible en cada origen de predicción, mantén el mismo universo y horizonte, e informa de la función de pérdida. Si la estimación se usa en una cartera, sigue también sus efectos posteriores en ponderaciones, concentración, rotación, financiación y costes de transacción. Una correlación estimada más alta puede reducir la diversificación en un modelo de riesgo concreto, pero no predice que vaya a caer el precio de ninguno de los activos.
Comprueba que las correlaciones estimadas estén dentro de límites válidos, que \(R_t\) siga siendo definida positiva y que los residuos marginales estandarizados no conserven dependencia serial ni varianza cambiante. Examina la sensibilidad al conjunto de activos, la inicialización, los valores atípicos, la ventana y la variante del modelo. Una persistencia próxima a uno puede hacer que la estimación tarde en reaccionar ante una ruptura; una recursión suave también puede retrasarse ante un cambio brusco de régimen. Define cómo eliges y conserva comparaciones fuera de muestra para evitar seleccionar solo gráficos de pares o variantes convenientes.
Conviene entender DCC-GARCH como un modelo compacto de covarianza condicional: las ecuaciones marginales estiman escalas cambiantes, una recursión de dependencia sigue el movimiento conjunto de innovaciones estandarizadas y la normalización transforma la matriz auxiliar en correlaciones. La matriz ajustada puede contribuir a un análisis de riesgo si sus supuestos son explícitos y sus previsiones se evalúan. Por sí sola no demuestra una cobertura estable, explica un shock ni prueba que una estrategia vaya a ser rentable.
Preguntas frecuentes
Q1¿DCC-GARCH modela la volatilidad y las correlaciones de cada activo en un solo paso?
La covarianza se representa conjuntamente como \(H_t=D_tR_tD_t\), pero un método habitual ajusta primero modelos marginales de volatilidad y después estima la dinámica de correlación a partir de residuos estandarizados. Hay otros métodos, por lo que debe especificarse la implementación.
Q2¿El elemento fuera de la diagonal de \(Q_t\) es la correlación condicional?
Normalmente, no. \(Q_t\) es una matriz auxiliar cuya diagonal no suele ser uno. Normalízala con su diagonal para obtener \(R_t\) y combínala después con \(D_t\) para obtener la covarianza condicional \(H_t\).
Q3¿Una correlación DCC más alta demuestra un efecto de contagio?
No. Es una asociación condicional dentro del modelo ajustado y el diseño de datos. La estimación por sí sola no identifica un mecanismo causal ni distingue shocks comunes de otras fuentes de movimiento conjunto.
Q4¿Puedo usar DCC estándar con cientos o miles de activos?
La parsimonia de parámetros ayuda, pero la estimación de alta dimensión requiere revisión. Aielli documenta problemas del DCC convencional en sistemas grandes y propone cDCC. Compara la especificación pertinente, el comportamiento computacional, la definición positiva y el rendimiento fuera de muestra para el universo previsto.
Fuentes
Informar de un problema
Prepararemos un correo con el enlace de este artículo. Mark recibirá el aviso cuando lo envíes
Comprobación rápida
¿Ya leíste la guía? Compruébalo con 3 preguntas
Pregunta 01
En la descomposición de la covarianza condicional, ¿qué representa R_t?
Elige una respuesta para ver la explicación