Para hacer inferencias estadísticas en la estructura de un proceso estocástico (o serie de tiempo) sobre el histórico observado del proceso, normalmente se deben hacer algunas suposiciones simplificadoras (y presumiblemente razonables) sobre esa estructura. El supuesto más importante es el de estacionariedad.
Dicho concepto tendrá dos versiones:
- Estacionariedad fuerte
- Estacionariedad débil
Estacionariedad Fuerte y Débil.
Una serie de tiempo se puede ver como un proceso estocástico, se dice que es estacionario si su media y varianza son constantes en el tiempo y si el valor de la covarianza entre 2 periodos depende sólo de la distancia o rezago entre los tiempos.
Sea \(Y_t\) una serie de tiempo con las siguientes propiedades se dice que es debilmente estacionaria o simplemente estacionaria:
- \(E(y_t)\) es constante para todo \(t\).
- \(Var(y_t)\) es constante para todo \(t\) y,
- \(Cov(y_t,y_{t+h})\) sólo depende de \(h\) para cualquier \(t\)
La condición adicional para que una serie de tiempo sea fuertemente estacionaria es que la distribución conjunta de \(Y_{t_1},Y_{t_2}, \cdots, Y_{t_n}\) es la misma que la distribución conjunta de \(Y_{t_1-k}, Y_{t_2-k}, \cdots, Y_{t_n-k}\) para todas las opciones de puntos de tiempo \(t_1, t_2, \cdots, t_n\) y todas las opciones de rezago temporal \(k\). es decir, la distribución sólo depende de la diferencia de tiempo \(h\) y no del tiempo \((t_1,...,t_k)\)
En la práctica, buscamos que los datos sean estacionarios para poder proseguir con el tratamiento estadístico de los mismos.
La estacionariedad es un concepto fundamental para el análisis de las series de tiempo.
La estacionariedad significa que el proceso mediante el cual se crearon los datos, es constante en el tiempo.
CUIDADO: Esto no significa que los datos no puedan cambiar. Significa que los supuestos distribucionales del mecanismo que genera los datos son constantes en el tiempo.
El punto de partida de la metodología Box-Jenkins es la estacionariedad. De ahí su importancia práctica.
Librerias
library(foreign)
library(ggfortify)
library(forecast)
library(gridExtra)
library(seasonal)
library(lattice)
library(zoo)
library(urca)
library(dynlm)
Asi se ve la no estacionariedad
“No estacionariedad”
Estacionariedad vs no estacionariedad
RUIDO BLANCO
El objetivo de las Series Temporales es descomponer la serie observada en dos partes: una es la parte dependiente del pasado y la otra la parte impredecible
\(Y_t=f(Y_{(t-1)}, Y_{(t-2)},....,Y_1)+ a_t\)
Si todas las series que observamos en la realidad fuesen Ruido Blanco serían impredecibles y no habría ningún modelo que proponer.
Un Ruido Blanco es una serie tal que su media es cero, la varianza es constante y es incorrelacionada.
- \(E(a_t)=0\)
- \(Var(a_t)=\sigma_a^2\)
- \(cov(a_t,a_{t+_h})=0\)
Se trata de un proceso en el que todas sus variables son independientes.
Ejemplo Ruido Blanco
Generamos los datos
=rnorm(1000,0,1) ruido_blanco
Graficamos la serie de tiempo
plot.ts(ruido_blanco, main="Ejemplo de Ruido Blanco", xlab="Tiempo", ylab="Valores",col="6")
Otra forma de simular ruido blanco
set.seed(123)
= arima.sim(n = 1000,
ruido_blanco list(order = c(0,0,0)))
plot(ruido_blanco)
MODELOS
Uno de los modelos de tipo ARIMA más simples es un modelo en el que utilizamos un modelo lineal para predecir el valor en el momento actual utilizando el valor en el momento anterior. Esto se llama un modelo AR (1) , que significa modelo autorregresivo de orden 1 . El orden del modelo indica cuántas veces anteriores usamos para predecir el tiempo presente.
Modelo AR(\(1\))
teóricamente, el modelo AR (\(1\)) está escrito
\[x_t = \delta + \phi_1 x_{t-1} + w_t\]
\(w_t \overset{iid}{\sim} N(0, \sigma^2_w)\) lo que significa que los errores se distribuyen independientemente con una distribución normal que tiene media 0 y varianza constante
Propiedades de los errores. \(w_t\) son independientes de \(x\).
AR(2)
\[x_t = \delta + \phi_1 x_{t-1}+ \phi_2 x_{t-2} + w_t\]
AR(p)
\[x_t = \delta + \phi_1 x_{t-1}+ \phi_2 x_{t-2}+ \cdots\phi_{t-p} + w_t\]
Función de autocorrelación (ACF)
El ACF de la serie da correlaciones entre \(x_t\) y \(x_{t-h}\) para \(h= 1, 2, 3\), etc.
Teóricamente, la autocorrelación entre \(x_t\) y \(x_{t-h}\) es igual
\[\dfrac{\text{Covariance}(x_t, x_{t-h})}{\text{Std.Dev.}(x_t)\text{Std.Dev.}(x_{t-h})} = \dfrac{\text{Covariance}(x_t, x_{t-h})}{\text{Variance}(x_t)}\]
Función de autocorrelación parcial PACF
En general, una correlación parcial es una correlación condicional. Es la correlación entre dos variables bajo el supuesto de que conocemos y tenemos en cuenta los valores de algún otro conjunto de variables.
Más formalmente, podemos definir la correlación parcial que se acaba de describir como
Para una serie temporal, la autocorrelación parcial entre \(x_t\) y \(x_{t-h}\) se define como la correlación condicional entre \(x_t\) y \(x_{t-h}\) condicionado a \(x_{t-h+1}\) , …,\(x_{t-1}\) , el conjunto de observaciones que se encuentran entre los puntos de tiempo \(t\) y \(t-h\)
La autocorrelación parcial de primer orden se definirá para que sea igual a la autocorrelación de primer orden.
El 2nd autocorrelación parcial orden (lag) es
\[\dfrac{\text{Covariance}(x_t, x_{t-2}| x_{t-1})}{\sqrt{\text{Variance}(x_t|x_{t-1})\text{Variance}(x_{t-2}|x_{t-1})}}\]
Propiedades de la AR (1)
La media (teórica) de \(x_t\) es: \(E(x_t)=\mu = \dfrac{\delta}{1-\phi_1}\)
La varianza de \(x_t\) es: \(\text{Var}(x_t) = \dfrac{\sigma^2_w}{1-\phi_1^2}\)
La correlación \(h\) entre observaciones períodos de tiempo separados es \(\rho_h = \phi^h_1\)
Esto define el ACF teórico para una variable d
¡Nota! \(\phi_1\) es la pendiente en el modelo AR (\(1\)) y ahora vemos que también es la autocorrelación de retraso 1
Simular modelo autoregresivo AR(\(1\)) con \(\phi\) = 0.5
\[y_t = 0.5 * y_{t-1} + w_t\]
set.seed(123)
= arima.sim(n = 1000, list(ar = 0.5))
ar1 par(mfrow = c(1,3))
plot(ar1)
acf(ar1)
pacf(ar1)
ggtsdisplay(ar1)
simular un AR(\(1\)) serie autoregresiva con \(\phi\) = -0.9
El modelo es: \[y_t = -0.9 * y_{t-1} + w_t\]
set.seed(123)
= arima.sim(n = 1000, list(ar = -0.9))
ar2 ggtsdisplay(ar2)
Otra simulación con \(\phi=0.1\)
set.seed(123)
= arima.sim(n = 1000, list(ar = 0.1))
ar3 ggtsdisplay(ar3)
Otra simulación con \(\phi=0.1\)
set.seed(123)
= arima.sim(n = 1000, list(ar = 0.6))
ar4 ggtsdisplay(ar4)
Simulaciones de un de un AR(2)
set.seed(123)
= arima.sim(n = 1000, list(ar = c(0.1,0.5)))
ar4 ggtsdisplay(ar4)
set.seed(123)
= arima.sim(n = 1000, list(ar =c(-0.7, 0.2)))
ar5 ggtsdisplay(ar5)
Modelos de media móvil (MA)
MA(\(1\))
\[x_t = \mu + w_t -\theta_1w_{t-1}\]
\(w_t \overset{iid}{\sim} N(0, \sigma^2_w)\)
MA(2)
\[x_t = \mu + w_t +\theta_1w_{t-1}+\theta_2w_{t-2}\]
\(w_t \overset{iid}{\sim} N(0, \sigma^2_w)\)
MA(q)
\[x_t = \mu + w_t +\theta_1w_{t-1}+\theta_2w_{t-2}+\dots + \theta_qw_{t-q}\]
¡Nota! Muchos libros de texto y programas de software definen el modelo con signos negativos antes de \(\theta\). Esto no cambia las propiedades teóricas generales del modelo, aunque sí cambia los signos algebraicos de los valores de coeficientes estimados y (no cuadrado)términos en fórmulas para ACF y variaciones.
Propiedades teóricas de una serie temporal con un modelo MA (\(1\))
- La media es \(E(x_t)=\mu\)
- La varianza es \(Var(x_t)= \sigma^2_w(1+\theta^2_1)\)
- La función de autocorrelación (ACF) es: \(\rho_1 = \dfrac{\theta_1}{1+\theta^2_1}, \text{ and } \rho_h = 0 \text{ for } h \ge 2\)
Nota! Que el único valor distinto de cero en el ACF teórico es para el retraso 1 . Todas las demás autocorrelaciones son 0. Por lo tanto, una muestra de ACF con una autocorrelación significativa solo en el retraso 1 es un indicador de un posible modelo de MA (\(1\)).}
Simulaciones \(1\)
MA(\(1\)) con \(\theta=0.7\)
set.seed(123)
= arima.sim(n = 1000, list(ma =0.7))
ma1 ggtsdisplay(ma1)
set.seed(123)
= arima.sim(n = 1000, list(ma =-0.9))
ma2 ggtsdisplay(ma2)
MA(2)
set.seed(123)
= arima.sim(n = 1000, list(ma =c(-0.9,0.5)))
ma3 ggtsdisplay(ma3)