GARCH(1,1): modelando una volatilidad que cambia con el tiempo
¿Por qué y cuándo se usa esto? Se usa cuando la volatilidad "de ayer" no es un buen pronóstico de la volatilidad "de hoy" bajo el supuesto simple — es decir, casi siempre. Bancos y fondos usan modelos como GARCH para ajustar límites de riesgo día a día, no una vez al año.
Asumir volatilidad constante es cómodo pero falso: después de un choque grande, los mercados suelen quedar más volátiles por un tiempo ("agrupamiento de volatilidad"). El modelo GARCH(1,1) lo captura con una fórmula recursiva:
con , y (condición de estacionariedad). La varianza de largo plazo a la que el proceso siempre regresa es .
Procedimiento paso a paso (a mano), para proyectar la volatilidad de mañana:
- Consigue , , (se estiman con datos históricos; aquí se dan) y la varianza de hoy .
- Observa el choque de hoy: , el retorno de hoy menos su media esperada.
- Sustituye los tres en para obtener la varianza proyectada de mañana.
- Repite el proceso día a día: la de hoy se vuelve la de mañana.
- Verifica : si no se cumple, el modelo no es estable (la volatilidad "explotaría" sin límite).
Ahora aplica el procedimiento:
Problema. Con , , , , y choques observados , :
- Calcula y .
- Calcula la varianza de largo plazo y compárala con .
Solución.
- (). ().
- (). Después de un choque grande, () sigue muy por debajo de la varianza de largo plazo — normal justo después de iniciar la serie, y muestra por qué GARCH necesita muchas observaciones para "olvidar" el punto de partida.
Practica tú (resuelve antes de mirar la respuesta). Con los mismos y (del paso anterior), llega un choque grande . Calcula . Respuesta: () — el choque grande subió la volatilidad proyectada.
🔧 En código libre: el paquete
arch(de Kevin Sheppard) es el estándar en Python para ajustar GARCH y familia; statsmodels.tsa cubre el resto de series de tiempo (ACF, ARIMA) que normalmente se revisa antes de llegar a GARCH.
📌 Para repasar: , con . La volatilidad "recuerda" los choques recientes y decae hacia .
Práctica paso a paso
GARCH(1,1) paso a paso
Mira cómo se resuelve completo y por qué se hace cada paso.
Un modelo GARCH(1,1) tiene ω = 0.1, α = 0.08 y β = 0.9 (varianzas en %²). La varianza inicial es σ₀² = 2 y ocurren dos choques: ε₁ = -3% y ε₂ = 1%. Proyecta la varianza de los días 1 y 2 y compárala con la de largo plazo.
1Varianza del día 1
σ₁² = ω + α·ε₁² + β·σ₀² = 0.1 + 0.08×(-3)² + 0.9×2. Redondea a 4 decimales.
2Varianza del día 2
Repite con el choque de hoy ε₂ = 1 y usando la varianza que acabas de calcular como la de ayer. Redondea a 4 decimales.
3Volatilidad del día 2
Pasa la varianza del día 2 a volatilidad (desviación estándar): saca la raíz cuadrada. Redondea a 3 decimales (en %).
4Varianza de largo plazo
σ∞² = ω ÷ (1 − α − β) = 0.1 ÷ (1 − 0.08 − 0.9). Redondea a 3 decimales.
Volatilidad de largo plazo: √5 = 2.24%. La varianza del día 2 (2.538) está por debajo: con el tiempo tenderá a subir hacia ese nivel.
Los errores que más se repiten
No elevar al cuadrado el choque ε.
Usar la varianza de largo plazo (o la inicial) en lugar de la de ayer en la recursión.
Olvidar la raíz al pasar de varianza a volatilidad.
Restar solo α o β en el denominador de la varianza de largo plazo.
Mezclar unidades: aquí todo está en % (varianza en %²), no en decimales.