Trabajo #15 • Econometría Financiera & Riesgo Cuantitativo Python • arch • SciPy • Statsmodels • Plotly Evolución 2020 → 2026 (Régimen ETFs Spot) ✦ Optimizado con Gemini 4 Argon

Modelización de Volatilidad Asimétrica GARCH, Valor en Riesgo (VaR) y Expected Shortfall (CVaR) del Bitcoin en Python (2014–2026)

Actualización econométrica al 2026 de la investigación original publicada en mayo de 2020 (Modelización de la Volatilidad y VaR del Bitcoin en RStudio). Se auditan 4,425 sesiones diarias de BTC-USD para cuantificar el cambio estructural de microestructura tras la aprobación de los ETFs institucionales Spot (2024–2026), contrastando por Máxima Verosimilitud (MLE) las familias sGARCH, EGARCH(2,1) y GJR-GARCH bajo innovaciones Skewed Student-t de Hansen, e integrando el estándar regulatorio de Expected Shortfall (CVaR99%), los contrastes de Kupiec y Christoffersen y reglas sistemáticas de Volatility Targeting, Position Sizing y Stop-Loss condicional.

Autor: Jesús Benjamín Zerpa  |  Corte Empírico: 29 de Octubre de 2026  |  Muestra: 4,425 Días (2014–2026)
Muestra Auditada (2014–2026) 4,425 Días +2,464 sesiones post-2020 Curtosis muestral: 15.02 | Asimetría: -0.704
Compresión Era ETF (2024–2026) 46.88% -26.59 pp vs. 2014–2020 Volatilidad actual (29-Oct-2026): 35.59% anual
Modelo Óptimo MLE / AIC EGARCH(2,1) Hansen Skewed-t (η̂ = 2.770) LogLik: -10,767.53 | AIC: 21,553.06 (-1,161 vs Norm)
Backtesting Basilea III/IV (99%) 0.852% Viol. Kupiec p = 0.4496 (Zona Verde) VaR 99%: -4.60% | CVaR 99% (ES): -6.96% diario

1. Línea Base: Parámetros de Referencia del Estudio Original en RStudio (Mayo 2020)

En mayo de 2020 se publicó en este portafolio la investigación Modelización de la Volatilidad Condicional y Valor en Riesgo (VaR) del Bitcoin, desarrollada en RStudio mediante los paquetes econométricos rugarch, rmgarch y PerformanceAnalytics. Aquel trabajo auditó la ventana histórica comprendida entre enero de 2014 y el 30 de enero de 2020 (N = 1,961 sesiones diarias), estimando especificaciones simétricas y asimétricas bajo tres leyes distribucionales para las innovaciones estandarizadas: Normal Gaussiana, t-Student y Distribución de Errores Generalizados (GED).

Parámetro / Métrica (Corte 30-Ene-2020) sGARCH(1,1) — Normal eGARCH(2,1) — Student-t Inferencia Econométrica en la Muestra 2014–2020
Media Condicional (μ̂) 0.002540 (p = 0.0210) 0.001261 (p = 0.0132) Drift diario esperado de largo plazo cercano a +0.126% por sesión
Persistencia Autorregresiva (β̂1) 0.825323 (t = 15.73) 0.983072 (t = 78.44) Elevada memoria hiperbólica en la varianza condicional ante choques exógenos
Efecto Asimétrico (γ̂1) Restringido a 0 (Simétrico) 0.451433 (p < 0.0001) Respuesta diferencial estadísticamente significativa según el signo de la innovación
Grados de Libertad de Cola (ν̂) ∞ (Supuesto Gaussiano) 2.550534 (t = 12.93) Evidencia empírica de leptocurtosis extrema y divergencia del cuarto momento
Log-Verosimilitud / Criterio AIC 2,788.19 / -3.4712 3,036.89 / -3.7790 Dominancia por razón de verosimilitud de eGARCH(2,1) Student-t (+248.7 puntos LogLik)
Error de Pronóstico Out-of-Sample (MSE / MAE — 1,103 días) 0.002107 / 0.030420 0.002090 / 0.030240 Volatilidad condicional diaria proyectada al 30-Ene-2020: σ̂T+1 = 4.4608%

Fundamento Econométrico de la Reestimación 2014–2026

Seis semanas después del cierre muestral del documento original (30 de enero de 2020), el mercado experimentó el choque sistémico de liquidez de marzo de 2020 (donde BTC-USD registró un retorno logarítmico continuo de -46.47% en la sesión del 12 de marzo de 2020), seguido por el ciclo de contracción monetaria de la Reserva Federal en 2022 y un cambio estructural en la microestructura del activo: la aprobación de los ETFs Spot Institucionales por la SEC el 11 de enero de 2024. Esta actualización en Python expande la muestra a 4,425 observaciones diarias hasta el 29 de octubre de 2026, introduce la densidad Skewed Student-t de Hansen (1994), implementa el Expected Shortfall (CVaR99%) bajo normativa de Basilea III/IV (FRTB) y formaliza las reglas cuantitativas de ejecución para gestión de carteras y mesas de trading.

2. Auditoría Empírica de Transición de Régimen: De la Microestructura Retail a los ETFs Institucionales (2014–2026)

