Series temporales lineales Estacionariedad y caracterización Predicción Series de tiempo I Procesos univariados y estacionarios Gabriel V. Montes-Rojas Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA La estructura de las series temporales Series temporales Información para diferentes periodos indexados por el tiempo t, pero para el mismo individuo (paı́s, firma) { yt , xt } T t =1 , donde t indica tiempo. Ej: Inflación. Precio del barril de petróleo. PBI. La estructura temporal es importante: el pasado afecta el presente (y el futuro) pero no al revés. En un modelo de regresión: yt = β 0 + β 1 xt + ut , t = 1, 2, ..., T {ut }T t =1 puede que no sea i.i.d. (independiente e idénticamente distribuido). Correlación serial de los errores en regresión. Gabriel Montes-Rojas Series de tiempo I Ruido blanco AR MA STATA Series temporales lineales Estacionariedad y caracterización Predicción Series temporales lineales La serie temporal más simple se llama ruido blanco: {at } es ruido blanco si es una secuencia de variables aleatorias i.i.d. con 1 E [at ] = 0, ∀t 2 Var [at ] = σa2 , ∀t Una serie de tiempo es lineal si ∞ rt = µ + ∑ ψi at −i , i =0 donde ψ0 = 1 y {at } es ruido blanco. at es la nueva información que se adquiere en t, también llamada innovación o shock. ψ son los “pesos” de las innovaciones del pasado en el presente. - Ejercicio: Calcular E [rt ], Var [rt ] y Cov [rt , rt −j ], j = 0, 1, 2, .... Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA Procesos autoregresivos Consideremos un proceso autoregresivo de orden 1, AR(1) yt = φ0 + φ1 yt −1 + et , t = 1, 2, ... donde {et : t = 0, 1, ...} es una secuencia de errores i.i.d. con media cero (E [et ] = 0) y varianza finita (Var [et ] = σe2 ) (o sea ruido blanco) Asumamos que |φ1 | < 1. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA Procesos autoregresivos Procesos autoregresivos de orden 1, AR(1) Notar que estos procesos tienen memoria infinita, es decir, el valor actual depende de todos los shocks pasados. Veamos: yt = φ0 + φ1 yt −1 + et = φ0 + φ1 (φ0 + φ1 yt −2 + et −1 ) + et = φ0 (1 + φ1 ) + φ12 yt −2 + et + φ1 et −1 = φ0 (1 + φ1 ) + φ12 (φ0 + φ1 yt −3 + et −2 ) + et + φ1 et −1 ∞ = ... = φ0 ∞ ∑ φ1 (φ0 + et −j ) = 1 − φ1 + ∑ φ1 et −j j j j =0 j =0 Nota: Se puede mostrar que los AR(1) son equivalentes a los promedios móviles (ver abajo) de orden infinito. Entonces los procesos AR se dicen invertibles. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA Procesos autoregresivos Procesos autoregresivos de orden 1, AR(1) Asumamos por ahora que el proceso es débilmente estacionario (definiciones abajo). Entonces: E [ yt ] = φ0 1 − φ1 Var [yt ] = Var [φ0 + φ1 yt −1 + et ] = Var [φ1 yt −1 + et ] = φ12 Var [yt −1 ] + σe2 = Gabriel Montes-Rojas σe2 1 − φ12 Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA Procesos autoregresivos Procesos autoregresivos de orden 1, AR(1) Definamos la función de autovarianzas de k lags como γk = Cov [yt , yt −k ] = Cov [yt , yt +k ] (Notar que γ0 = Cov [yt , yt ] = Var [yt ]) γ1 = Cov [yt −1 , yt ] = Cov [yt −1 , φ0 + φ1 yt −1 + et ] = φγ0 = φ1 σe2 1 − φ12 γ2 = Cov [yt −2 , yt ] = Cov [yt −2 , φ0 (1 + φ1 ) + φ12 yt −2 + et + φet −1 ] = φ2 γ0 = φ12 σe2 1 − φ12 ...... φk σ 2 γk = φ1k γ0 = 1 e2 1 − φ1 Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA Procesos autoregresivos Procesos autoregresivos de orden p, AR(p) yt = φ0 + φ1 yt −1 + φ2 yt −2 + ... + φp yt −p + et , t = p, p + 1, ... donde {et : t = 0, 1, ...} es una secuencia de errores i.i.d. con media cero (E [e ] = 0) y varianza finita (Var [et ] = σe2 ) (o sea ruido blanco) Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA Promedios móviles Promedios móviles de orden 1 MA(1) (MA:moving average) xt = µ + et + α1 et −1 , t = 1, 2, ... donde {et : t = 0, 1, ...} es ruido blanco. xt es un promedio ponderado de et y et −1 . Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA Promedios móviles Promedios móviles de orden q MA(q) xt = µ + et + α1 et −1 + α3 et −3 + α3 et −3 ... + αq et −q , t = q, q + 1, ... donde {et : t = 0, 1, ...} es ruido blanco. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA Promedios móviles Promedios móviles de orden MA(q) E [xt ] = µ Var [xt ] = σe2 + α21 σe2 + ... + α2q σe2 = σe2 (1 + α21 + ... + α2q ) Propiedad de los procesos MA(q): Cov [xt , xt −k ] 6= 0, si k ≤ q Cov [xt , xt −k ] = 0, si k > q Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA Procesos ARMA Un proceso ARMA(p, q ) se define como p yt = φ0 + ∑ φi yt −p + et + i =1 q ∑ αj at −q j =1 donde {et } es ruido blanco. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA ¿Cómo usar series temporales en STATA? Organizar los datos correctamente en Excel. Luego copiar & pegar a STATA. TIME YVAR XVAR 1 y1 x1 2 y2 x2 3 y3 x3 Tipear tsset TIME esto reconoce TIME como t, el indicador del tiempo [Ver http://www.stata.com/help.cgi?tsset] Para usar variables con rezagos/lags se debe usar L. para t − 1, L2. para t − 2, etc. (o sea Lj para j=1,2,3,...) Por ejemplo L.YVAR corresponde a YVARt −1 . Para usar variables en (primeras) diferencias se debe usar D. Por ejemplo, D.YVAR corresponde a ∆YVARt = YVARt − YVARt −1 . [Se puede combinar D. y L.] Ejemplo: regresión para AR(2): reg YVAR L.YVAR L2.YVAR Modelo ARMA(p, q ): arima YVAR, arima(p,0,q) Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA Contrastes para ruido blanco Supongamos el siguente contraste: H0 : yt sigue un ruido blanco HA : yt no sigue un ruido blanco En STATA: wntestb YVAR (Contraste de Bartlett) wntestq YVAR (Contraste de Portmanteau) Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA ¿Cómo simular AR(1) en STATA? clear global T=1000 set obs $T gen t= n tsset t gen et=rnormal(0,1) gen yt=. replace yt=et in 1 global phi=0.5 forvalues i=2(1)$T { quietly replace yt=$phi*yt[‘i’-1]+et[‘i’] in ‘i’ } line yt t Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA ¿Cómo simular AR(2) en STATA? clear global T=1000 set obs $T gen t= n tsset t gen et=rnormal(0,1) gen yt=. replace yt=et in 1 replace yt=et in 2 global phi1=0.5 global phi2=0.25 forvalues i=3(1)$T { quietly replace yt=$phi1*yt[‘i’-1]+$phi2*yt[‘i’-2]+et[‘i’] in ‘i’ } line yt t Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Ruido blanco AR MA STATA ¿Cómo simular MA(1) en STATA? clear global T=1000 set obs $T gen t= n tsset t gen et=rnormal(0,1) gen xt=. replace xt=et in 1 global alpha=0.5 forvalues i=2(1)$T { quietly replace xt=et+$alpha*et[‘i’-1] in ‘i’ } line xt t Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información Estacionariedad estricta Procesos estrictamente estacionarios:: El proceso {xt : t = 1, 2, ...} es estrictamente estacionario si para cada colección de ı́ndices de tiempo 1 ≤ t1 ≤ t2 ≤ ... ≤ tm , la distribución conjunta (x1 , x2 , ..., xm ) es la misma que la de (x1+h , x2+h , ..., xm+h ) para todo h ≥ 1. - En otras palabras, la distribución es invariante en el tiempo. - Es un supuesto fuerte. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información Estacionariedad débil Procesos de estacionariedad débil: El proceso {xt : t = 1, 2, ...} con momento segundo finito E [xt2 ] < ∞ es débilmente estacionario si (i) E [xt ] es constante; (ii) Var [xt ] es constante; y (iii) para cualquier t, h ≥ 1, Cov [xt , xt +h ] depende solo de h pero no de t. - Nota: estacionariedad estricta implica estacionariedad débil. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información Procesos débilmente dependientes Procesos débilmente dependientes: El proceso estocástico {xt : t = 1, 2, ...} es débilmente dependiente si xt y xt +h se vuelven independientes (leer la covarianza es 0) cuando h → ∞. O sea: Cov [xt , xt +h ] → 0 cuando h → ∞ (no correlacionados asintóticamente) Ejercicio: probar que los procesos AR(p) y MA(q) son débilmente dependientes. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información Caracterización de series temporales ¿Cómo identificar el orden de una serie temporal? Para procesos MA usar la función de autocorrelación. Para procesos AR usar la función de autocorrelación parcial. Para procesos ARMA es más complicado... función de autocorrelación extendida (ver libro de Tsay, p.66) Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información La función de autocorrelación o correlograma ρk ≡ γ Cov [yt , yt +k ] = k Var [yt ] γ0 (note que ρ0 = 1) ρ̂k = −k ∑T t =1 (yt − ȳ )(yt +k − ȳ ) −k 2 ∑T t =1 (yt − ȳ ) Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información La función de autocorrelación o correlograma Considere la hipótesis H0 : ρk = 0. Bajo la hipótesis nula ρ̂k ∼ N (0, 1/T ) (resultado de Bartlett). Considere la hipótesis H0 : ρk = 0 all k = 1, 2, ..., K . Bajo la 2 2 hipótesis nula Q = T ∑K k =1 ρ̂k ∼ χK . En STATA: tsset TIME ac YVAR corrgram YVAR (Nota: TIME es la variable elegida para definir al tiempo. YVAR es una variable serie temporal.) Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información La función de autocorrelación o correlograma La función de autocorrelación es útil para ver la existencia de ciclos. Por ejemplo, si la autocorrelación es alta cada ciclos de 12 meses, entonces la serie depende de lo que paso hace un año. Si esto fuera ası́ habrı́a alta correlación entre yt con yt −12 , yt +12 , yt −24 , yt +24 , yt −36 , yt +36 .... Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información La función de autocorrelación parcial Consideremos un AR(p) γk = Cov [yt −k , φ1 yt −1 + φ2 yt −2 + ... + φp yt −p ] Tomemos k = 0, 1, ..., p, para obtener p + 1 ecuaciones que se resuelven para γ0 , γ1 , ..., γp γ0 = φ1 γ1 + φ2 γ2 + ... + φp γp + σe2 γ1 = φ1 γ0 + φ2 γ1 + ... + φp −1 γp −1 ......... γp = φ1 γp −1 + φ2 γp −2 + ... + φp γ0 Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información La función de autocorrelación parcial Dividiendo por γ0 , obtenemos las ecuaciones de Yule-Walker ρ1 = φ1 + φ2 ρ1 + ... + φp ρp −1 ......... ρp = φ1 ρp −1 + φ2 ρp −2 + ... + φp ρk = φ1 ρp −k + φ2 ρp −k + ... + φp ρk −p , k > p Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información La función de autocorrelación parcial El orden p no se conoce. Entonces se resuelve las ecuaciones de Yule-Walker para valores sucesivos de p. Asumiendo p = 1 obtenemos â1 = φ̂1 Asumiendo p = 2 obtenemos φ̂1 , φ̂2 entonces â2 = φ̂2 Asumiendo p = 3 obtenemos φ̂1 , φ̂2 , φ̂3 entonces â3 = φ̂3 Para graficar â1 , â2 , â3 , .... En STATA: pac YVAR Para test de hipótesis H0 : ak = 0, usamos âk ∼ N (0, 1/T ) Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Estacionariedad Caracterización Criterios de información Criterios de información para elegir rezagos/lags Criterios de información Supongamos un modelo con k parámetros, T es el tamaño de la muestra y ln(L) el logaritmo de la función de verosimilitud (log-likelihood). Los modelos de información cumplen un rol similar al R 2 ajustado, donde se penalizan la inclusión de parámetros (parsimonia: es preferible un modelo con menos parámetros que con más.) Criterio de información de Akaike/Akaike information criterion (AIC): 2k − ln(L) (idea similar al R 2 ajustado) Criterio de información bayesiano/Bayesian information criterion (BIC) or Schwarz criterion (also SBC, SBIC): kln(T ) − 2ln(L) Rezagos/lags son seleccionados para minimizar AIC o BIC. Notar que AIC ≥ BIC . Entonces en general AIC selecciona más parámetros que BIC. En STATA: Luego de estimar el modelo (ej. arima YVAR, arima(p,0,q)): estat ic En el caso de que se quiera modelar solo con procesos AR: varsoc YVAR Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Predicción STATA Predicción (forecasting) Uno de los usos fundamentales de las series temporales es predecir el futuro. La teorı́a tradicional de predicción se basa en dos supuestos: 1 El modelo econométrico es una buena representación del modelo económico (o de la realidad económica); 2 La estructura económica permanecerá relativamente estable en el futuro. En base a estos supuestos entonces: La mejor predicción se basa en el modelo que mejor “explica” los datos dentro de la muestra (in sample). Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Predicción STATA Predicción (forecasting) Supongamos que tenemos la serie {yt }T t =0 y queremos predecir los valores futuros de yt . Por ejemplo, la predicción un periodo hacia adelante (one-step-ahead) yT +1 , ŷT +1 (siempre le agregamos un sombrero a las variables/parámetros a predecir) Supongamos que Ξt es el conjunto de información en el momento t. Esto incluye yt y todos sus valores anteriores {y0 , y1 , ..., yt −1 } (y otras variables si la hubiere).1 ¿Cuál es la mejor manera de predecir yT +1 ? 1 En general se usa la terminologı́a campo sigma o en inglés sigma-field para denotar toda la información disponible. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Predicción STATA Predicción (forecasting) Consideremos el modelo yt = β 0 + β 1 zt + ut En T + 1, esta ecuación es yT +1 = β 0 + β 1 zT +1 + uT +1 . Si zT +1 es conocida y E [uT +1 |ΞT ] = 0, entonces E [yT +1 |ΞT ] = β 0 + β 1 zT +1 Esta es la predicción condicional en zT +1 . Si consideramos E [ yT + 1 | Ξ T ] = β 0 + β 1 E [ zT + 1 | Ξ T ] Esta es la predicción sin condicionar, o sea, también necesitamos ver que pasa con la variable z en T + 1. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Predicción STATA Predicción (forecasting) Supogamos un modelo AR(1) yt = φ0 + φ1 yt −1 + at , E [at |Ξt −1 ] = 0. Entonces, One-step-ahead forecast: ŷT (1) = φ̂0 + φ̂1 yT . Para modelos de MCO, ŷT (1) = E [yT +1 |ΞT ]. Error de predicción (forecast error): êT (1) = yT +1 − ŷT (1) (siempre es de esperar un error de predicción). Usando la propiedad anterior: Var (êT (1)|ΞT ) = σa2 . 95% intervalo de predicción: ŷT (1) ± 1.96 ∗ se (êT (1)|ΞT ) (donde se es error estándar, o sea, la raı́z cuadrada de la varianza del error) Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Predicción STATA Predicción (forecasting) Para predecir más periodos se debe hacer de forma iterativa. En general, cuanto más lejana es la predicción menos precisa va a ser: si s < t entonces Var [yt +1 − E [yt +1 |Ξt ]] ≤ Var [yt +1 − E [yt +1 |Ξs ]]. Entonces para construir ŷT +2 usamos ŷT (2) = φ̂0 + φ̂1 ŷT (1) = (1 + φ̂1 )φ̂0 + φ̂12 yT φ Notar que los modelos AR estacionarios satisfacen: lim`→∞ yT (`) = E [yT ] = 1−0φ , o sea que la 1 predicción a largo plazo debe acercarse a la media no condicional (la información por condicionar en el pasado deja de ser importante). Esta propiedad se conoce como reversión a la media (mean reversion). Ver más adelante los procesos de raı́ces unitarias donde esto no se cumple. Var (eT (2)) = Var (yT +2 − ŷT (2)) = (1 + φ12 )σa2 Notar que Var (eT (2)|ΞT ) ≥ Var (eT (1)|ΞT ). En general, el error se incrementa reflejando que sabemos menos del futuro: Var (eT (`)) ≥ Var (eT (h)) si ` > h. Para los procesos AR estacionarios la varianza condicional se vuelve la varianza sin condicionar. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Predicción STATA STATA Para modelos AR, usar el comando var y luego Para predicción sin condicionar se debe usar fcast compute fcast graph Para predicción condicional se debe usar (y las variables exógenas deben estar previamente especificadas) predict Para la predicción son tan importantes los estimadores puntuales como el intervalo de confianza. Para ello se debe especificar la opción level(##) donde ## es el nivel de significancia: por default es 95%. La predicción empieza por default en T + 1. Pero se puede especificar el momento dentro de la muestra a partir del cual empieza la predicción usando la opción dynamic(TIME), donde TIME es el tiempo a partir del cual se predice. Para modelos MA, estimar usando el comando arima y luego predict. Gabriel Montes-Rojas Series de tiempo I Series temporales lineales Estacionariedad y caracterización Predicción Predicción STATA Ejemplo: Predicción de inversión a largo plazo Consideremos un modelo de inversión: webuse lutkepohl2, clear tsset qtr /*los datos son trimestrales, la variable tiempo se llama qtr*/ var inv, lags(1/3) /*serie de inversión modelada con AR(3)*/ fcast compute hat, step(8) /*esto crea una nueva variable hatinv, 8 periodos hacia adelante*/ fcast graph hatinv Veamos ahora un gráfico interesante, usando qtr ≤ 80 para estimar y qtr ∈ [81, 91] para predecir (in-sample forecast) var inv if qtr<=80, lags(1/3) /*serie de inversión modelada con AR(3), pero solo para qtr<=80*/ fcast compute hat80, step(8) /*esto crea una nueva variable hatinv80, 8 periodos hacia adelante pero empezando desde qtr = 81*/ fcast graph hat80inv, observed También se podrı́a haber usado fcast compute hat80b, step(8) dynamic(81) /*¿Cuál es la diferencia con lo anterior?*/ Gabriel Montes-Rojas Series de tiempo I