estadistica.ar · Enciclopedia de Estadística en españolhttps://estadistica.ar/conceptos/modelos-arima
Modelos ARIMA
Procesos autorregresivos y de media móvil, cómo se identifican con la ACF y la PACF, y el ciclo de Box-Jenkins de punta a punta con una serie real.
Por Jorge Luis Montivero, Licenciado en Estadística · Mu3Sigma
1 · La idea
Un ARIMA pronostica una serie con su propio pasado: sin variables explicativas, solo con lo que la serie hizo antes y con los errores que el modelo cometió antes. Lo arma con dos piezas:
| Pieza | El valor de hoy depende de | Nombre |
|---|---|---|
| AR | los valores de los períodos anteriores | autorregresivo |
| MA | los shocks (errores) de los períodos anteriores | media móvil |
La I del medio es la diferenciación, que ya está explicada en estacionariedad y diferenciación: el modelo se ajusta sobre la serie diferenciada veces, porque las piezas AR y MA solo funcionan sobre una serie estacionaria.
2 · El proceso autorregresivo
Un AR(1) dice que el valor de hoy es una fracción del de ayer más un shock nuevo:
donde es ruido blanco: independiente, de media cero y varianza constante. Para que la serie sea estacionaria hace falta ; con es un paseo aleatorio, que es justamente lo que la diferenciación viene a resolver.
Un shock no desaparece de golpe: hoy pesa , mañana , pasado . Por eso la autocorrelación decae geométricamente:
Un AR() usa los valores anteriores: .
3 · El proceso de media móvil
Un MA(1) dice que el valor de hoy depende del shock de hoy y del de ayer, y de nada más:
Un shock afecta dos períodos y después se olvida por completo. Por eso la autocorrelación se corta: vale en el rezago 1 y exactamente cero desde el 2. Ese primer valor nunca pasa de 0,5, que es otra forma de reconocer un MA(1).
4 · Cómo se los reconoce
Las dos piezas dejan huellas opuestas en la ACF y la PACF. Simulando 500 valores de cada una, con :
| Rezago 1 | Rezago 2 | Rezago 3 | |
|---|---|---|---|
| AR(1) · ACF teórica | 0,700 | 0,490 | 0,343 |
| AR(1) · ACF muestral | 0,740 | 0,507 | 0,333 |
| AR(1) · PACF muestral | 0,742 | −0,092 | −0,021 |
| MA(1) · ACF teórica | 0,470 | 0 | 0 |
| MA(1) · ACF muestral | 0,482 | 0,006 | −0,021 |
| MA(1) · PACF muestral | 0,483 | −0,296 | 0,169 |
De ahí sale la tabla que se usa para identificar:
| Modelo | ACF | PACF |
|---|---|---|
| AR() | decae | se corta después de |
| MA() | se corta después de | decae |
| ARMA() | decae | decae |
5 · La notación completa
Un ARIMA() junta todo: términos AR, diferencias y términos MA. Con datos estacionales se agrega la misma estructura en los rezagos del período, y queda un SARIMA:
donde , y hacen lo mismo que , y pero con saltos de períodos: 12 en datos mensuales. Un MA estacional de orden 1, por ejemplo, relaciona el shock de este enero con el del enero anterior.
6 · El ciclo de Box-Jenkins, con las pernoctaciones
Box y Jenkins propusieron un procedimiento en cuatro pasos que se repite hasta que el modelo pasa el control. Con la serie de pernoctaciones hoteleras de 2007 a 2018, reservando 2019 para ver qué tan bien pronostica:
Paso 1 · Identificar
Primero, la diferenciación. La entrada de estacionariedad mostró que con una diferencia estacional la serie ya es estacionaria (ADF ), así que y . Después, el correlograma de esa serie diferenciada (, bandas de ±0,171):
| Rezago | 1 | 2 | 3 | 4 | … | 12 | 13 |
|---|---|---|---|---|---|---|---|
| ACF | 0,510 | 0,460 | 0,349 | 0,321 | −0,359 | −0,131 | |
| PACF | 0,514 | 0,276 | 0,061 | 0,081 | −0,447 | 0,247 |
La lectura, con la tabla de la sección 4:
- en los rezagos chicos la ACF decae despacio y la PACF se corta después del 2: parte no estacional AR(2);
- en el rezago 12 la ACF tiene una barra negativa aislada: es la huella típica de un MA(1) estacional después de una diferencia estacional.
Candidato: ARIMA(2,0,0)(0,1,1)₁₂, y algunos vecinos para comparar.
Paso 2 · Estimar
Los coeficientes se estiman por máxima verosimilitud. Entre modelos con las mismas diferencias, se comparan con el AICc, que premia el ajuste y castiga la cantidad de parámetros.
Paso 3 · Diagnosticar
Si el modelo captó toda la estructura, lo que sobra tiene que ser ruido blanco. Se controla con la prueba de Ljung-Box sobre los residuos (24 rezagos, menos los grados de libertad de los parámetros estimados):
| Modelo | AICc | Ljung-Box | Veredicto |
|---|---|---|---|
| (1,0,0)(0,1,1)₁₂ | 3.639,1 | 0,059 | residuos al borde: le falta algo |
| (2,0,0)(0,1,1)₁₂ | 3.631,6 | 0,576 | pasa |
| (1,0,1)(0,1,1)₁₂ | 3.629,0 | 0,520 | pasa, y tiene el menor AICc |
El elegido es el ARIMA(1,0,1)(0,1,1)₁₂, con ,
y . Es el mismo que elige
auto.arima() de R buscando solo. El que salió de la lectura a ojo, el
(2,0,0), queda a 2,6 puntos de AICc: prácticamente empatados, que es lo normal
entre candidatos razonables.
Paso 4 · Pronosticar
El pronóstico de 2019 erra un 5,06 % en promedio. El ingenuo estacional, que repite 2018, erra un 3,82 %.
Lo que el ARIMA sí da, y el ingenuo no, es un intervalo de predicción honesto. Sus doce meses de 2019 caen dentro del intervalo del 95 %, y once de doce dentro del de 80 %, que es lo que se espera de intervalos bien calibrados. El intervalo del 95 % mide 0,84 millones para el mes siguiente y 1,06 millones a doce meses: se ensancha con el horizonte, porque cada mes suma la incertidumbre de los anteriores.
7 · Lo que un ARIMA no puede saber
Reestimado con toda la serie hasta diciembre de 2019, el modelo pronosticaba para junio de 2020 2,82 millones de pernoctaciones, con un intervalo del 95 % de 2,32 a 3,32 millones. Hubo 74.247.
8 · El software también decide
Con los mismos datos y el mismo modelo, SARIMAX de statsmodels, con su
configuración por defecto, estima el MA estacional en , contra
el de R. La diferencia viene de cómo trata los primeros valores de la
serie (la inicialización difusa aproximada): con la difusa exacta estima
, cerca de R.
| Estimación | |||
|---|---|---|---|
R, Arima() | 0,889 | −0,517 | −0,741 |
| statsmodels, inicialización exacta | 0,871 | −0,496 | −0,694 |
| statsmodels, por defecto | 0,755 | −0,497 | −0,278 |
Un coeficiente que pasa de −0,74 a −0,28 no es un redondeo. Cuando los resultados de un ARIMA se informan, conviene decir con qué programa y qué opciones se estimaron, y si hay dudas, ajustarlo en dos.
9 · Errores frecuentes
- Ajustar un ARIMA sobre una serie no estacionaria sin diferenciar, o diferenciar de más (ver el −0,5 en el rezago 1, en estacionariedad).
- Leer los órdenes con la función equivocada. El orden AR sale de la PACF y el MA de la ACF, no al revés.
- Comparar por AIC modelos con distinto .
- Saltearse el diagnóstico. Un modelo con residuos autocorrelacionados (Ljung-Box con chico) dejó estructura sin modelar, y sus intervalos son demasiado angostos.
- Elegir el modelo con más parámetros porque baja un poco el error de ajuste.
- No comparar contra el ingenuo estacional antes de defender el modelo.
- Presentar el pronóstico sin intervalo, o el intervalo sin aclarar que supone que el régimen no cambia.
- Confundir el MA de un ARIMA con una media móvil de suavizado.
- Informar coeficientes sin decir el programa: los signos y las inicializaciones cambian entre programas.
10 · En el software
# R — forecast
library(forecast)
s <- ts(pernoctes, start = c(2007, 1), frequency = 12)
tr <- window(s, end = c(2018, 12))
# Identificar
ggtsdisplay(diff(tr, lag = 12)) # serie, ACF y PACF juntas
# Estimar y diagnosticar
m <- Arima(tr, order = c(1, 0, 1),
seasonal = list(order = c(0, 1, 1), period = 12))
checkresiduals(m) # Ljung-Box y gráficos de residuos
# Pronosticar, con intervalos del 80 y 95 %
f <- forecast(m, h = 12)
autoplot(f)
auto.arima(tr) # la búsqueda automática
accuracy(f, window(s, start = c(2019, 1)))
accuracy(snaive(tr, h = 12), window(s, start = c(2019, 1)))
# Python — statsmodels
from statsmodels.tsa.statespace.sarimax import SARIMAX
from statsmodels.graphics.tsaplots import plot_acf, plot_pacf
from statsmodels.stats.diagnostic import acorr_ljungbox
plot_acf(tr.diff(12).dropna(), lags=24)
plot_pacf(tr.diff(12).dropna(), lags=24)
mod = SARIMAX(tr, order=(1, 0, 1), seasonal_order=(0, 1, 1, 12))
mod.ssm.initialize_diffuse() # sin esto, en esta serie estima otro modelo
m = mod.fit(disp=False)
acorr_ljungbox(m.resid[13:], lags=[24], model_df=3)
m.get_forecast(12).summary_frame(alpha=0.05)
Seguir leyendo
Estadística para Economía y Administración · El dato en contexto · 87 de 318
Probabilidad y Estadística · El dato en contexto · 79 de 302
Cómo citar: Montivero, J. L. (2026). Modelos ARIMA. estadistica.ar. https://estadistica.ar/conceptos/modelos-arima
estadistica.ar es gratuita y sin publicidad. Si te sirvió, podés invitar un cafecito por transferencia al alias mu3sigma. Asesoramiento estadístico, encuestas y capacitaciones: m3s.pro · WhatsApp +54 9 383 499-7929.
Cómo citar esta entrada
APA (7.ª edición)
Montivero, J. L. (2026). Modelos ARIMA. estadistica.ar. https://estadistica.ar/conceptos/modelos-arima
BibTeX
@misc{estadistica_ar_modelos_arima,
author = {Montivero, Jorge Luis},
title = {{Modelos ARIMA}},
year = {2026},
howpublished = {\url{https://estadistica.ar/conceptos/modelos-arima}},
note = {estadistica.ar. Consultado el \today},
urldate = {2026-10-30}
}Última actualización: 30 de octubre de 2026. El contenido está bajo licencia CC BY-NC-SA 4.0: se puede reutilizar citando la fuente y sin fines comerciales.