El análisis de la serie de retornos logarítmicos continuos en escala porcentual rt = 100 × ln(Pt / Pt−1) entre septiembre de 2014 y octubre de 2026 permite identificar tres regímenes de volatilidad y liquidez gobernados por cambios en la composición de los participantes del mercado:

  1. Régimen I — Microestructura Retail y Fragmentación de Liquidez (Septiembre 2014 – Enero 2020, N = 1,961 días): Etapa dominada por flujo minorista, ausencia de cámaras de compensación institucionales y amplios diferenciales bid-ask, registrando una volatilidad anualizada de 73.47% (σdiaria = 3.845%) y un cuantil empírico al 1% de -10.58%.
  2. Régimen II — Integración Macrofinanciera, Choque Pandémico y Ciclo Restrictivo Fed (Febrero 2020 – Enero 2024, N = 1,441 días): Fase de alta sensibilidad al factor de liquidez global y tasas reales de descuento, caracterizada por cascadas de liquidación en futuros perpetuos apalancados que elevaron la curtosis muestral hasta 25.55 y profundizaron la asimetría negativa hasta -1.595.
  3. Régimen III — Institucionalización vía ETFs Spot y Arbitraje de Creadores de Mercado (Enero 2024 – Octubre 2026, N = 1,023 días): La incorporación de vehículos institucionales (BlackRock IBIT, Fidelity FBTC) y la intervención sistemática de Authorized Participants (APs) mediante arbitraje continuo entre la cesta Spot y el mercado secundario de ETFs comprimieron la volatilidad anualizada hasta 46.88% (σdiaria = 2.454%), lo que representa una contracción estructural de -26.59 puntos porcentuales frente al Régimen I y de -21.09 puntos porcentuales respecto al Régimen II.
Régimen Microestructural Observaciones (N) Media Diaria (r̄) Vol. Diaria (σd) Vol. Anualizada (σa) Asimetría (Skewness) Curtosis Muestral Rango Diario (Mín / Máx) Cuantil Empírico 1%
Régimen I: Microestructura Retail (2014–2020) 1,961 +0.1547% 3.845% 73.47% -0.277 8.26 -23.76% / +22.51% -10.58%
Régimen II: Shock Macro & Fed (2020–2024) 1,441 +0.1103% 3.558% 67.97% -1.595 25.55 -46.47% / +17.18% -10.42%
Régimen III: Era ETFs Spot (2024–2026) 1,023 +0.0500% 2.454% 46.88% +0.134 6.62 -15.23% / +11.80% -6.51%
Muestra Completa Auditada (2014–2026) 4,425 +0.1161% 3.473% 66.36% -0.704 15.02 -46.47% / +22.51% -9.95%

3. Especificación Econométrica: Modelos GARCH Asimétricos, Distribución Skewed Student-t de Hansen y Expected Shortfall (CVaR)

Sea rt = 100 × ln(Pt / Pt−1) el retorno logarítmico continuo en la sesión t. Para filtrar la autocorrelación serial de primer orden inducida por fricciones de microestructura (rebote bid-ask y ejecución fraccionada de órdenes institucionales), el proceso generador de datos se descompone en una ecuación de media condicional autorregresiva AR(1) y una innovación heterocedástica multiplicativa:

rt = μ + φ1rt−1 + ϵt, ϵt = σtzt, zt ∼ i.i.d. f(0, 1; η, λ) Ec. (3.1)

donde σt2 = Var(rt ∣ ℱt−1) denota la varianza condicional respecto al conjunto de información disponible hasta el cierre previo ℱt−1 y zt = ϵt / σt representa la innovación estandarizada con esperanza nula y varianza unitaria. A continuación se formulan las tres estructuras de varianza condicional que compiten en el torneo econométrico:

3.1. Especificación GARCH Simétrica Estándar — sGARCH(1,1) (Bollerslev, 1986)

Impone una respuesta cuadrática simétrica donde las perturbaciones positivas y negativas de igual magnitud generan idéntico incremento sobre la varianza condicional futura:

σt2 = ω + α1ϵt−12 + β1σt−12, con   ω > 0,   α1 ≥ 0,   β1 ≥ 0,   α1 + β1 < 1 Ec. (3.2)

3.2. Especificación GARCH Exponencial Asimétrica — EGARCH(p,q) (Nelson, 1991)

Parametriza directamente el logaritmo natural de la varianza condicional ln(σt2), garantizando positividad estricta (σt2 > 0) en todo el espacio paramétrico sin requerir restricciones de desigualdad sobre los coeficientes y capturando conjuntamente el efecto magnitud (αi) y el efecto asimétrico direccional (γ1):

ln(σt2) = ω + p ∑ i=1 αi &Bigl( |zt−i| − 𝔼[|zt−i|] &Bigr) + γ1zt−1 + q ∑ j=1 βj ln(σt−j2) Ec. (3.3)

3.3. Especificación GJR-GARCH con Umbral Indicador (Glosten, Jagannathan & Runkle, 1993)

Incorpora una función indicadora de Heaviside 𝕀{ϵt−1 < 0} que toma valor unitario ante retornos inesperados negativos (cascadas de liquidación y ventas forzadas) y valor nulo ante sorpresas alcistas:

σt2 = ω + &Bigl( α1 + γ1𝕀{ϵt−1 < 0} &Bigr) ϵt−12 + β1σt−12 Ec. (3.4)

3.4. Densidad Skewed Student-t de Hansen (1994) para Colas Pesadas Asimétricas

Con el objetivo de modelar simultáneamente la leptocurtosis extrema y la asimetría distribucional de los residuos estandarizados zt, el estimador de Máxima Verosimilitud se maximiza bajo la densidad Skewed Student-t de Hansen, gobernada por el parámetro de grados de libertad de cola 2 < η < ∞ y el parámetro de asimetría −1 < λ < 1:

f(zt ∣ η, λ) =
bc &Biggl[ 1 + 1η − 2 &Biggl( bzt + a1 − λ &Biggr)2 &Biggr]−(η+1)/2 si   zt < −ab,
bc &Biggl[ 1 + 1η − 2 &Biggl( bzt + a1 + λ &Biggr)2 &Biggr]−(η+1)/2 si   zt ≥ −ab.
Ec. (3.5)

