Energy Select Sector SPDR Fund (validación fuera de muestra y medición de riesgo)
| Campo | Valor |
|---|---|
| Activo | Energy Select Sector SPDR Fund (ticker XLE) |
| Mercado y moneda | NYSE Arca, dólares estadounidenses (USD) |
| Fuente | Yahoo Finance (precios ajustados por dividendos), Cboe (VIX) y FRED (T-bill a 3 meses, WTI) |
| Frecuencia | Diaria (días hábiles bursátiles) |
| Ventana total | 04/01/2018 a 31/12/2025 (2.009 retornos) |
| Entrenamiento (Train) | 04/01/2018 a 16/10/2024 (1.707 obs.) |
| Evaluación (Test) | 17/10/2024 a 31/12/2025 (302 obs.) |
| Capital inicial | USD 100.000 |
| Modelo final | ARIMA(1,0,1) |
| Regla operativa | Largo en XLE al cierre de t-1 si el pronóstico a un paso supera la tasa libre de riesgo diaria más 5 pb; en caso contrario, liquidez remunerada a la tasa del T-bill |
| Costos | 5 pb por lado (sensibilidad de 0 a 20 pb) |
| Indicador | Valor |
|---|---|
| Modelo final | ARIMA(1,0,1) |
| U de Theil frente al paseo aleatorio (RMSE) | 0,9996 |
| p-valor Diebold-Mariano vs. paseo aleatorio | 0,960 |
| Capital final estrategia ARIMA (neto) | USD 106.285 |
| Capital final Buy & Hold (neto) | USD 103.192 |
| Máx. drawdown estrategia / Buy & Hold | -11,0% / -20,1% |
| Probabilidad de pérdida al horizonte (FHS) | 38,0% |
| VaR 99% a un día en T0 (FHS) | USD 4.181 |
El modelo no mejora de forma estadísticamente significativa al paseo aleatorio: fuera de muestra, los retornos de XLE se comportan como una martingala, en línea con la eficiencia débil. La estrategia termina con USD 106.285, por encima del Buy & Hold (USD 103.192) y de la liquidez (USD 104.957). Sin respaldo de la prueba de Pesaran-Timmermann, esa diferencia no debe tomarse como una ventaja replicable. El aporte operativo del análisis está en la gestión del riesgo: los intervalos con volatilidad GARCH se calibran mejor que los de varianza constante. Recomendación: no usar la media ARIMA como generador de señales; si el modelo se usa, que sea para dimensionar la exposición según la volatilidad pronosticada.
XLE es un ETF que replica el Energy Select Sector Index, el subconjunto energético del S&P 500. Su cartera concentra integradas, exploración y producción, refinación y servicios petroleros. La concentración es alta: Exxon Mobil y Chevron suelen pesar en conjunto cerca de dos quintos del fondo, de modo que XLE se comporta como una apuesta apalancada sobre el precio del crudo y los márgenes de refinación más que como una cesta diversificada.
Su papel macroeconómico se entiende desde tres canales:
Para la modelación esto implica colas pesadas, agrupamiento de volatilidad y cambios de régimen: los hechos estilizados que documenta Cont (2001) aparecen aquí con especial intensidad.
| Episodio | Inicio | Fin | Muestra | Retorno XLE | Vol. anualizada | Vol. / vol. Train | VIX máx. |
|---|---|---|---|---|---|---|---|
| T4-2018: sobreoferta y caída del crudo | 03/10/2018 | 24/12/2018 | Train | -29,3% | 26,5% | 0,80 | 36,1 |
| COVID-19 y guerra de precios Arabia-Rusia | 20/02/2020 | 30/04/2020 | Train | -29,2% | 107,6% | 3,23 | 82,7 |
| Invasión rusa de Ucrania | 24/02/2022 | 30/06/2022 | Train | 7,9% | 40,4% | 1,22 | 36,5 |
| Recorte voluntario sorpresa de la OPEP+ | 03/04/2023 | 28/04/2023 | Train | 2,8% | 24,3% | 0,73 | 19,1 |
| Anuncio arancelario de EE. UU. y OPEP+ | 02/04/2025 | 30/04/2025 | Test | -14,4% | 62,1% | 1,87 | 52,3 |
Los episodios seleccionados cubren las tres fuentes de choque descritas arriba:
Sea \(\ell_t = \ln P_t\) el logaritmo del precio ajustado, \(r_t = 100\,(\ell_t - \ell_{t-1})\) el retorno logarítmico en porcentaje, \(r^f_t\) la tasa libre de riesgo diaria y \(\mathcal{F}_{t-1}\) la información disponible al cierre de \(t-1\). Se plantean dos hipótesis, una estadística y otra económica.
Hipótesis estadística (forma débil de eficiencia, Fama, 1970):
\[ H_0^{(1)}: \; E[r_t \mid \mathcal{F}_{t-1}] = \mu \qquad \text{vs.} \qquad H_1^{(1)}: \; E[r_t \mid \mathcal{F}_{t-1}] = f(\mathcal{F}_{t-1}) \text{ no constante.} \]
Bajo \(H_0^{(1)}\) la innovación \(r_t - \mu\) es una diferencia de martingala: el log-precio sigue un paseo aleatorio con deriva \(\mu\) y ningún ARMA mejora al paseo aleatorio fuera de muestra.
Hipótesis económica con la regla de decisión:
\[ s_t = \mathbf{1}\left\{\hat r_{t\mid t-1} > 100\, r^f_t + \kappa \right\}, \qquad \kappa = 0{,}05\%, \]
donde \(\mathbf{1}\{\cdot\}\) es la función indicadora, \(s_t = 1\) indica posición larga, \(s_t = 0\) liquidez remunerada y \(\kappa\) es el costo por operación expresado en puntos porcentuales. Se contrasta
\[ H_0^{(2)}: \; E\!\left[R^{\text{est}}_{\text{neta}}\right] \le E\!\left[R^{\text{BH}}_{\text{neta}}\right], \]
donde “est” denota la estrategia y “BH” la posición Buy & Hold. Solo si el modelo rechaza \(H_0^{(1)}\) con un margen que sobreviva a los costos tiene sentido rechazar \(H_0^{(2)}\). La literatura sobre predictibilidad de retornos anticipa que ese margen será pequeño o nulo (Welch y Goyal, 2008), y por eso el paseo aleatorio es el punto de referencia obligado (Meese y Rogoff, 1983).
Los datos provienen de un snapshot local (datos/xle_vix_tbill_2018_2025.csv). La tabla siguiente resume los controles de integridad.
| Variable | NA en crudo | NA tras tratamiento |
|---|---|---|
| xle_adj | 0 | 0 |
| xle_close | 0 | 0 |
| xle_vol | 0 | 0 |
| vix | 0 | 0 |
| dtb3 | 15 | 0 |
| wti | 13 | 0 |
| Brecha entre fechas | Frecuencia |
|---|---|
| 1 día | 1.568 |
| 2-3 días (fin de semana) | 387 |
| 4 días (festivo) | 53 |
| > 4 días | 0 |
| 2018 | 2019 | 2020 | 2021 | 2022 | 2023 | 2024 | 2025 |
|---|---|---|---|---|---|---|---|
| 249 | 252 | 253 | 252 | 251 | 250 | 252 | 250 |
No hay brechas mayores a las que explican fines de semana y festivos: la serie es continua en el calendario bursátil. El cociente entre precio de cierre y precio ajustado va de 1,020 a 1,445: el ajuste incorpora los dividendos reinvertidos, de modo que \(r_t\) mide el retorno total, que es lo que recibe el inversionista.
| Frecuencia | Observaciones | Curtosis | p-valor LB(10) en r² |
|---|---|---|---|
| Diaria | 1.707 | 17,95 | < 0,001 |
| Semanal | 355 | 8,91 | < 0,001 |
La frecuencia diaria se elige por tres razones. Primero, multiplica por cinco el tamaño muestral (1.707 frente a 355 observaciones), lo que da precisión a la estimación GARCH y a los cuantiles extremos del VaR. Segundo, la agregación semanal atenúa la curtosis y la dependencia en varianza (compárense las columnas), es decir, esconde justo la estructura de riesgo que el informe necesita medir. Tercero, la regla operativa decide posiciones día a día, y el horizonte del modelo debe coincidir con el horizonte de la decisión. El costo es más ruido microestructural, que se compensa con el tratamiento explícito de costos en la Sección 8.
La transformación de Box y Cox (1964) se define como
\[ P_t^{(\lambda)} = \begin{cases} \dfrac{P_t^{\lambda} - 1}{\lambda}, & \lambda \neq 0, \\[6pt] \ln P_t, & \lambda = 0, \end{cases} \]
y solo admite valores positivos, por lo que se aplica sobre precios y no sobre retornos. Se usan tres evidencias, todas calculadas exclusivamente con Train:
| Evidencia | Valor |
|---|---|
| λ de Guerrero (bloques de 21) | 1,069 |
| λ por perfil de verosimilitud | 1,400 |
| λ = 1 - b (regresión media-dispersión) | 0,600 |
| IC 95% de λ (regresión) | [0,365 ; 0,836] |
| p-valor H0: λ = 0 (logaritmo) | < 0,001 |
| p-valor H0: λ = 1 (niveles) | 0,001 |
| Correlación entre abs(ΔP) y P(t-1) | 0,163 |
| Correlación entre abs(r) y P(t-1) | -0,226 |
La regresión media-dispersión rechaza \(\lambda = 0\) (p < 0,001; IC 95%: [0,36 ; 0,84]) y sí rechaza \(\lambda = 1\) (p = 0,001). Los estimadores de Guerrero (1,07) y de verosimilitud (1,40) difieren de forma apreciable. Esa inestabilidad es habitual en precios de activos: los quiebres de nivel de 2020 y 2022 y el efecto apalancamiento (la volatilidad sube cuando el precio cae) contaminan la relación entre nivel y dispersión que Box-Cox supone. La evidencia formal no respalda el logaritmo de forma limpia; su adopción descansa en los argumentos económicos que siguen. La correlación entre la magnitud del cambio y el nivel previo pasa de 0,16 en cambios en dólares a -0,23 en retornos logarítmicos: el logaritmo elimina la mayor parte de la dependencia de escala, aunque no la heterocedasticidad condicional, que se trata con GARCH en la Sección 6.
La decisión final de trabajar con \(r_t = 100\,\Delta \ln P_t\) descansa además en argumentos económicos que no dependen de la muestra:
| Estadístico | Train | Test |
|---|---|---|
| Obs | 1.707 | 302 |
| Media diaria (%) | 0,029 | 0,011 |
| Desv. est. diaria (%) | 2,097 | 1,494 |
| Media anualizada (%) | 7,353 | 2,705 |
| Vol. anualizada (%) | 33,285 | 23,720 |
| Asimetría | -0,911 | -1,407 |
| Curtosis | 17,948 | 13,404 |
| Mínimo (%) | -22,491 | -9,651 |
| Máximo (%) | 14,874 | 7,459 |
La prima por riesgo diaria media en Train es 0,0421% (equivalente anual aproximado: 10,6%), con estadístico \(t\) = 0,84 (p = 0,202, unilateral). Con la volatilidad del sector, ocho años no bastan para distinguir la prima de cero: incluso la premisa de un Buy & Hold rentable es estadísticamente frágil. La curtosis de 17,9 (frente a 3 en la normal) anticipa colas pesadas en los residuos.
El operador de rezagos \(L\) actúa como \(L y_t = y_{t-1}\) y, en general, \(L^k y_t = y_{t-k}\). Con él se definen:
\[ \Phi(L) = 1 - \phi_1 L - \phi_2 L^2 - \cdots - \phi_p L^p, \qquad \Theta(L) = 1 + \theta_1 L + \theta_2 L^2 + \cdots + \theta_q L^q, \]
y el operador diferencia \(\Delta^d = (1 - L)^d\). Para \(d = 1\), \((1-L)\,\ell_t = \ell_t - \ell_{t-1}\), que multiplicado por 100 es el retorno \(r_t\). Se sigue la convención de signos de R: el polinomio de medias móviles lleva signo positivo.
La formulación sigue a Box et al. (2015) y, para series financieras, a Tsay (2010).
\[ \Phi(L)\,(1-L)^d\, y_t = c + \Theta(L)\,\varepsilon_t, \qquad \varepsilon_t \sim \text{RB}(0, \sigma^2), \]
donde \(\text{RB}(0,\sigma^2)\) denota ruido blanco con media cero y varianza \(\sigma^2\). Aplicado a \(y_t = 100\, \ell_t\) con \(d = 1\), el modelo equivale a un ARMA\((p,q)\) sobre los retornos:
\[ r_t = c + \sum_{i=1}^{p} \phi_i\, r_{t-i} + \varepsilon_t + \sum_{j=1}^{q} \theta_j\, \varepsilon_{t-j}, \qquad \mu = E[r_t] = \frac{c}{1 - \sum_{i=1}^{p}\phi_i}. \]
R estima la forma equivalente centrada en la media, \(\Phi(L)\,(r_t - \mu) =
\Theta(L)\,\varepsilon_t\), de modo que el parámetro que las
tablas reportan como intercept es \(\mu\) y no \(c\).
En la implementación de R (stats::arima,
forecast::Arima) el modelo con exógenas es una regresión
con errores SARIMA:
\[ y_t = \mu + \mathbf{x}_t^{\top}\boldsymbol{\beta} + \eta_t, \qquad \Phi(L)\,\Phi^{*}(L^s)\,(1-L)^d\,(1-L^s)^D\,\eta_t = \Theta(L)\,\Theta^{*}(L^s)\,\varepsilon_t, \]
con los polinomios estacionales \(\Phi^{*}(L^s) = 1 - \phi^{*}_1 L^s - \cdots - \phi^{*}_P L^{Ps}\) y \(\Theta^{*}(L^s) = 1 + \theta^{*}_1 L^s + \cdots + \theta^{*}_Q L^{Qs}\). En este informe:
\(y_t = r_t\), con \(d = D = 0\) porque la diferencia ya está aplicada al pasar de log-precios a retornos;
\(s = 5\) (semana bursátil) con \(P = 1\): el término \(\phi^{*}_1\) capta autocorrelación estocástica en los rezagos 5, 10, 15, … Un efecto determinista de día de la semana en la media se modelaría con variables indicadoras, no con este término;
\(\mathbf{x}_t = x_{t} = 100\,\Delta \ln \text{VIX}_{t-1}\), el cambio porcentual del índice de miedo del día anterior;
\(\boldsymbol{\beta}\) mide el efecto de ese cambio sobre el retorno medio de XLE.
La diferencia frente a un ARMAX “puro” (con \(\mathbf{x}_t\) dentro de la ecuación en diferencias) es interpretativa: aquí \(\boldsymbol\beta\) es un efecto sobre la media condicional que no se propaga por la dinámica ARMA.
El proceso es estacionario si todas las raíces de \(\Phi(z)\Phi^{*}(z^s) = 0\) caen fuera del círculo unitario, \(|z| > 1\). En ese caso admite la representación de Wold
\[ r_t = \mu + \sum_{j=0}^{\infty} \psi_j\, \varepsilon_{t-j}, \qquad \psi_0 = 1, \qquad \sum_{j=0}^{\infty}\psi_j^2 < \infty . \]
Es invertible si las raíces de \(\Theta(z)\Theta^{*}(z^s) = 0\) cumplen \(|z| > 1\), lo que garantiza que \(\varepsilon_t\) se recupera de forma única a partir del pasado de \(r_t\). Dos alertas prácticas se derivan de aquí y se usan en la Sección 5: una raíz con módulo cercano a 1 indica un proceso casi no estacionario (raíz AR) o casi no invertible (raíz MA), y una raíz de \(\Phi(z)\) muy próxima a una raíz de \(\Theta(z)\) indica que los factores se cancelan y el modelo está sobreparametrizado.
El pronóstico a \(h\) pasos y su varianza son
\[ \hat r_{T+h\mid T} = E[r_{T+h} \mid \mathcal{F}_T], \qquad \text{Var}(r_{T+h} - \hat r_{T+h\mid T}) = \sigma^2 \sum_{j=0}^{h-1}\psi_j^2, \]
Como \(100\,(\ell_{T+H} - \ell_T) = \sum_{k=1}^{H} r_{T+k}\), el error de pronóstico del log-precio a \(H\) pasos (en las unidades de \(r_t\)) tiene varianza
\[ \text{Var}\!\left[100\,\big(\ell_{T+H} - \hat\ell_{T+H\mid T}\big)\right] = \sigma^2 \sum_{k=1}^{H}\Big(\sum_{i=0}^{k-1}\psi_i\Big)^2, \]
fórmula que se usa para el abanico de precios de la Sección 7.
Un pronóstico es operable solo si usa información de \(\mathcal{F}_{t-1}\). Hay tres vías de filtración que este informe bloquea de forma explícita:
El rezago resuelve el horizonte \(h = 1\), pero no el problema general: para \(h > 1\), el modelo necesita \(x_{T+h} = 100\,\Delta\ln\text{VIX}_{T+h-1}\), que es desconocido en \(T\) (es el \(X_{T+h}\) del planteamiento general). Las opciones son modelar \(x_t\) por separado (con su propio error de pronóstico) o sustituirlo por su esperanza incondicional, \(E[x_t] \approx 0\). Aquí se adopta lo segundo para pronósticos estáticos y simulaciones, lo que reduce el modelo multipaso a su parte ARMA. La consecuencia práctica es que el valor de un regresor exógeno se concentra en el horizonte de un día.
Si la varianza de \(\varepsilon_t\) depende del pasado, se escribe \(\varepsilon_t = \sigma_t z_t\) con \(z_t \stackrel{iid}{\sim} D(0,1)\). El modelo ARCH\((q)\) de Engle (1982) y su generalización GARCH\((m,n)\) de Bollerslev (1986) son
\[ \text{ARCH}(q):\; \sigma_t^2 = \omega + \sum_{i=1}^{q}\alpha_i\,\varepsilon_{t-i}^2, \qquad \text{GARCH}(m,n):\; \sigma_t^2 = \omega + \sum_{i=1}^{m}\alpha_i\,\varepsilon_{t-i}^2 + \sum_{j=1}^{n}\beta_j\,\sigma_{t-j}^2, \]
con \(\omega > 0\), \(\alpha_i, \beta_j \ge 0\). Para el GARCH(1,1):
El ARMA estima la media condicional suponiendo \(\sigma^2\) constante. Si la prueba ARCH-LM rechaza homocedasticidad, los puntos de pronóstico del ARMA siguen siendo válidos, pero sus intervalos y los errores estándar de los coeficientes no lo son. El GARCH corrige ambos frentes.
Partición: Train = 1.707 observaciones (04/01/2018 a 16/10/2024); Test = 302 observaciones (17/10/2024 a 31/12/2025). Todo lo que sigue en esta sección usa únicamente Train.
Se combinan dos pruebas con hipótesis nulas opuestas (Dickey y
Fuller, 1979; Kwiatkowski et al., 1992), en la implementación del
paquete urca (Pfaff, 2008). La ADF tiene como nula una raíz
unitaria; la KPSS, la estacionariedad. Una serie se considera \(I(1)\) cuando la ADF no rechaza y la KPSS
rechaza en niveles, y ambas pruebas se invierten en primeras
diferencias.
| Serie | Prueba | H0 | Estadístico | VC 1% | VC 5% | VC 10% | Decisión (5%) |
|---|---|---|---|---|---|---|---|
| log precio | ADF (tendencia) | Raíz unitaria | -2,122 | -3,960 | -3,410 | -3,120 | No rechaza H0 |
| log precio | KPSS (tau) | Estacionaria en tendencia | 1,188 | 0,216 | 0,146 | 0,119 | Rechaza H0 |
| retorno | ADF (constante) | Raíz unitaria | -13,687 | -3,430 | -2,860 | -2,570 | Rechaza H0 |
| retorno | KPSS (mu) | Estacionaria en nivel | 0,151 | 0,739 | 0,463 | 0,347 | No rechaza H0 |
El log-precio se comporta como \(I(1)\) y los retornos como \(I(0)\): queda justificado \(d = 1\) sobre el log-precio, es decir, \(d = 0\) sobre los retornos. No se aplica diferenciación estacional (\(D = 0\)): un ETF no tiene estacionalidad determinista en nivel a frecuencia diaria.
Las bandas de Bartlett (\(\pm 1{,}96/\sqrt{n}\)) suponen ruido blanco i.i.d. Con heterocedasticidad condicional esas bandas son demasiado estrechas y producen rezagos “significativos” espurios. Por eso la tabla siguiente añade un estadístico robusto a heterocedasticidad para cada autocorrelación, \(t_k = \sum_t \tilde r_t \tilde r_{t-k} / \sqrt{\sum_t \tilde r_t^2 \tilde r_{t-k}^2}\), con \(\tilde r_t\) centrado.
| Rezago | ACF | PACF | Sig. Bartlett | t robusto | Sig. robusta |
|---|---|---|---|---|---|
| 1 | -0,042 | -0,042 | No | -0,873 | No |
| 2 | 0,063 | 0,061 | Sí | 1,163 | No |
| 3 | -0,001 | 0,004 | No | -0,025 | No |
| 4 | 0,003 | -0,001 | No | 0,053 | No |
| 5 | 0,050 | 0,050 | Sí | 0,847 | No |
| 6 | -0,070 | -0,066 | Sí | -1,517 | No |
| 7 | 0,142 | 0,132 | Sí | 2,190 | Sí |
| 8 | -0,043 | -0,027 | No | -0,878 | No |
| 9 | 0,037 | 0,019 | No | 0,956 | No |
| 10 | 0,021 | 0,026 | No | 0,452 | No |
| 11 | -0,012 | -0,010 | No | -0,206 | No |
| 12 | 0,020 | 0,001 | No | 0,552 | No |
| 13 | -0,061 | -0,040 | Sí | -1,521 | No |
| 14 | 0,041 | 0,012 | No | 0,986 | No |
| 15 | -0,024 | -0,006 | No | -0,624 | No |
Con bandas de Bartlett resultan significativos los rezagos 2, 5, 6, 7 y 13; con el estadístico robusto, el rezago 7. Con 15 rezagos y un nivel del 5% se espera en promedio menos de un falso positivo, así que una o dos señales aisladas en rezagos lejanos no justifican un modelo de orden alto. La dependencia en media es, en el mejor caso, débil y de corto plazo. La dependencia en varianza es otra historia: la ACF de \(r_t^2\) decae lentamente y la prueba de Ljung-Box sobre \(r_t^2\) con 10 rezagos da p < 0,001. El patrón sugiere candidatos parsimoniosos de órdenes 1 y 2 para la media y un GARCH para la varianza.
La estimación usa máxima verosimilitud mediante
forecast::Arima (Hyndman y Khandakar, 2008; Hyndman y
Athanasopoulos, 2021), y la inferencia sobre coeficientes,
lmtest::coeftest (Zeileis y Hothorn, 2002). El
procedimiento es secuencial y manual, sin auto.arima():
| Modelo | k | logLik | AIC | AICc | BIC | sigma2 | Coef. no sig. (5%) | Mín. módulo raíz AR | Mín. módulo raíz MA | Dist. raíces AR-MA | Elegible |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ARIMA(0,0,0) | 2 | -3.685,5 | 7.375,0 | 7.375,0 | 7.385,8 | 4,396 | 0 | No | |||
| ARIMA(1,0,0) | 3 | -3.684,0 | 7.374,0 | 7.374,0 | 7.390,3 | 4,391 | 1 | 24,001 | No | ||
| ARIMA(0,0,1) | 3 | -3.684,2 | 7.374,3 | 7.374,3 | 7.390,6 | 4,392 | 1 | 26,984 | No | ||
| ARIMA(1,0,1) | 4 | -3.682,6 | 7.373,2 | 7.373,3 | 7.395,0 | 4,387 | 0 | 2,228 | 2,519 | 0,290 | Sí |
| ARIMA(2,0,0) | 4 | -3.680,8 | 7.369,6 | 7.369,6 | 7.391,3 | 4,377 | 1 | 3,730 | No | ||
| ARIMA(2,0,2) | 6 | -3.680,7 | 7.373,4 | 7.373,4 | 7.406,0 | 4,382 | 4 | 2,010 | 2,342 | 0,332 | No |
| ARIMA(7,0,0) | 9 | -3.659,7 | 7.337,5 | 7.337,6 | 7.386,5 | 4,283 | 4 | 1,248 | No |
| Modelo | Parámetro | Estimación | Error est. | z | p-valor |
|---|---|---|---|---|---|
| ARIMA(0,0,0) | intercept | 0,0292 | 0,0507 | 0,5751 | 0,565 |
| ARIMA(1,0,0) | ar1 | -0,0417 | 0,0242 | -1,7233 | 0,085 |
| ARIMA(1,0,0) | intercept | 0,0291 | 0,0487 | 0,5984 | 0,550 |
| ARIMA(0,0,1) | ma1 | -0,0371 | 0,0228 | -1,6262 | 0,104 |
| ARIMA(0,0,1) | intercept | 0,0292 | 0,0488 | 0,5976 | 0,550 |
| ARIMA(1,0,1) | ar1 | -0,4488 | 0,1611 | -2,7848 | 0,005 |
| ARIMA(1,0,1) | ma1 | 0,3970 | 0,1643 | 2,4161 | 0,016 |
| ARIMA(1,0,1) | intercept | 0,0285 | 0,0488 | 0,5830 | 0,560 |
| ARIMA(2,0,0) | ar1 | -0,0391 | 0,0242 | -1,6196 | 0,105 |
| ARIMA(2,0,0) | ar2 | 0,0614 | 0,0242 | 2,5404 | 0,011 |
| ARIMA(2,0,0) | intercept | 0,0291 | 0,0517 | 0,5622 | 0,574 |
| ARIMA(2,0,2) | ar1 | 0,1874 | 2,0175 | 0,0929 | 0,926 |
| ARIMA(2,0,2) | ar2 | 0,1543 | 1,1666 | 0,1323 | 0,895 |
| ARIMA(2,0,2) | ma1 | -0,2300 | 2,0331 | -0,1131 | 0,910 |
| ARIMA(2,0,2) | ma2 | -0,0841 | 1,1004 | -0,0765 | 0,939 |
| ARIMA(2,0,2) | intercept | 0,0317 | 0,0527 | 0,6016 | 0,547 |
| ARIMA(7,0,0) | ar1 | -0,0271 | 0,0240 | -1,1318 | 0,258 |
| ARIMA(7,0,0) | ar2 | 0,0553 | 0,0240 | 2,3101 | 0,021 |
| ARIMA(7,0,0) | ar3 | -0,0003 | 0,0240 | -0,0115 | 0,991 |
| ARIMA(7,0,0) | ar4 | 0,0053 | 0,0240 | 0,2207 | 0,825 |
| ARIMA(7,0,0) | ar5 | 0,0392 | 0,0240 | 1,6361 | 0,102 |
| ARIMA(7,0,0) | ar6 | -0,0617 | 0,0239 | -2,5760 | 0,010 |
| ARIMA(7,0,0) | ar7 | 0,1324 | 0,0240 | 5,5214 | < 0,001 |
| ARIMA(7,0,0) | intercept | 0,0290 | 0,0583 | 0,4973 | 0,619 |
Del paso 1 modelo base es ARIMA(1,0,1). Es el de menor BIC entre los que tienen todos sus coeficientes significativos, raíces fuera del círculo unitario y ninguna cancelación entre factores AR y MA. Su BIC (7.395,0) no mejora al del ruido blanco con media (7.385,8): por el criterio más exigente, la estructura dinámica no se justifica y los retornos son compatibles con una martingala. Se conserva el modelo dinámico solo para someterlo a la prueba que importa, la de fuera de muestra. Ningún candidato muestra cancelación de raíces AR y MA. Los modelos más ricos pueden ganar en AIC por unas pocas unidades de verosimilitud; el BIC, con su penalización mayor, no les concede esa ventaja.
| Modelo | AIC | AICc | BIC | logLik | p-valor beta VIX | p-valor SAR(5) | LR | p-valor LR | Aceptado |
|---|---|---|---|---|---|---|---|---|---|
| ARIMA(1,0,1) | 7.373,2 | 7.373,3 | 7.395,0 | -3.682,6 | 0,000 | Sí | |||
| ARIMAX(1,0,1) + VIX(t-1) | 7.374,8 | 7.374,8 | 7.402,0 | -3.682,4 | 0,508 | 0,441 | 0,507 | No | |
| SARIMA(1,0,1)(1,0,0)[5] | 7.371,7 | 7.371,7 | 7.398,9 | -3.680,8 | 0,059 | 3,569 | 0,059 | No | |
| SARIMAX(1,0,1)(1,0,0)[5] + VIX(t-1) | 7.373,2 | 7.373,3 | 7.405,9 | -3.680,6 | 0,502 | 0,059 | 4,017 | 0,134 | No |
El modelo final es ARIMA(1,0,1).** El cambio rezagado del VIX no supera el doble filtro de significancia y BIC: la información de aversión al riesgo del día anterior ya está incorporada en el precio, lo que es coherente con la eficiencia débil. El término estacional de periodo 5 no se sostiene: no hay autocorrelación apreciable en los rezagos múltiplos de una semana bursátil, como es habitual en ETF líquidos.
| Modelo | Parámetro | Estimación | Error est. | z | p-valor |
|---|---|---|---|---|---|
| ARIMA(1,0,1) | ar1 | -0,4488 | 0,1611 | -2,7848 | 0,005 |
| ARIMA(1,0,1) | ma1 | 0,3970 | 0,1643 | 2,4161 | 0,016 |
| ARIMA(1,0,1) | intercept | 0,0285 | 0,0488 | 0,5830 | 0,560 |
La prueba de Ljung y Box (1978) usa el estadístico
\[ Q(k) = n(n+2)\sum_{j=1}^{k}\frac{\hat\rho_j^2}{n-j} \;\sim\; \chi^2_{\,k - p - q - P - Q}, \]
con los grados de libertad corregidos por los parámetros ARMA estimados.
| Prueba | Estadístico | gl | p-valor |
|---|---|---|---|
| Ljung-Box sobre e(t), k = 10 | 49,712 | 8 | < 0,001 |
| Ljung-Box sobre e(t), k = 20 | 67,700 | 18 | < 0,001 |
La media de los residuos es 0,0007%, indistinguible de cero. Ljung-Box rechaza la ausencia de autocorrelación en al menos un horizonte. Parte de ese rechazo es mecánico: con heterocedasticidad condicional, Ljung-Box sobrerrechaza, igual que las bandas de Bartlett. La comparación con la tabla robusta de la Sección 5 indica si la dependencia remanente es real o un artefacto de varianza. El gráfico temporal muestra lo que ningún ARMA corrige: la amplitud de los residuos se triplica en 2020 y se mantiene elevada en 2022.
La prueba de Jarque y Bera (1980) da un estadístico de 16.064,5 (p < 0,001); asimetría -0,95 y curtosis 17,89. Se rechaza normalidad con holgura. El QQ-plot muestra el patrón típico: centro más apuntado y colas mucho más gruesas que la normal. La leptocurtosis tiene dos fuentes: la mezcla de regímenes de volatilidad (un GARCH la explica en parte) y saltos genuinos como los de marzo de 2020. Consecuencia práctica: los intervalos y el VaR gaussianos subestiman el riesgo de cola, y la simulación de la Sección 9 debe usar remuestreo de residuos.
Se aplican la prueba ARCH-LM de Engle (1982), basada en la regresión auxiliar \(e_t^2 = a_0 + \sum_{j=1}^{q} a_j e_{t-j}^2 + u_t\) con estadístico \(nR^2 \sim \chi^2_q\) bajo homocedasticidad, y la de McLeod y Li (1983), que es Ljung-Box sobre los residuos al cuadrado.
| Prueba | Estadístico | gl | p-valor |
|---|---|---|---|
| ARCH-LM (Engle), q = 5 | 320,55 | 5 | < 0,001 |
| ARCH-LM (Engle), q = 10 | 399,49 | 10 | < 0,001 |
| McLeod-Li (LB sobre e(t)^2), k = 5 | 544,88 | 5 | < 0,001 |
| McLeod-Li (LB sobre e(t)^2), k = 10 | 902,83 | 10 | < 0,001 |
| McLeod-Li (LB sobre e(t)^2), k = 20 | 1.145,97 | 20 | < 0,001 |
Las pruebas ARCH-LM y McLeod-Li rechazan homocedasticidad con p-valores prácticamente nulos. El ARMA describe la media, pero la varianza es dinámica. Se estima un GARCH(1,1) sobre los residuos del modelo final (enfoque en dos etapas: consistente, aunque menos eficiente que la estimación conjunta). rugarch no está disponible en esta sesión: la estimación usa tseries::garch (cuasi-máxima verosimilitud gaussiana). Para innovaciones t de Student instale rugarch y recompile.
| Parámetro | Estimación | Error est. | t | p-valor |
|---|---|---|---|---|
| omega | 0,0485 | 0,0120 | 4,0263 | < 0,001 |
| alpha1 | 0,0991 | 0,0072 | 13,8461 | < 0,001 |
| beta1 | 0,8920 | 0,0091 | 98,2126 | < 0,001 |
| Medida | Valor |
|---|---|
| Persistencia (alpha + beta) | 0,9911 |
| Vida media de un choque (días) | 77,5 |
| Volatilidad incondicional anualizada (GARCH) | 37,0% |
| Volatilidad muestral anualizada (residuos) | 33,2% |
| Grados de libertad t de Student | no aplica |
| Prueba | Estadístico | p-valor |
|---|---|---|
| Ljung-Box z(t), k = 10 | 14,59 | 0,148 |
| Ljung-Box z(t)^2, k = 10 | 18,01 | 0,055 |
| ARCH-LM z(t), q = 10 | 17,59 | 0,062 |
| Jarque-Bera z(t) | 374,96 | < 0,001 |
La persistencia de 0,991 implica que un choque de volatilidad tarda unos 77 días hábiles en disiparse a la mitad. Los residuos estandarizados ya no muestran efectos ARCH: el GARCH(1,1) captura la dinámica de segundo orden. Los residuos estandarizados siguen sin ser normales: el GARCH reduce la curtosis pero no la elimina, por lo que la simulación debe remuestrear z(t) empíricos en lugar de suponer normalidad.
El esquema principal es el pronóstico rodante a un paso con parámetros congelados: en cada día \(t\) de Test se usa \(\mathcal{F}_{t-1}\) completo (incluidos los datos de Test ya observados), pero los coeficientes son los estimados en Train. Así se evalúa el modelo tal como se habría operado. Como complemento se muestra el pronóstico estático multipaso desde \(T_0\), que ilustra la convergencia a la media.
| Modelo | RMSE r (%) | MAE r (%) | MASE r | RMSE P (USD) | MAE P (USD) | MAPE P (%) | MASE P | Acierto direccional | U de Theil vs. RW |
|---|---|---|---|---|---|---|---|---|---|
| ARIMA(2,0,0) | 1,4878 | 1,0273 | 0,5038 | 0,6136 | 0,4302 | 1,0303 | 1,1984 | 0,4437 | 0,9973 |
| ARIMA(2,0,2) | 1,4893 | 1,0269 | 0,5036 | 0,6141 | 0,4300 | 1,0298 | 1,1978 | 0,4470 | 0,9983 |
| SARIMA(1,0,1)(1,0,0)[5] | 1,4895 | 1,0300 | 0,5051 | 0,6141 | 0,4311 | 1,0329 | 1,2010 | 0,4503 | 0,9985 |
| SARIMAX(1,0,1)(1,0,0)[5] + VIX(t-1) | 1,4909 | 1,0294 | 0,5048 | 0,6146 | 0,4309 | 1,0323 | 1,2005 | 0,4536 | 0,9994 |
| ARIMA(1,0,1) | 1,4911 | 1,0290 | 0,5047 | 0,6148 | 0,4308 | 1,0320 | 1,2002 | 0,4735 | 0,9996 |
| Paseo aleatorio (r = 0) | 1,4918 | 1,0256 | 0,5030 | 0,6144 | 0,4292 | 1,0282 | 1,1957 | 1,0000 | |
| ARIMA(0,0,0) | 1,4919 | 1,0237 | 0,5020 | 0,6145 | 0,4285 | 1,0266 | 1,1937 | 0,5364 | 1,0001 |
| Paseo aleatorio con deriva | 1,4919 | 1,0237 | 0,5020 | 0,6145 | 0,4285 | 1,0266 | 1,1937 | 0,5364 | 1,0001 |
| ARIMAX(1,0,1) + VIX(t-1) | 1,4927 | 1,0288 | 0,5046 | 0,6154 | 0,4308 | 1,0318 | 1,2000 | 0,4470 | 1,0006 |
| ARIMA(0,0,1) | 1,4937 | 1,0274 | 0,5039 | 0,6155 | 0,4301 | 1,0304 | 1,1982 | 0,4834 | 1,0013 |
| ARIMA(1,0,0) | 1,4939 | 1,0279 | 0,5041 | 0,6156 | 0,4303 | 1,0309 | 1,1988 | 0,4735 | 1,0014 |
| ARIMA(7,0,0) | 1,5270 | 1,0565 | 0,5181 | 0,6289 | 0,4418 | 1,0594 | 1,2308 | 0,4305 | 1,0236 |
| Comparación | Estadístico DM | p-valor |
|---|---|---|
| ARIMA(1,0,1) vs. paseo aleatorio (r = 0) | -0,050 | 0,960 |
| ARIMA(1,0,1) vs. paseo aleatorio con deriva | -0,058 | 0,953 |
Con \(e_t = y_t - \hat y_{t\mid t-1}\) sobre los \(n_{\text{te}}\) días de Test y \(n_{\text{tr}}\) días de Train, las métricas son
\[ \begin{aligned} \text{RMSE} &= \sqrt{\frac{1}{n_{\text{te}}}\sum_t e_t^2}, & \text{MAE} &= \frac{1}{n_{\text{te}}}\sum_t |e_t|, & \text{MAPE} &= \frac{100}{n_{\text{te}}}\sum_t \left|\frac{e_t}{y_t}\right|, \\[4pt] \text{MASE} &= \frac{\text{MAE}}{\frac{1}{n_{\text{tr}}-1}\sum_{t=2}^{n_{\text{tr}}} |y_t - y_{t-1}|}, & U &= \frac{\text{RMSE}_{\text{modelo}}}{\text{RMSE}_{\text{RW}}}. & & \end{aligned} \]
El MAPE se reporta solo sobre precios: en retornos el denominador se acerca a cero y la métrica pierde sentido. El MASE escala el error por el del pronóstico ingenuo dentro de Train (Hyndman y Koehler, 2006). En precios, todos los modelos producen errores casi idénticos porque el término dominante es \(P_{t-1}\): la diferencia relevante está en la columna de retornos y en la U de Theil.
| Modelo | BIC | RMSE r (%) | Rango BIC (Train) | Rango RMSE (Test) |
|---|---|---|---|---|
| ARIMA(0,0,0) | 7.385,8 | 1,492 | 1 | 6 |
| ARIMA(7,0,0) | 7.386,5 | 1,527 | 2 | 10 |
| ARIMA(1,0,0) | 7.390,3 | 1,494 | 3 | 9 |
| ARIMA(0,0,1) | 7.390,6 | 1,494 | 4 | 8 |
| ARIMA(2,0,0) | 7.391,3 | 1,488 | 5 | 1 |
| ARIMA(1,0,1) | 7.395,0 | 1,491 | 6 | 5 |
| SARIMA(1,0,1)(1,0,0)[5] | 7.398,9 | 1,490 | 7 | 3 |
| ARIMAX(1,0,1) + VIX(t-1) | 7.402,0 | 1,493 | 8 | 7 |
| SARIMAX(1,0,1)(1,0,0)[5] + VIX(t-1) | 7.405,9 | 1,491 | 9 | 4 |
| ARIMA(2,0,2) | 7.406,0 | 1,489 | 10 | 2 |
| Varianza | Nivel | Cobertura empírica | p-valor binomial |
|---|---|---|---|
| Constante (ARIMA) | 80% | 96,0% | < 0,001 |
| Constante (ARIMA) | 95% | 98,7% | 0,001 |
| Condicional (GARCH) | 80% | 85,4% | 0,017 |
| Condicional (GARCH) | 95% | 95,4% | 0,895 |
El pronóstico estático de retornos converge a la media incondicional en 3 pasos. Más allá de ese horizonte el modelo no dice nada que no diga el paseo aleatorio con deriva: el abanico de precios es, en la práctica, el de un movimiento browniano geométrico. El precio final observado (USD 43,84) queda dentro del intervalo al 95% del horizonte completo.
El modelo final obtiene un RMSE menor que el paseo aleatorio (U de Theil = 0,9996). La prueba de Diebold-Mariano no rechaza igualdad de precisión (p = 0,960): la diferencia no se distingue del ruido muestral. El mejor modelo fuera de muestra es ARIMA(2,0,0). La correlación de Spearman entre los rangos de BIC en Train y de RMSE en Test es -0,60, lo que indica que el ordenamiento dentro de muestra no predice el desempeño fuera de muestra: la ventaja en criterios de información era, en buena parte, sobreajuste a la muestra de entrenamiento.
Esto es lo esperable bajo la forma débil de eficiencia. Las autocorrelaciones de primer orden en retornos diarios de ETF líquidos son pequeñas, inestables entre regímenes y, cuando existen, se arbitran rápido. Las diferencias de RMSE entre modelos están en la cuarta cifra decimal frente a errores del orden de la desviación estándar diaria. Donde el análisis tiene más respaldo es en la varianza: la dependencia en \(\varepsilon_t^2\) es fuerte y estable en Train. En Test, los intervalos con volatilidad GARCH se acercan más a su nivel nominal que los de varianza constante, que tienden a quedarse cortos en estrés y largos en calma.
Al cierre de \(T_0\) = 16/10/2024 se asignan USD 100.000. Cada día \(t\) del bloque Test, con información hasta \(t-1\):
El retorno neto diario de la cartera y su valor son
\[ R^{\text{neta}}_t = s_t\,R_t + (1 - s_t)\,r^f_t - c\,\lvert s_t - s_{t-1}\rvert, \qquad V_t = V_{t-1}\,\big(1 + R^{\text{neta}}_t\big), \qquad s_0 = 0, \]
con \(R_t = e^{r_t/100} - 1\) el retorno simple de XLE y \(c\) expresado como fracción. El drawdown es \(DD_t = V_t / \max_{u \le t} V_u - 1\).
Los costos de 5 pb por lado son conservadores para XLE, cuyo diferencial cotizado suele ser de uno o dos centavos sobre precios de decenas de dólares. La sensibilidad de la Sección 8.3 cubre de 0 a 20 pb.
| Estrategia | Capital final (USD) | Retorno total | Retorno anualizado | Vol. anualizada | Sharpe | Máx. drawdown | Operaciones | Tiempo invertido |
|---|---|---|---|---|---|---|---|---|
| Estrategia ARIMA (modelo final) | 106.285 | 6,29% | 5,22% | 14,08% | 0,15 | -10,99% | 146 | 26% |
| Buy & Hold | 103.192 | 3,19% | 2,66% | 23,49% | 0,06 | -20,14% | 2 | 100% |
| Benchmark ingenuo: paseo aleatorio (r = 0) | 104.957 | 4,96% | 4,12% | 0,01% | 0,00 | 0,00% | 0 | 0% |
| Benchmark ingenuo: paseo aleatorio con deriva | 104.957 | 4,96% | 4,12% | 0,01% | 0,00 | 0,00% | 0 | 0% |
| Liquidez (T-bill) | 104.957 | 4,96% | 4,12% | 0,01% | 0,00 | 0,00% | 0 | 0% |
Los dos benchmarks ingenuos merecen una nota: como su pronóstico es constante, la regla los convierte en una decisión única. El paseo aleatorio sin deriva pronostica \(\hat r = 0\), que nunca supera el umbral, de modo que equivale a quedarse en liquidez; el paseo con deriva equivale a Buy & Hold o a liquidez según la media de Train supere o no el umbral (aquí no la supera).
La tasa de acierto direccional del modelo final (signo del pronóstico centrado frente al signo del retorno centrado) es 45,7%. La prueba de Pesaran y Timmermann (1992), que corrige por la frecuencia de signos de cada serie, da un estadístico de -1,43 (p = 0,923, unilateral). No hay evidencia de que el modelo anticipe la dirección mejor que el azar: cualquier ganancia de la estrategia debe atribuirse más a cuándo estuvo fuera del mercado que a una capacidad predictiva demostrable.
La estrategia estuvo invertida el 26% del tiempo. La exposición intermedia hace que el resultado dependa tanto de la calidad de la señal como de la trayectoria del mercado en Test.
| Costo por lado (pb) | Capital estrategia (USD) | Capital Buy & Hold (USD) | Diferencia (USD) |
|---|---|---|---|
| 0 | 114.331 | 103.295 | 11.036 |
| 1 | 112.674 | 103.274 | 9.401 |
| 2 | 111.042 | 103.253 | 7.789 |
| 5 | 106.285 | 103.192 | 3.094 |
| 10 | 98.802 | 103.089 | -4.286 |
| 20 | 85.370 | 102.883 | -17.512 |
La ventaja bruta de la estrategia desaparece con un costo de 7,1 pb por lado. Ese umbral está por encima del supuesto base, pero la holgura es estrecha si se considera la incertidumbre sobre la señal.
| Modelo | Capital final (USD) | Operaciones |
|---|---|---|
| ARIMA(2,0,0) | 115.381 | 184 |
| SARIMAX(1,0,1)(1,0,0)[5] + VIX(t-1) | 108.667 | 152 |
| ARIMA(1,0,1) | 106.285 | 146 |
| ARIMA(0,0,0) | 104.957 | 0 |
| ARIMAX(1,0,1) + VIX(t-1) | 101.923 | 156 |
| SARIMA(1,0,1)(1,0,0)[5] | 99.783 | 142 |
| ARIMA(1,0,0) | 99.215 | 102 |
| ARIMA(0,0,1) | 97.199 | 94 |
| ARIMA(2,0,2) | 90.811 | 166 |
| ARIMA(7,0,0) | 88.882 | 184 |
Esta última tabla se reporta como control, no como menú. Elegir ahora el candidato con mayor capital final sería seleccionar el modelo con información de Test, que es exactamente la filtración que la partición pretende evitar. La dispersión entre filas mide cuánto del resultado depende de la especificación, es decir, el riesgo de modelo.
Se simulan 5.000 trayectorias de 302 días desde \(T_0\), con los parámetros de Train, por tres métodos:
Como Jarque-Bera rechaza normalidad, el método 1 se presenta solo como referencia; los métodos 2 y 3 son los relevantes para riesgo.
| Método | Media | P5 | P50 (mediana) | P95 | P(P(T+h) < P(T0)) | VaR 95% | VaR 99% | ES 95% | Percentil del precio real |
|---|---|---|---|---|---|---|---|---|---|
| Normal | 48,77 | 25,79 | 46,17 | 81,50 | 40,8% | 39.231 | 52.165 | 47.217 | 44,1% |
| Bootstrap residual | 49,44 | 26,14 | 46,56 | 82,05 | 39,4% | 38.422 | 51.143 | 46.491 | 43,0% |
| FHS (GARCH) | 49,10 | 26,99 | 46,56 | 78,06 | 38,0% | 36.420 | 58.738 | 49.653 | 42,0% |
El VaR al nivel \(\alpha\) es la pérdida que solo se excede con probabilidad \(1-\alpha\), y el Expected Shortfall (ES) es la pérdida media en esa misma cola:
\[ \text{VaR}_\alpha = -\,V_0 \, q_{1-\alpha}(R), \qquad \text{ES}_\alpha = -\,V_0 \, E\!\left[R \mid R \le q_{1-\alpha}(R)\right], \]
con \(V_0\) = USD 100.000 y \(q_{1-\alpha}(R)\) el cuantil \(1-\alpha\) del retorno simple. Se comparan tres estimadores y se validan con la prueba de cobertura incondicional de Kupiec (1995) sobre los \(n\) = 302 días de Test. Si \(x\) es el número de excesos y \(p = 1-\alpha\),
\[ LR_{uc} = -2\ln\!\left[\frac{(1-p)^{\,n-x}\,p^{\,x}}{(1-\hat p)^{\,n-x}\,\hat p^{\,x}}\right] \;\sim\; \chi^2_1, \qquad \hat p = x/n. \]
| Nivel | Método | VaR 1 día en T0 (USD) | Excesos | Esperados | LR Kupiec | p-valor |
|---|---|---|---|---|---|---|
| 95% | Paramétrico normal (estático) | 3.362 | 4 | 15,1 | 12,00 | < 0,001 |
| 95% | Histórico (estático) | 3.022 | 5 | 15,1 | 9,50 | 0,002 |
| 95% | FHS-GARCH (dinámico) | 2.793 | 12 | 15,1 | 0,72 | 0,397 |
| 99% | Paramétrico normal (estático) | 4.733 | 3 | 3,0 | 0,00 | 0,991 |
| 99% | Histórico (estático) | 5.284 | 3 | 3,0 | 0,00 | 0,991 |
| 99% | FHS-GARCH (dinámico) | 4.181 | 3 | 3,0 | 0,00 | 0,991 |
1. El log-precio es \(I(1)\) y los retornos son \(I(0)\) (Sección 5.1), lo que fija \(d = 1\) sobre precios. Los retornos tienen media cercana a cero, dependencia lineal débil y de corto plazo, curtosis de 17,9 y una fuerte dependencia en el segundo momento (Ljung-Box sobre \(r_t^2\): p < 0,001). Los choques de 2020 y 2022 dominan la varianza muestral.
2. ARIMA(1,0,1) se eligió con un procedimiento manual y secuencial: inspección de ACF/PACF con inferencia robusta a heterocedasticidad, criterio BIC, significancia individual al 5% y raíces fuera del círculo unitario; luego se contrastaron el regresor VIX(t-1) y el término estacional de periodo 5. Aun así, el ruido blanco con media obtiene mejor BIC: la estructura dinámica es marginal.
3. Los residuos muestran autocorrelación lineal residual en algún horizonte, no son normales (Jarque-Bera, p < 0,001) y presentan heterocedasticidad condicional marcada. En sentido estricto no son ruido blanco i.i.d.; son, a lo sumo, una diferencia de martingala con varianza dinámica, lo que justifica el GARCH (persistencia 0,991).
4. U de Theil = 0,9996, Diebold-Mariano p = 0,960, correlación de rangos BIC-RMSE = -0,60. La ventaja dentro de muestra no se traslada fuera de muestra de forma estadísticamente distinguible. Los intervalos con varianza GARCH tienen mejor cobertura que los de varianza constante.
5. La estrategia USD 106.285 y Buy & Hold USD 103.192 con liquidez: USD 104.957. La estrategia estuvo invertida el 26% del tiempo. El costo de equilibrio es 7,1 pb por lado. La regla cambió de posición 146 veces: cada cambio cuesta el diferencial y expone a deslizamiento, y con señales casi nulas el costo es un drenaje seguro frente a un beneficio incierto.
6. Probabilidad de pérdida al horizonte (FHS): 38,0%. VaR 95% al horizonte para USD 100.000: USD 36.420; ES 95%: USD 49.653. El bootstrap o el FHS producen un VaR al 99% mayor que el método normal, que subestima el riesgo extremo.
7. Limitaciones:
set.seed(123) al inicio y antes de la
simulación de Monte Carlo..Rmd; borrarlo
fuerza una nueva descarga, y Yahoo Finance puede haber revisado los
precios ajustados.auto.arima() en ninguna etapa.## R version 4.6.0 (2026-04-24 ucrt)
## Platform: x86_64-w64-mingw32/x64
## Running under: Windows 11 x64 (build 26200)
##
## Matrix products: default
## LAPACK version 3.12.1
##
## locale:
## [1] LC_COLLATE=Spanish_Colombia.utf8 LC_CTYPE=Spanish_Colombia.utf8
## [3] LC_MONETARY=Spanish_Colombia.utf8 LC_NUMERIC=C
## [5] LC_TIME=Spanish_Colombia.utf8
##
## time zone: America/Bogota
## tzcode source: internal
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## other attached packages:
## [1] kableExtra_1.4.1 knitr_1.52 gridExtra_2.3.1 scales_1.4.0
## [5] lubridate_1.9.5 forcats_1.0.1 stringr_1.6.0 dplyr_1.2.1
## [9] purrr_1.2.2 readr_2.2.0 tidyr_1.3.2 tibble_3.3.1
## [13] ggplot2_4.0.3 tidyverse_2.0.0 lmtest_0.9-40 urca_1.3-4
## [17] tseries_0.10-63 forecast_9.0.2 quantmod_0.4.29 TTR_0.24.4
## [21] xts_0.14.3 zoo_1.9-1
##
## loaded via a namespace (and not attached):
## [1] gtable_0.3.6 xfun_0.62 bslib_0.12.0 lattice_0.22-9
## [5] tzdb_0.5.0 quadprog_1.5-8 vctrs_0.7.3 tools_4.6.0
## [9] generics_0.1.4 stats4_4.6.0 curl_8.1.0 parallel_4.6.0
## [13] pkgconfig_2.0.3 Matrix_1.7-5 RColorBrewer_1.1-3 S7_0.2.2
## [17] lifecycle_1.0.5 compiler_4.6.0 farver_2.1.2 textshaping_1.0.5
## [21] htmltools_0.5.9 sass_0.4.10 yaml_2.3.12 pillar_1.11.1
## [25] jquerylib_0.1.4 cachem_1.1.0 nlme_3.1-169 mime_0.13
## [29] fracdiff_1.5-4 tidyselect_1.2.1 digest_0.6.39 stringi_1.8.9
## [33] labeling_0.4.3 splines_4.6.0 fastmap_1.2.0 grid_4.6.0
## [37] colorspace_2.1-4 cli_3.6.6 magrittr_2.0.5 withr_3.0.3
## [41] timechange_0.4.0 rmarkdown_2.32 otel_0.2.0 timeDate_4052.112
## [45] hms_1.1.4 evaluate_1.0.5 viridisLite_0.4.3 mgcv_1.9-4
## [49] rlang_1.3.0 Rcpp_1.1.2 glue_1.8.1 xml2_1.6.0
## [53] svglite_2.2.2 rstudioapi_0.19.0 jsonlite_2.0.0 R6_2.6.1
## [57] systemfonts_1.3.2
Barone-Adesi, G., Giannopoulos, K., & Vosper, L. (1999). VaR without correlations for portfolios of derivative securities. Journal of Futures Markets, 19(5), 583-602.
Bollerslev, T. (1986). Generalized autoregressive conditional heteroskedasticity. Journal of Econometrics, 31(3), 307-327.
Box, G. E. P., & Cox, D. R. (1964). An analysis of transformations. Journal of the Royal Statistical Society: Series B (Methodological), 26(2), 211-252.
Box, G. E. P., Jenkins, G. M., Reinsel, G. C., & Ljung, G. M. (2015). Time series analysis: Forecasting and control (5th ed.). Wiley.
Cont, R. (2001). Empirical properties of asset returns: Stylized facts and statistical issues. Quantitative Finance, 1(2), 223-236.
Dickey, D. A., & Fuller, W. A. (1979). Distribution of the estimators for autoregressive time series with a unit root. Journal of the American Statistical Association, 74(366a), 427-431.
Diebold, F. X., & Mariano, R. S. (1995). Comparing predictive accuracy. Journal of Business & Economic Statistics, 13(3), 253-263.
Engle, R. F. (1982). Autoregressive conditional heteroscedasticity with estimates of the variance of United Kingdom inflation. Econometrica, 50(4), 987-1007.
Fama, E. F. (1970). Efficient capital markets: A review of theory and empirical work. The Journal of Finance, 25(2), 383-417.
Guerrero, V. M. (1993). Time-series analysis supported by power transformations. Journal of Forecasting, 12(1), 37-48.
Hamilton, J. D. (2009). Causes and consequences of the oil shock of 2007-08. Brookings Papers on Economic Activity, 2009(1), 215-261.
Hyndman, R. J., & Athanasopoulos, G. (2021). Forecasting: Principles and practice (3rd ed.). OTexts. https://otexts.com/fpp3/
Hyndman, R. J., & Khandakar, Y. (2008). Automatic time series forecasting: The forecast package for R. Journal of Statistical Software, 27(3), 1-22.
Hyndman, R. J., & Koehler, A. B. (2006). Another look at measures of forecast accuracy. International Journal of Forecasting, 22(4), 679-688.
Jarque, C. M., & Bera, A. K. (1980). Efficient tests for normality, homoscedasticity and serial independence of regression residuals. Economics Letters, 6(3), 255-259.
Kilian, L. (2009). Not all oil price shocks are alike: Disentangling demand and supply shocks in the crude oil market. American Economic Review, 99(3), 1053-1069.
Kupiec, P. H. (1995). Techniques for verifying the accuracy of risk measurement models. The Journal of Derivatives, 3(2), 73-84.
Kwiatkowski, D., Phillips, P. C. B., Schmidt, P., & Shin, Y. (1992). Testing the null hypothesis of stationarity against the alternative of a unit root. Journal of Econometrics, 54(1-3), 159-178.
Ljung, G. M., & Box, G. E. P. (1978). On a measure of lack of fit in time series models. Biometrika, 65(2), 297-303.
McLeod, A. I., & Li, W. K. (1983). Diagnostic checking ARMA time series models using squared-residual autocorrelations. Journal of Time Series Analysis, 4(4), 269-273.
Meese, R. A., & Rogoff, K. (1983). Empirical exchange rate models of the seventies: Do they fit out of sample? Journal of International Economics, 14(1-2), 3-24.
Pesaran, M. H., & Timmermann, A. (1992). A simple nonparametric test of predictive performance. Journal of Business & Economic Statistics, 10(4), 461-465.
Pfaff, B. (2008). Analysis of integrated and cointegrated time series with R (2nd ed.). Springer.
Tsay, R. S. (2010). Analysis of financial time series (3rd ed.). Wiley.
Welch, I., & Goyal, A. (2008). A comprehensive look at the empirical performance of equity premium prediction. The Review of Financial Studies, 21(4), 1455-1508.
Zeileis, A., & Hothorn, T. (2002). Diagnostic checking in regression relationships. R News, 2(3), 7-10.
Fuentes de datos
Board of Governors of the Federal Reserve System. (2026). 3-Month Treasury Bill Secondary Market Rate, Discount Basis (DTB3) [Conjunto de datos]. FRED, Federal Reserve Bank of St. Louis. https://fred.stlouisfed.org/series/DTB3
Cboe Global Markets. (2026). Cboe Volatility Index (^VIX) [Conjunto de datos]. Obtenido de Yahoo Finance.
State Street Global Advisors. (2026). The Energy Select Sector SPDR Fund (XLE) [Conjunto de datos de precios]. Obtenido de Yahoo Finance.
U.S. Energy Information Administration. (2026). Crude Oil Prices: West Texas Intermediate (WTI), Cushing, Oklahoma (DCOILWTICO) [Conjunto de datos]. FRED, Federal Reserve Bank of St. Louis. https://fred.stlouisfed.org/series/DCOILWTICO