Este documento ilustra las funciones de autocorrelación y de autocorrelación parcial para un grupo de modelos AR(1), AR(1), MA(1), MA(2), y ARMA(1,1). Los cálculos y gráficos fueron realizados utilizando el programa R.
Primero, cargamos el paquete tidyverse, que incluye paquetes de uso común en el análisis con R. Segundo, cargamos el paquete TSA, que incluye la función ARMAacf que permite calcular las funciones ACF y PACF para procesos ARMA. Finalmente, creamos la función acfplot para hacer gráficos de procesos ARMA.
library(tidyverse)
library(TSA)
acfplot <- function(ar=0,ma=0){
tibble(lag = as.integer(1:10),
acf=ARMAacf(ar, ma, 10, pacf=FALSE)[2:11],
pacf=ARMAacf(ar,ma, 10, pacf=TRUE)) %>%
gather("key","value",acf,pacf) %>%
ggplot(aes(lag,value)) +
geom_col(width=0.2, fill='blue') + facet_wrap(~key) +
scale_x_discrete(limits=seq(0,10,2)) +
ylim(-1,1)
}
Los procesos de media móvil MA(q) tienen el formato \[y_t = c + \epsilon_t + \theta_1\epsilon_{t-1} + \dots + \theta_q\epsilon_{t-q} \]
El autocorrelograma es \[\text{ACF(k)} \equiv\rho_k = \begin{cases}\frac{\theta_1}{1+\theta_1^2},&k=1\\ \\ 0, &k=2,3,\dots\end{cases} \]
acfplot(ma=0.5)
acfplot(ma=-0.5)
El autocorrelograma es \[\text{ACF(k)} \equiv\rho_k = \begin{cases}\frac{\theta_1(1+\theta_2)}{1+\theta_1^2+\theta_2^2},&k=1\\ \\ \frac{\theta_2}{1+\theta_1^2+\theta_2^2},&k=2\\ \\ 0 &k=3,4,\dots\end{cases} \] ### \(\theta_1>0, \theta_2<0\)
acfplot(ma=c(1, -0.3))
acfplot(ma=c(-0.5, 0.3))
acfplot(ma=c(0.5, 0.3))
acfplot(ma=c(-0.5, -0.3))
Los procesos autorregresivos AR(p) tienen el formato \[y_t = c + \phi_1y_{t-1} + \dots + \phi_py_{t-p}+\epsilon_t \]
El autocorrelograma es \[\text{ACF(k)} \equiv\rho_k = \phi_1^k \]
acfplot(ar=0.9)
acfplot(ar=-0.8)
El autocorrelograma es \[\text{ACF(k)} \equiv\rho_k = \begin{cases}\frac{\phi_1}{1-\phi_2},&k=1\\ \\ \phi_1\rho_1+\phi_2,&k=2\\ \\ \phi_1\rho_{k-1} + \phi_2\rho_{k-2} &k=3,4,\dots\end{cases} \] ### \(\phi_1>0, \phi_2>0\)
acfplot(ar=c(0.5, 0.4))
acfplot(ar=c(-0.5, 0.2))
acfplot(ar=c(0.9, -0.3))
acfplot(ar=c(-0.5, -0.3))
Los procesos autorregresivos-media móvil ARMA(p,q ) tienen el formato \[y_t = c + \phi_1y_{t-1} + \dots + \phi_py_{t-p}+\epsilon_t + \theta_1\epsilon_{t-1} + \dots + \theta_q\epsilon_{t-q}\]
acfplot(ar=0.8, ma=0.4)
acfplot(ar=0.8, ma=-0.4)
acfplot(ar=-0.8, ma=0.4)
acfplot(ar=-0.8, ma=-0.4)