donde las constantes normalizadoras a, b, c vienen definidas analíticamente por c = Γ((η+1)/2) / [√(π(η−2)) Γ(η/2)], a = 4λc((η−2)/(η−1)) y b2 = 1 + 3λ2 − a2.

3.5. Valor en Riesgo Condicional (VaR) y Expected Shortfall (CVaR / ES) bajo Basilea III/IV

Conforme al estándar regulatorio Fundamental Review of the Trading Book (FRTB — Basilea III/IV), el Valor en Riesgo (VaRα,t) al nivel de significancia α ∈ {0.05, 0.01} se complementa con el Expected Shortfall (CVaRα,t), medida de riesgo coherente y subaditiva (Artzner et al., 1999) que cuantifica la esperanza matemática condicional de la pérdida dado que el retorno ha perforado el umbral del VaRα,t:

VaRα,t = μ̂t + qα(z ∣ η̂, λ̂) · σ̂t, CVaRα,t = 𝔼&Bigl[ rt ∣ rt ≤ VaRα,t &Bigr] = μ̂t + &Biggl( 1α qα(z) ∫ −∞ u · f(u ∣ η̂, λ̂) du &Biggr) σ̂t Ec. (3.6)

4. Proceso Completo de Modelado e Implementación Reproducible en Python

La arquitectura econométrica y de ejecución cuantitativa se implementó en Python 3.11 empleando las librerías arch (Kevin Sheppard, Oxford Financial Econometrics), scipy.stats, statsmodels, pandas y numpy. El script íntegro de producción se encuentra disponible para descarga directa en models/garch_var_cvar_2026.py.

Paso 4.1. Ingesta de Datos, Escalado Porcentual para Estabilidad del Hessiano y Contrastes Preliminares

import numpy as np
import pandas as pd
import yfinance as yf
from scipy import stats
from statsmodels.tsa.stattools import adfuller
from statsmodels.stats.diagnostic import acorr_ljungbox, het_arch

# 1. Descarga de serie diaria BTC-USD (Septiembre 2014 - Octubre 2026)
raw = yf.download("BTC-USD", start="2014-09-17", end="2026-10-30", auto_adjust=True, progress=False)
df = raw[["Open", "High", "Low", "Close", "Volume"]].dropna().copy()

# Retornos logarítmicos continuos en escala porcentual para condicionamiento óptimo del Hessiano MLE
df["Log_Return"] = np.log(df["Close"] / df["Close"].shift(1))
df["Pct_Return"] = df["Log_Return"] * 100.0
df = df.dropna()

# 2. Contrastes preliminares de raíz unitaria, normalidad y efecto ARCH sobre r_t (N = 4,425 días)
r = df["Pct_Return"]
adf_stat, adf_p, _, _, _, _ = adfuller(r, autolag="AIC")
jb_stat, jb_p = stats.jarque_bera(r)
arch_stat, arch_p, _, _ = het_arch(r, nlags=10)

print(f"Observaciones auditadas : {len(r)} sesiones diarias")
print(f"Test ADF Estacionariedad: Estadístico = {adf_stat:.4f} (p-valor = {adf_p:.4e})")
print(f"Test Jarque-Bera Normal : Estadístico = {jb_stat:.2f} (p-valor = {jb_p:.4e})")
print(f"Test ARCH-LM(10) Engle  : Estadístico = {arch_stat:.2f} (p-valor = {arch_p:.4e})")

Paso 4.2. Estimación por Máxima Verosimilitud (MLE) del Torneo GARCH Simétrico y Asimétrico

from arch import arch_model

# Especificación de las 5 familias competidoras con ecuación de media condicional AR(1)
specs = {
    "AR(1)-sGARCH(1,1)-Normal":   arch_model(r, mean="AR", lags=1, vol="Garch",  p=1, o=0, q=1, dist="normal"),
    "AR(1)-sGARCH(1,1)-Student":  arch_model(r, mean="AR", lags=1, vol="Garch",  p=1, o=0, q=1, dist="t"),
    "AR(1)-EGARCH(1,1)-Student":  arch_model(r, mean="AR", lags=1, vol="EGARCH", p=1, o=1, q=1, dist="t"),
    "AR(1)-EGARCH(2,1)-Skewed-t": arch_model(r, mean="AR", lags=1, vol="EGARCH", p=2, o=1, q=1, dist="skewt"),
    "AR(1)-GJR-GARCH-Skewed-t":   arch_model(r, mean="AR", lags=1, vol="Garch",  p=1, o=1, q=1, dist="skewt"),
}

fits = {}
for name, model in specs.items():
    res = model.fit(disp="off")
    fits[name] = res
    z = res.std_resid.dropna()
    lb_q2 = acorr_ljungbox(z ** 2, lags=[10], return_df=True)["lb_pvalue"].iloc[0]
    lm_p = het_arch(z, nlags=5)[1]
    print(f"{name:28s} | LogLik: {res.loglikelihood:9.2f} | AIC: {res.aic:8.2f} | BIC: {res.bic:8.2f} | Q2(10) p: {lb_q2:.4f} | ARCH-LM p: {lm_p:.4f}")

Paso 4.3. Cálculo Dinámico de VaR / Expected Shortfall (CVaR) y Contrastes de Kupiec y Christoffersen

def compute_var_cvar_and_backtest(returns_pct: pd.Series, fit_res, alpha: float = 0.01, is_normal: bool = False):
    # 1. Media condicional AR(1) y volatilidad condicional diaria sigma_t
    mu_t = fit_res.params["Const"] + fit_res.params["Pct_Return[1]"] * returns_pct.shift(1)
    sigma_t = fit_res.conditional_volatility
    z = fit_res.std_resid.dropna()

    # 2. Cuantil condicional (VaR) y esperanza condicional de cola (Expected Shortfall / CVaR)
    if is_normal:
        q_alpha = stats.norm.ppf(alpha)
        es_z = -stats.norm.pdf(q_alpha) / alpha
    else:
        q_alpha = float(np.percentile(z, alpha * 100.0))
        es_z = float(z[z <= q_alpha].mean())

    var_t = (mu_t + q_alpha * sigma_t).loc["2020-01-31":]
    cvar_t = (mu_t + es_z * sigma_t).loc["2020-01-31":]
    y_eval = returns_pct.loc["2020-01-31":]

    # 3. Secuencia de violaciones I_t = 1(r_t < VaR_t) en la ventana 2020-2026 (T = 2,464 sesiones)
    hits = (y_eval < var_t).astype(int).values
    T, N = len(hits), int(hits.sum())
    p_hat = N / T

    # Estadístico LR_uc de Kupiec (1995) ~ Chi2(1)
    lr_uc = -2.0 * ((T - N) * np.log(1 - alpha) + N * np.log(alpha) - ((T - N) * np.log(1 - p_hat) + N * np.log(p_hat)))
    p_uc = 1.0 - stats.chi2.cdf(lr_uc, df=1)

    # Estadístico LR_ind y LR_cc de Christoffersen (1998) ~ Chi2(2)
    h0, h1 = hits[:-1], hits[1:]
    n00, n01 = np.sum((h0 == 0) & (h1 == 0)), np.sum((h0 == 0) & (h1 == 1))
    n10, n11 = np.sum((h0 == 1) & (h1 == 0)), np.sum((h0 == 1) & (h1 == 1))
    pi0, pi1, pi = n01 / (n00 + n01), n11 / max(n10 + n11, 1), (n01 + n11) / (T - 1)
    ll_null = (n00 + n10) * np.log(1 - pi) + (n01 + n11) * np.log(pi)
    ll_alt = n00 * np.log(1 - pi0) + n01 * np.log(pi0) + n10 * np.log(max(1 - pi1, 1e-12)) + n11 * np.log(max(pi1, 1e-12))
    lr_ind = max(0.0, -2.0 * (ll_null - ll_alt))
    lr_cc = lr_uc + lr_ind
    p_cc = 1.0 - stats.chi2.cdf(lr_cc, df=2)

    return var_t, cvar_t, {"N": N, "T": T, "rate": p_hat * 100, "lr_uc": lr_uc, "p_uc": p_uc, "lr_cc": lr_cc, "p_cc": p_cc}

Paso 4.4. Motor de Ejecución Cuantitativa: Volatility Targeting, Position Sizing, Stop-Loss y Apalancamiento

def compute_trading_execution_signals(
    sigma_daily_pct: pd.Series,
    var_99_pct: pd.Series,
    cvar_99_pct: pd.Series,
    equity_usd: float = 1_000_000.0,
    target_vol_ann_pct: float = 20.0,
    max_tail_risk_budget_usd: float = 25_000.0,
    maint_margin: float = 0.005,
    safety_kappa: float = 3.0,
) -> pd.DataFrame:
    sigma_ann_pct = sigma_daily_pct * np.sqrt(365.0)
    cvar_dec = (cvar_99_pct.abs() / 100.0).clip(lower=1e-4)

    signals = pd.DataFrame(index=sigma_daily_pct.index)
    # 1. Ponderación óptima por Volatility Targeting: w_t = min(1.0, sigma_target / sigma_anual_t)
    signals["Weight_VolTarget"] = (target_vol_ann_pct / sigma_ann_pct).clip(upper=1.0)
    signals["Notional_VolTarget_USD"] = signals["Weight_VolTarget"] * equity_usd

    # 2. Exposición máxima permitida por Presupuesto de Riesgo de Cola (Expected Shortfall 99%)
    signals["Max_Notional_CVaR_Budget_USD"] = max_tail_risk_budget_usd / cvar_dec

    # 3. Stop-Loss dinámico condicional al 99% de confianza (filtrado de ruido estocástico)
    signals["Adaptive_StopLoss_99_Pct"] = var_99_pct

    # 4. Apalancamiento institucional máximo seguro en perpetuos/futuros sin riesgo de cascada
    signals["Max_Safe_Leverage_x"] = (1.0 - maint_margin) / (safety_kappa * cvar_dec)
    return signals

5. Laboratorio Visual Interactivo: Gráficos Dinámicos de Última Generación (2014–2026)

Las cinco visualizaciones interactivas que se presentan a continuación han sido compiladas directamente a partir de las series condicionales estimadas sobre las 4,425 observaciones diarias de BTC-USD (2014–2026). Utilice los selectores superiores de cada módulo y las herramientas de inspección de Plotly para evaluar regímenes de volatilidad, excedencias de Valor en Riesgo, asimetría en la curva de impacto de noticias y proyecciones estocásticas.

Gráfico Dinámico 1. Evolución de la Volatilidad Condicional y Transición de Régimen hacia los ETFs Spot (2014–2026)

Comparación entre AR(1)-EGARCH(2,1) Skewed-t, GJR-GARCH(1,1,1) y sGARCH(1,1) Normal con quiebres estructurales identificados

Gráfico Dinámico 2. Backtesting Institucional de Valor en Riesgo (VaR 99%) y Expected Shortfall (CVaR 99%, 2020–2026)

Evaluación fuera de la muestra original (2,464 sesiones): 21 excedencias en EGARCH(2,1) Skewed-t (0.852%, Zona Verde) frente a 41 en sGARCH Normal

Gráfico Dinámico 3. Curva de Impacto de Noticias (News Impact Curve — NIC)

Respuesta diferencial de la volatilidad condicional σt ante choques estandarizados negativos (zt−1 < 0) frente a choques positivos (zt−1 > 0)

Gráfico Dinámico 4. Ajuste de Densidad Empírica y Leptocurtosis de los Residuos Estandarizados (zt)

Contraste entre la densidad Gaussiana N(0,1) y la distribución Skewed Student-t de Hansen (η̂ = 2.770) en la región central y en las colas extremas

Gráfico Dinámico 5. Cono de Volatilidad Bootstrap Forward-Looking a 90 Días (Octubre 2026 – Enero 2027)

5,000 trayectorias simuladas mediante remuestreo de innovaciones estandarizadas (Mediana, IC 50% e IC 90%) y reversión al equilibrio estacionario

6. Interpretación Econométrica y Microestructural del Modelo Óptimo AR(1)-EGARCH(2,1) Skewed-t

La especificación que minimiza el Criterio de Información de Akaike (AIC = 21,553.06) y maximiza la función de Log-Verosimilitud (ℓ = −10,767.53) sobre las 4,425 sesiones de BTC-USD es el proceso AR(1)-EGARCH(2,1) con innovaciones Skewed Student-t de Hansen. En la Tabla 6.1 se reportan los nueve parámetros estimados por Cuasi-Máxima Verosimilitud (QMLE), junto con sus errores estándar asintóticos, estadísticos t, p-valores y su interpretación económica dentro de la microestructura del mercado de criptoactivos:

Parámetro Símbolo Estimador MLE Error Estándar Estadístico t p-valor Interpretación Econométrica y de Microestructura de Mercado
Intercepto Media μ̂ +0.099776 0.006597 +15.1246 < 0.0001 Drift diario condicional (+0.100% por sesión, equivalente a +36.4% anualizado continuo)
Coeficiente AR(1) φ̂1 −0.052091 0.001294 −40.2462 < 0.0001 Autocorrelación serial negativa (-5.21%): reversión a la media de corto plazo por rebote bid-ask y arbitraje de liquidez
Constante Log-Varianza ω̂ +0.065020 0.016404 +3.9637 0.0001 Intercepto de la ecuación exponencial que fija el nivel estacionario de varianza incondicional
Magnitud ARCH Rezago 1 α̂1 +0.369621 0.043957 +8.4087 < 0.0001 Elasticidad inmediata de impacto: expansión aguda de ln(σt2) en t+1 ante sorpresas |zt−1| > 𝔼[|z|]
Magnitud ARCH Rezago 2 α̂2 −0.158027 0.043672 −3.6185 0.0003 Amortiguamiento oscilatorio en t+2: absorción institucional del libro de órdenes tras el choque inicial (efecto neto +0.2116)
Asimetría Direccional γ̂1 +0.022411 0.011107 +2.0177 0.0436 Componente direccional sobre el signo de zt−1; compresión estructural frente a 2020 por simetrización del flujo vía ETFs
Persistencia Log-GARCH β̂1 +0.991357 0.003956 +250.6024 < 0.0001 Memoria autorregresiva estacionaria (β̂1 < 1) con Vida Media (Half-Life) de 79.9 sesiones
Grados de Libertad Cola η̂ +2.769501 0.130522 +21.2186 < 0.0001 Leptocurtosis severa (2 < η̂ < 4): varianza finita con cuarto momento infinito y colas pesadas hiperbólicas
Asimetría de Cola Hansen λ̂ −0.006980 0.012627 −0.5528 0.5804 Sesgo residual izquierdo leve en las innovaciones estandarizadas una vez filtrada la heterocedasticidad

6.1. Lectura Económica de la Ecuación Estimada y Vida Media del Choque (Half-Life)

Sustituyendo los estimadores puntuales de Máxima Verosimilitud en la formulación AR(1)-EGARCH(2,1) de las Ecuaciones (3.1) y (3.3), el sistema dinámico que gobierna el retorno y el riesgo diario del Bitcoin queda completamente determinado por:

r̂t = 0.0998 − 0.0521rt−1 + ϵt,   ln(σ̂t2) = 0.0650 + 0.3696 g(zt−1) − 0.1580 &Bigl(|zt−2| − 𝔼[|z|]&Bigr) + 0.0224zt−1 + 0.9914 ln(σ̂t−12)

De esta parametrización se desprenden cuatro leyes empíricas fundamentales para la mesa de dinero y el gestor cuantitativo:

  1. Reversión a la Media de Corto Plazo en Retornos (φ̂1 = −0.0521, t = −40.25): El signo negativo y estadísticamente significativo del término autorregresivo indica que aproximadamente el 5.21% de cualquier impulso direccional diario se corrige en la sesión inmediata siguiente. En la microestructura de libros de órdenes electrónicos (Central Limit Order Books), este fenómeno obedece a la reposición de liquidez por parte de creadores de mercado (market makers) y a la toma táctica de beneficios tras barridos agresivos de liquidez.
  2. Estructura de Impacto de Dos Rezagos (α̂1 = +0.3696 vs. α̂2 = −0.1580): A diferencia de un modelo EGARCH(1,1) convencional, la inclusión del segundo rezago captura una dinámica de sobrerreacción y amortiguamiento. Cuando ocurre un choque de magnitud superior a lo normal en t−1, la log-varianza se expande con una elasticidad de +0.3696; sin embargo, en la sesión t−2 opera un coeficiente corrector de −0.1580 que frena el crecimiento exponencial descontrolado de la volatilidad a medida que los participantes institucionales arbitran la dislocación inicial, dejando un efecto multiplicador neto de α̂1 + α̂2 = +0.2116.
  3. Persistencia Autorregresiva (β̂1 = 0.991357) y Cálculo de la Vida Media del Choque (Volatility Half-Life): Dado que |β̂1| = 0.991357 < 1, el proceso log-varianza es estrictamente estacionario en covarianza y converge hacia una volatilidad incondicional de equilibrio. La velocidad de disipación de un choque de volatilidad se cuantifica mediante la Vida Media (Half-Life), definida como el número de sesiones bursátiles necesarias para que el exceso de log-varianza se reduzca exactamente al 50%:
    Half-Life = ln(0.5)ln(β̂1) = −0.693147ln(0.991357) = −0.693147−0.008681 = 79.85 ≈ 79.9 sesiones diarias Ec. (6.1)
    En términos operativos, tras un evento de estrés macrofinanciero o desapalancamiento masivo en derivados, el mercado de Bitcoin requiere aproximadamente 80 días calendario (~2.6 meses) para absorber la mitad de la perturbación de volatilidad.
  4. Índice de Cola de Hansen (η̂ = 2.7695) y Validación Diagnóstica de Residuos: El parámetro de forma η̂ = 2.770 (t = 21.22) demuestra estadísticamente el rechazo absoluto de la normalidad (η → ∞). Al situarse en el intervalo (2, 4), la distribución condicional posee varianza finita pero curtosis teórica divergente, asignando la masa de probabilidad exacta a eventos extremos de ±4σ a ±6σ. Finalmente, los contrastes diagnósticos sobre los residuos estandarizados ẑt = ϵ̂t / σ̂t confirman que el filtro EGARCH(2,1) absorbe satisfactoriamente la dependencia de segundo orden: el estadístico de Ljung-Box sobre residuos al cuadrado Q2(10) arroja un p-valor de 0.6924 y el contraste ARCH-LM(5) de Engle registra p = 0.2960, no rechazándose la hipótesis nula de homocedasticidad e independencia condicional.

7. Aplicaciones Operativas para el Inversor Institucional, Trading Cuantitativo y Gestión de Riesgo de Tesorería

Un modelo econométrico de volatilidad condicional no constituye un ejercicio meramente descriptivo; en la gestión cuantitativa de carteras y en las mesas de ejecución (Quantitative Trading Desks), las series diarias pronosticadas σ̂t+1∣t, VaR99%,t+1 y CVaR99%,t+1 funcionan como insumos directos de control de capital, dimensionamiento de órdenes, calibración de niveles de invalidación (stop-loss) y arbitraje de derivados. A continuación se formalizan las cinco aplicaciones operativas del modelo tomando como referencia empírica el cierre del 29 de octubre de 2026 (σ̂diaria = 1.863%, σ̂anual = 35.59%, VaR99% = −4.600% y CVaR99% = −6.961%):

7.1. Volatility Targeting y Position Sizing Dinámico

En lugar de mantener una asignación estática de capital que expone el portafolio a fluctuaciones abruptas de varianza, el inversor institucional ajusta diariamente el peso porcentual asignado al activo (wt) de forma inversamente proporcional a la volatilidad condicional pronosticada por el modelo EGARCH(2,1) para mantener constante una volatilidad objetivo anualizada (σtarget):

wt = min&Biggl( wmáx,   σtargetσ̂t∣t−1 · √365 &Biggr)

Ejecución Numérica (29-Oct-2026): Para un mandato con volatilidad objetivo σtarget = 20.0% anual sobre un capital de $1,000,000 USD, dado que el pronóstico actual es σ̂anual = 35.59%, la ponderación óptima es wt = 20.0% / 35.59% = 56.20% ($561,961 USD), manteniendo el 43.80% restante en activos libres de riesgo (T-Bills). Si un choque exógeno eleva σ̂anual a 80.0%, el algoritmo reduce automáticamente la exposición a 25.0% ($250,000 USD), estabilizando el ratio de Sharpe y conteniendo el Maximum Drawdown.

7.2. Presupuesto de Riesgo Diario (Risk Budgeting vía CVaR99%)

Los comités de riesgo de tesorería y fondos multi-strategy establecen un límite monetario máximo admisible de pérdida diaria en escenarios de cola (Lmáx). Empleando el Expected Shortfall (CVaR99%,t) del modelo EGARCH(2,1)-Skewed-t, el nocional máximo autorizado en libros (Emáx,t) se determina por:

Emáx,t = Lmáx|CVaR99%,t| = Patrimonio × δriesgo|μ̂t + 𝔼[z ∣ z ≤ q0.01]σ̂t|

Ejecución Numérica (29-Oct-2026): Si una tesorería corporativa con patrimonio de $1,000,000 USD fija una tolerancia máxima de pérdida en evento extremo del 1% de Lmáx = $25,000 USD diarios (δriesgo = 2.50% del capital), con un CVaR99% = −6.961%, el límite estricto de exposición nominal hoy es Emáx = $25,000 / 0.06961 = $359,144 USD.

7.3. Calibración de Stop-Loss Dinámicos y Filtrado de Ruido

En series financieras con heterocedasticidad condicional (ARCH-LM p < 0.0001), los stop-loss porcentuales fijos (ej. -3%) resultan subóptimos: en regímenes de alta volatilidad son ejecutados prematuramente por ruido estocástico intradiario, mientras que en regímenes de compresión otorgan un margen excesivo antes de reconocer el quiebre de tendencia. El umbral óptimo de invalidación estadística al nivel 1 − α se calibra con el cuantil condicional Skewed-t:

PStop,t+1 = Pt × exp&Biggl( VaRα,t+1100 &Biggr) = Pt × exp&Biggl( μ̂t+1 + qα(z)σ̂t+1100 &Biggr)

Ejecución Numérica (29-Oct-2026): Al 95% de confianza (VaR95%), el stop-loss táctico para operaciones de swing trading se sitúa en -2.785% desde el cierre; al 99% de confianza institucional (VaR99%), se ubica en -4.600%. Una perforación de este nivel confirma con 99% de probabilidad estadística que el movimiento no es ruido gaussiano sino un cambio de flujo direccional.

7.4. Control de Apalancamiento en Futuros Perpetuos y Margen

En la operatoria con contratos futuros y perpetuos (CME, Deribit, Binance Institutional), el riesgo crítico es la liquidación forzosa ante un evento de cola. Definiendo mmant como la tasa de margen de mantenimiento (típicamente 0.50%) y κ ≥ 3 como el factor institucional de cobertura frente a pérdidas extremas consecutivas, el apalancamiento efectivo máximo (Lmáx,t) se acota mediante:

Apalancamientomáx,t = 1 − mmantκ · |CVaR99%,t|

Ejecución Numérica (29-Oct-2026): Con |CVaR99%| = 0.06961 y mmant = 0.005, el apalancamiento de liquidación teórica en una sola sesión extrema es 14.29×; aplicando el factor prudencial institucional κ = 3, el apalancamiento máximo seguro hoy es 4.76×, debiendo reducirse por debajo de 1.80× cuando la volatilidad anualizada supere el umbral del 80%.

7.5. Arbitraje de Volatilidad con Opciones Financieras (EGARCH Bootstrap Cone vs. Volatilidad Implícita DVOL / IBIT)

El quinto uso estratégico para mesas de derivados consiste en contrastar la estructura temporal de volatilidad proyectada por el Cono Bootstrap a 90 días del modelo AR(1)-EGARCH(2,1) (Gráfico Dinámico 5) frente a la Volatilidad Implícita (σIV) cotizada en las cadenas de opciones sobre ETFs Spot (IBIT) y en el índice de volatilidad implícita a 30 días (Deribit DVOL):

  • Estrategia Long Volatility / Compra de Convexidad (σIV < P25(σ̂EGARCH)): Cuando el mercado atraviesa una fase de compresión extrema (como el cierre actual de 35.59% anualizado, inferior al promedio del Régimen III de 46.88%) y la mediana del Cono Bootstrap proyecta una reversión gradual hacia 49.79% en 90 días, si las opciones cotizan con volatilidad implícita deprimida, el operador estructura posiciones Long Vega y Long Gamma (Long Straddles, Long Strangles o Calendar Spreads), adquiriendo convexidad barata antes de la expansión hacia la media estacionaria.
  • Estrategia Short Volatility / Captura de Prima de Varianza (σIV > P90(σ̂EGARCH)): Inmediatamente después de un choque de liquidación donde la volatilidad condicional supera el percentil 90% del cono (>75%–90% anualizado), la propiedad de estacionariedad (β̂1 = 0.9914, Half-Life = 79.9 días) y el término amortiguador α̂2 = −0.1580 predicen una reversión sistemática de la varianza. En ese entorno, el gestor vende volatilidad sobrepreciada mediante estructuras de riesgo definido (Iron Condors, Credit Put Spreads o programas de Covered Calls sobre tenencias Spot), cosechando el Variance Risk Premium (VRP).

7.6. Matriz Operativa de Decisión Cuantitativa por Régimen de Volatilidad Condicional

En la Tabla 7.1 se sintetiza el protocolo parametrizado de actuación para un portafolio institucional de $1,000,000 USD (con objetivo de volatilidad σtarget = 20% anual y presupuesto diario de cola Lmáx = $25,000 USD) en función del nivel de volatilidad condicional registrado por el filtro AR(1)-EGARCH(2,1) Skewed-t:

Régimen Condicional EGARCH(2,1) Umbral σ̂anual (σ̂diaria) Peso Óptimo (wt) Stop-Loss Condicional (VaR99%) CVaR99% Diario Apalancamiento Máx (κ=3) Estrategia Óptima en Derivados y Opciones
1. Compresión Institucional [Estado Actual 29-Oct-2026] < 40% (Actual: 35.59% / 1.86% d) 50.0% – 56.2% ($561,961) −4.60% −6.96% ($69.6k/M) 4.76× Sobreponderar Spot + Compra de convexidad (Long Strangles / OTM Calls) por reversión alcista de σt
2. Equilibrio Era ETFs Spot 40% – 60% (2.09% – 3.14% d) 33.3% – 50.0% ($426,000) −5.20% a −7.80% −7.85% a −11.75% 2.82× – 4.22× Asignación neutral direccional + Collar sistemático o venta táctica de Covered Calls a 30–45 DTE
3. Expansión / Turbulencia Macro 60% – 85% (3.14% – 4.45% d) 23.5% – 33.3% ($275,000) −7.80% a −11.10% −11.75% a −16.65% 1.99× – 2.82× Reducción automática de nocional + Cobertura Delta-Neutral en futuros CME y captura de Funding Rate
4. Estrés Extremo / Cascada de Liquidación > 85% (> 4.45% d) < 23.5% (≤ $200,000) < −11.10% < −16.65% (>$166k/M) ≤ 1.00× (Sin Deuda) Desapalancamiento total a Spot puro + Venta de volatilidad implícita extrema (Short Vega con riesgo definido)

8. Torneo Econométrico MLE, Backtesting Regulatorio de Kupiec y Christoffersen y Síntesis

En la Tabla 8.1 se consolidan los resultados del torneo econométrico por Máxima Verosimilitud (MLE), los criterios de selección de información (AIC y BIC) y los contrastes de especificación sobre los residuos estandarizados para las cinco estructuras competitivas evaluadas sobre las 4,425 sesiones diarias (2014–2026):

Especificación Econométrica Distribución Log-Verosimilitud Criterio AIC Criterio BIC Persistencia (β̂1) Cola (ν̂ / η̂) Ljung-Box Q2(10) ARCH-LM(5) p-val
1. AR(1)-EGARCH(2,1) [Óptimo 2026] Hansen Skewed-t −10,767.53 21,553.06 21,610.61 0.9914 2.770 p = 0.6924 p = 0.2960
2. AR(1)-EGARCH(1,1) Student-t −10,774.69 21,563.37 21,608.14 0.9874 2.744 p = 0.8092 p = 0.4124
3. AR(1)-GJR-GARCH(1,1,1) Hansen Skewed-t −10,800.40 21,616.80 21,667.96 0.8991 3.149 p = 0.8963 p = 0.6324
4. AR(1)-sGARCH(1,1) Student-t −10,800.96 21,613.91 21,652.28 0.8958 3.141 p = 0.8962 p = 0.6323
5. AR(1)-sGARCH(1,1) [Línea Base] Normal Gaussiana −11,352.17 22,714.34 22,746.31 0.8433 ∞ p = 0.8904 p = 0.5978

Asimismo, en la Tabla 8.2 se detallan las pruebas de Backtesting Regulatorio de Valor en Riesgo (VaR99%) y el requerimiento diario de reserva de liquidez bajo Expected Shortfall (CVaR99%) para una posición institucional de $1,000,000.00 USD en la ventana posterior al estudio original (31 de enero de 2020 al 29 de octubre de 2026, T = 2,464 sesiones):

Modelo Auditado (2020–2026) Violaciones VaR 99% (Esp: 24.6) Tasa Empírica 99% Test Kupiec LRuc (p-val) Christoffersen LRcc (p-val) VaR 99% (29-Oct-2026) CVaR 99% / ES ($1M USD) Dictamen Basilea III/IV
AR(1)-EGARCH(2,1) Skewed-t 21 / 2,464 0.852% 0.572 (p = 0.4496) 2.436 (p = 0.2958) −4.600% ($46,000) −6.961% ($69,610) Aprobado • Zona Verde
AR(1)-GJR-GARCH(1,1,1) Skewed-t 19 / 2,464 0.771% 1.416 (p = 0.2341) 3.628 (p = 0.1630) −5.052% ($50,520) −7.458% ($74,580) Aprobado • Zona Verde
AR(1)-EGARCH(1,1) Student-t 18 / 2,464 0.731% 1.994 (p = 0.1579) 4.400 (p = 0.1108) −4.726% ($47,260) −7.153% ($71,530) Aprobado • Zona Verde
AR(1)-sGARCH(1,1) Student-t 19 / 2,464 0.771% 1.416 (p = 0.2341) 3.628 (p = 0.1630) −5.127% ($51,270) −7.463% ($74,630) Aprobado • Zona Verde
AR(1)-sGARCH(1,1) Normal 41 / 2,464 1.664% 9.144 (p = 0.0025) 9.278 (p = 0.0097) −4.640% ($46,400) −5.336% ($53,360) Rechazado (p < 0.01)

Síntesis: Optimalidad Econométrica, Cobertura de Cola y Ejecución Sistemática

1. Superioridad Estadística de la Estructura AR(1)-EGARCH(2,1) con Densidad Skewed Student-t (2020 → 2026): Al extender la ventana muestral desde las 1,961 observaciones originales de enero de 2020 hasta las 4,425 sesiones diarias de octubre de 2026, la especificación AR(1)-EGARCH(2,1) bajo distribución Skewed Student-t de Hansen (η̂ = 2.770, β̂1 = 0.9914) alcanza la optimalidad global con un AIC de 21,553.06, incrementando el soporte de Log-Verosimilitud en +584.64 puntos respecto al modelo Gaussiano tradicional y capturando tanto el amortiguamiento oscilatorio de segundo orden (α̂2 = −0.1580) como la vida media de los choques de volatilidad (79.9 sesiones).

2. Rechazo del Supuesto Gaussiano y Operacionalización del Expected Shortfall (CVaR99%): El test de cobertura incondicional de Kupiec (LRuc = 9.144, p = 0.0025) y el contraste conjunto de independencia y cobertura condicional de Christoffersen (LRcc = 9.278, p = 0.0097) rechazan al 1% de significancia el modelo sGARCH-Normal (41 excedencias frente a 24.6 esperadas). Por el contrario, el modelo EGARCH(2,1)-Skewed-t registra 21 violaciones (0.852%, p = 0.4496) en Zona Verde de Basilea, proporcionando a las mesas de trading cuantitativo y tesorería un motor riguroso para ejecutar Volatility Targeting (56.20% de asignación actual), Stop-Loss condicionales (-4.600%), límites de apalancamiento (4.76×) y reservas de liquidez sobre el Expected Shortfall diario de -6.961% ($69,610 USD por cada $1,000,000 USD de nocional).




Por:
Jesús Benjamín Zerpa
Economista
JesusZerpaEconomia@Gmail.Com
Publicado: Octubre de 2026


Modelización de Volatilidad Asimétrica GARCH, VaR y CVaR en Python - Licencia Creative Commons 4.0 Excepto donde se indique lo contrario, el contenido de esta obra está bajo una licencia de Creative Commons Reconocimiento 4.0 Internacional.


Sigue explorando

Otros Trabajos del Portafolio

Comentarios y Discusión Técnica
Comunidad Cuantitativa
Cargando comentarios de la comunidad...