EJEMPLO DE APLICACIÓN DE MODELIZACIÓN ARIMA A LA SERIE DE COTIZACIONES DIARIAS DE TERRA - LYCOS NOVIEMBRE 1999 A JUNIO 2001 CURSO DE TÉCNICAS DE PREVISIÓN DE VARIABLES FINANCIERAS PROGRAMA CITIUS Junio 2001 Prof. Rafael de Arce Dpto. de Economía Aplicada rafael.dearce@uam.es MODELIZACIÓN DE LA COTIZACIÓN DIARIA DE TERRALYCOS DESDE EL 18/11/99 HASTA EL 25/06/01 El objetivo de este documento es ilustrar el empleo de un modelo ARIMA para la predicción de la evolución diaria de un activo financiero. En este caso se han tomado los valores de la empresa TERRA-LYCOS. A lo largo del documento se irán indicando los procedimientos seguidos en el programa e-views para obtener la información que aparece y se comenta. Las instrucciones utilizadas en la barra de E-views para la obtención de la salida correspondiente se escriben en azul y en cursiva. Los pasos que se exponen intentarán cubrir las siguientes etapas en la identificación de un modelo ARIMA: A. Determinación de la estacionariedad en media y en varianza de la serie a modelizar: filtrado y análisis de orden de integación. B. Identificación de la serie a partir del correlograma y por comparación con los modelos teóricos elementales. C. Estimación del modelo propuesto en la fase (B) y comprobación de la presencia de un ruido blanco. D. Predicción con el modelo propuesto A.- PROCURANDO LA ESTACIONARIEDAD EN MEDIA Y EN VARIANZA Estacionariedad en media PRIMER GRÁFICO DE LA SERIE ORIGINAL: CONSTRATACIÓN DE DOS TENDENCIAS (Plot ultimo) 160 140 120 100 80 60 40 20 0 50 100 150 200 250 ULT I MO 300 350 400 Para comenzar el análisis se propone hacer el gráfico de la serie original ya que, intuitivamente, si dicho gráfico presenta algún tipo de tendencia, ésta será signo claro de no estacionariedad en media; es decir, la media no será constante para todas las observaciones del proceso aleatorio a modelizar. En el ejemplo propuesto (la serie es la del valor de cierre diario de la acción de TERRALYCOS, al que hemos llamado “ultimo”), es clara la presencia de dos momentos de tendencias opuestas. La primera se produce desde el inicio de la serie hasta la observación 67 (para ver la serie se puede escribir el comando show ultimo y comprobar así que, efectivamente, es el punto 67 donde se alcanza el máximo del primer período ascendente). La segunda ocurre desde la observación 68 hasta el final del período. Además, la primera tendencia podría quedar bien definida de forma lineal; mientras que la segunda se asemejaría más a una tendencia parabólica. En cualquier caso, esto se puede comprobar haciendo ambas (u otras) para cada período y observando el R cuadrado obtenido y su ajuste gráfico. Después de comprobar con un ajuste lineal, uno parabólico, uno exponencial, etc, se determinó que el mejor ajuste posible era uno lineal hasta la observación 67 y otro parabólico desde la observación 68 hasta el final. Para distinguir ambas situaciones, se generó una variable ficticia 1,...DESDEOBS67 FICDESDE68 0.............RESTO para generar dicha variable se siguió la siguiente secuencia de valores en e-views: SMPL 1 400 GENR FICDESDE68 = 0 SMPL 68 400 GENR FICDESDE68 = 1 SMPL 1 400 Para describir la tendencia lineal del primer período (hasta la observación 67), se generó la siguiente variable: 1,2,3,4,...HASTAOBS67 FIC67 0.............RESTO la cadena de comandos empleados en E-views fue la siguiente: SMPL 1 400 GENR FIC67 = 0 SMPL 1 1 GENR FIC67 = 1 SMPL 2 67 GENR FIC67 = 1+FIC67(-1) SMPL 1 400 El resultado de estimar el modelo propuesto para la tendencia fue el siguiente (LS ULTIMO C FIC67 FICDESDE68 @TREND @TREND()^2) Dependent Variable: ULTIMO Method: Least Squares Sample: 1 400 Included observations: 400 Variable Coefficient Std. Error t-Statistic Prob. C FIC67 FICDESDE68 @TREND() @TREND()^2 15.73859 2.414181 126.2561 -0.734680 0.001025 2.335531 0.064977 3.894582 0.029691 6.27E-05 6.738765 37.15426 32.41840 -24.74460 16.36686 0.0000 0.0000 0.0000 0.0000 0.0000 R-squared Adjusted R-squared S.E. of regression Sum squared resid Log likelihood Durbin-Watson stat 0.916777 0.915934 9.451406 35284.98 -1463.525 0.129704 Mean dependent var S.D. dependent var Akaike info criterion Schwarz criterion F-statistic Prob(F-statistic) 42.51412 32.59763 7.342625 7.392518 1087.817 0.000000 GRÁFICO DE AJUSTE TENDENCIA Y RESIDUO (pulsando la solapa superior RESID) 150 100 40 50 20 0 0 -20 50 100 150 Residual 200 250 Act ual 300 350 400 F it t ed Dando por suficiente esta estimación de la tendencia (todos los parámetros son significativamente diferentes de cero a la luz del contraste t-estadístico y la R cuadrado es bastante elevada. Además, el gráfico nos muestra un buen grado de acompañamiento de la serie real – actual - y la tendencia propuesta – fitted -), obtenemos, empleando como serie filtrada de tendencia el residuo de esta regresión, una serie con media constante. Se emplea como serie filtrada de tendencia (es decir, serie estacionaria en media) la diferencia entre la serie original y esta tendencia estimada; es decir, el residuo de la regresión anterior. ULTIMOI TENDENCIAI FILTRADAI FILTRADAI ULTIMOI TENDENCIAI Para guardar la serie del residuo de forma que el propio e-vierws no la vaya cambiando al hacer nuevas regresiones, escribimos: MAKERESID FILTRADA Siendo esta nueva serie “FILTRADA” la que utilizaremos para la modelización ARIMA. Estacionariedad en varianza Para ello seguiremos las fases propuestas por Dolado y otros (1992) en la aplicación del contraste Ampliado de Dickey-Fuller, que se podrían resumir en las siguientes: 1. Determinar una regresión con términos autorregresivos suficientes para eliminar la posible autocorrelación en el residuo, así como con término independiente y variable de tendencia. Por supuesto, incluyendo la variable endógena (sin diferenciar) con un retardo. 2. Comprobar que, efectivamente, el residuo no está correlacionado (Durbin Watson). Si es así, comprobar la significatividad de la tendencia (t-estadística comparada con las tablas de McKinnon). Si no lo fuera, re-estimar el modelo suprimiendo esta variable explicativa. Si lo es, comprobar la significatividad del término constante y proceder del mismo modo. 3. Cuando, con o sin estos términos, hayamos cerrado este proceso, comparar el valor de la t-estadística de la variable endógena con los valores tabulados de Mckinnon. Si aceptamos la nulidad del parámetro (valor absoluto de la testadística inferior al de Mckinnon), diremos que la serie tiene por lo menos una raíz unitaria, siendo necesaria diferenciarla una vez para eliminarla. 4. En cualquier caso, deberemos comprobar, para la serie ya diferenciada por tener una raíz, si existe una segunda raíz, repitiendo el proceso ahora con la endógena igual a dos diferencias de la original. 1.- Aplicación del contraste al modelo no restringido más amplio posible: 4 FILTRADA FILTRADAt FILTRADAt 1 c at bFILTRADAt 1 FILTRADAt i i 1 En E-views: SHOW FILTRADA PULSAR EN “VIEW” Y EN LA OPCIÓN “Unit Root Test” La ventana siguiente preguntará cuantos retardos poner en el autorregresivo (cuatro por defecto) y sobre qué serie (en niveles, primeras diferencias o segundas diferencias). DÉJESE EN PRIMERAS DIFERENCIAS. INCLÚYASE TENDENCIA (TREND) Y CONSTANTE (INTERCEPT). El resultado es el siguiente: ADF Test Statistic -2.803379 1% Critical Value* 5% Critical Value 10% Critical Value -3.9853 -3.4229 -3.1341 *MacKinnon critical values for rejection of hypothesis of a unit root. Augmented Dickey-Fuller Test Equation Dependent Variable: D(FILTRADA) Method: Least Squares Sample(adjusted): 6 400 Included observations: 395 after adjusting endpoints Variable Coefficient Std. Error t-Statistic Prob. FILTRADA(-1) D(FILTRADA(-1)) D(FILTRADA(-2)) D(FILTRADA(-3)) D(FILTRADA(-4)) C @TREND(1) -0.051342 0.184603 -0.185851 -0.008835 -0.204581 -0.085285 0.000241 0.018314 0.049856 0.050574 0.050060 0.049381 0.326667 0.001408 -2.803379 3.702753 -3.674845 -0.176479 -4.142939 -0.261076 0.171174 0.0053 0.0002 0.0003 0.8600 0.0000 0.7942 0.8642 R-squared Adjusted R-squared S.E. of regresión Sum squared resid Log likelihood Durbin-Watson stat 0.130288 0.116839 3.190202 3948.827 -1015.183 1.940777 Mean dependent var S.D. dependent var Akaike info criterion Schwarz criterion F-statistic Prob(F-statistic) -0.022221 3.394675 5.175608 5.246120 9.687455 0.000000 Sobre este resultado hay que comentar: - A partir del contraste estadístico de Durbin-Watson (1,94), se puede confirmar que no hay autocorrelación o que el número de retardos elegido ha sido suficiente para eliminar ésta. Si no fuera así, habría que aumentar el número de retardos antes de seguir adelante, aunque cuatro son casi siempre suficientes. - El valor del ADF (2.803379) es inferior al de Mackinnon, por lo que podríamos sospechar la existencia de una raíz unitaria. Aún así, este punto no se puede confirmar hasta encontrarnos con un modelo en el que las explicativas sean significativas (tendencia y constante), ya que, por el momento, los estadísticos “t” están sesgados a la baja. - Por lo anterior, en siguiente lugar comprobaremos si ha de incluirse o no la explicativa tendencia (@trend(1)). Observando la t-stastistic parece claro que no1 y que la probabilidad de equivocarme cuando rechazo la hipótesis de nulidad del parámetro de esta variable es del 86,42%. Por ello, se vuelve a estimar este modelo, ahora sin incluir el término TREND o incluyendo sólo INTERCEPT. Repitiendo el proceso en E-Views, al llegar a esta pantalla: 1 Lo correcto sería comprobar esta t-statistic con las tablas de McKinnon al efecto, pero la diferencia sería muy pequeña, por lo que aquí miraremos directamente el valor comparado con la t de Student habitual. - La salida obtenida entonces es la siguiente ADF Test Statistic -2.804595 1% Critical Value* 5% Critical Value 10% Critical Value -3.4490 -2.8691 -2.5708 *MacKinnon critical values for rejection of hypothesis of a unit root. Augmented Dickey-Fuller Test Equation Dependent Variable: D(FILTRADA) Method: Least Squares Date: 06/27/01 Time: 17:29 Sample(adjusted): 6 400 Included observations: 395 after adjusting endpoints Variable Coefficient Std. Error t-Statistic Prob. FILTRADA(-1) D(FILTRADA(-1)) D(FILTRADA(-2)) D(FILTRADA(-3)) D(FILTRADA(-4)) C -0.051295 0.184623 -0.185811 -0.008828 -0.204490 -0.036588 0.018289 0.049793 0.050510 0.049998 0.049316 0.160349 -2.804595 3.707780 -3.678676 -0.176562 -4.146499 -0.228175 0.0053 0.0002 0.0003 0.8599 0.0000 0.8196 R-squared Adjusted R-squared S.E. of regression Sum squared resid Log likelihood Durbin-Watson stat 0.130222 0.119043 3.186219 3949.125 -1015.198 1.940792 Mean dependent var S.D. dependent var Akaike info criterion Schwarz criterion F-statistic Prob(F-statistic) -0.022221 3.394675 5.170620 5.231059 11.64815 0.000000 Es preceptivo ahora comprobar la significatividad del término constante. Como ocurre lo mismo que con la tendencia, deberemos estimar un modelo sin éste tampoco: El resultado de estimación es el siguiente: ADF Test Statistic -2.807441 1% Critical Value* 5% Critical Value 10% Critical Value -2.5708 -1.9403 -1.6161 *MacKinnon critical values for rejection of hypothesis of a unit root. Augmented Dickey-Fuller Test Equation Dependent Variable: D(FILTRADA) Method: Least Squares Date: 06/27/01 Time: 17:31 Sample(adjusted): 6 400 Included observations: 395 after adjusting endpoints Variable Coefficient Std. Error t-Statistic Prob. FILTRADA(-1) D(FILTRADA(-1)) D(FILTRADA(-2)) D(FILTRADA(-3)) D(FILTRADA(-4)) -0.051284 0.184719 -0.185718 -0.008760 -0.204343 0.018267 0.049731 0.050447 0.049936 0.049252 -2.807441 3.714355 -3.681424 -0.175422 -4.148929 0.0052 0.0002 0.0003 0.8608 0.0000 R-squared Adjusted R-squared S.E. of regression Sum squared resid Log likelihood Durbin-Watson stat 0.130106 0.121184 3.182345 3949.654 -1015.224 1.940787 Mean dependent var S.D. dependent var Akaike info criterion Schwarz criterion F-statistic Prob(F-statistic) -0.022221 3.394675 5.165691 5.216057 14.58262 0.000000 Donde ahora se puede contrastar si el parámetro de la variable original retardada es nulo o no a partir de las tablas de McKinnon. En el caso de confirmarse este extremo, hablaríamos de la existencia de una raíz o de que, por lo menos, la serie es integrada de orden uno. En nuestro ejemplo, el valor de la t-stastic (cociente entre el parámetro y la desviación típica del mismo estimadas) es superior en valor absoluto a los valores tabulados por McKinnon, por lo que rechazamos la nulidad del mismo. Es decir, decimos que la serie es ya integrada de orden cero o, lo que es lo mismo, ESTACIONARIA EN VARIANZA con una probabilidad del 99%. ADF Test Statistic -2.807441 1% Critical Value* 5% Critical Value 10% Critical Value -2.5708 -1.9403 -1.6161 B. IDENTIFICACIÓN DEL PROCESO GENERADOR DE DATOS O DE LA ESTRUCTURA ARIMA Una vez confirmadas, u obtenidas mediante las necesarias transformaciones, la estacionariedad en media y varianza de la serie, procedemos a identificar cuál es el proceso ARIMA que mejor se ajusta a la forma de la función de autocorrelación de esta serie a partir de las funciones de autocorrelación teóricas definibles para distintos procesos: AR(1) AR(2) MA(1) MA(2) ARMA(1,1) yt yt yt yt yt 0 1 yt 1 t 0 1 yt 1 2 yt 2 t 0 1 t 1 t 0 1 t 1 1 t 2 t 0 1 yt 1 2 t 2 t Por citar los más corrientes Escribimos la función de autocorrelación total y parcial de la serie FILTRADA en Eviews: IDENT FILTRADA (a la pregunta sobre el número de “lags” pondremos algo que nos permita comparar tres ejercicios completos, tanto en la parte regular como en la estacional). Este correlograma coincide de forma muy aproximada con el de un proceso AR(1), por lo que estimamos el modelo como: FILTRADAt 0 1FILTRADAt 1 t C. ESTIMACIÓN DEL MODELO PROPUESTO En E-views LS FILTRADA C AR(1), obteniéndose la siguiente salida: Dependent Variable: FILTRADA Method: Least Squares Date: 06/27/01 Time: 17:49 Sample(adjusted): 2 400 Included observations: 399 after adjusting endpoints Convergence achieved after 4 iterations Variable Coefficient Std. Error t-Statistic Prob. C AR(1) -0.623517 0.932811 2.490868 0.017760 -0.250321 52.52350 0.8025 0.0000 R-squared Adjusted R-squared S.E. of regression Sum squared resid Log likelihood Durbin-Watson stat Inverted AR Roots 0.874197 0.873880 3.335433 4416.670 -1045.790 1.633207 .93 Mean dependent var S.D. dependent var Akaike info criterion Schwarz criterion F-statistic Prob(F-statistic) -0.033326 9.392037 5.252082 5.272077 2758.718 0.000000 40 20 0 30 20 -20 10 0 -10 -20 50 100 150 Residual 200 250 Act ual 300 350 400 F it t ed Donde, el coeficiente del autorregresivo es significativo y el ajuste es del 87,4%. Si la identificación es plenamente correcta, el correlograma del residuo de esta regresión debe presentar un ruido blando, comprobable gráficamente o con el estadístico de Box Pierce o el de L-JUNG BOX2, siendo éste último el que aparece en la salida a la izquierda: 2 A partir de una serie de simulaciones sobre la Q de Box-Pierce, se comprobó que este estadístico podría estar infravalorando el nivel de significación a partir del cual se debe rechazar la existencia de un ruido IDENT RESID Sample: 1 400 Included observations: 399 Autocorrelation .|* *|. *|. *|. .|* .|. .|. .|. *|. .|. .|* .|. .|. .|* | | | | | | | | | | | | | | Partial Correlation .|* *|. .|. *|. .|* *|. .|. .|. .|. .|. .|* .|. .|. .|* | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 AC PAC Q-Stat Prob 0.181 -0.122 -0.090 -0.185 0.092 0.034 0.017 0.030 -0.071 0.021 0.121 0.044 -0.024 0.098 0.181 -0.161 -0.038 -0.189 0.162 -0.085 0.056 -0.023 -0.018 0.025 0.123 -0.005 -0.019 0.165 13.231 19.266 22.575 36.405 39.861 40.320 40.437 40.806 42.869 43.051 49.078 49.862 50.094 54.087 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 La hipótesis nula del contraste Q-Stat (L Jung-Box) es “No autocorrelación”. Observando el valor de la probabilidad (p-value) obtenida para este contraste (0.000), debemos rechazar dicha hipótesis nula, luego NO ESTAMOS ANTE UN RUIDO BLANCO AÚN. En cualquier caso, nos muestra una probabilidad igual a cero de que haya alguna autocorrelación en el residuo; es decir, afirma que estamos ante un Ruido Blanco. Así las cosas, debemos “aumentar” el modelo especificado incluyendo otros términos ARIMA visibles en el propio correlograma del RESID. Esto no es siempre una tarea sencilla y, con frecuencia, se realiza por ensayo y error, introduciendo ordenadamente distintas especificaciones y viendo si, con ellas, obtenemos un ruido blanco. En la actualidad, diversos programas realizan este proceso de un modo automático porque, ciertamente, resulta muy complejo poder observar alguna estructura ARIMA en los residuos una vez ya se ha estimado algún tipo de modelo. En nuestro caso, y después de varias “pruebas”, la especificación que da lugar a un ruido blanco es la siguiente: blanco. Por ello se propuso la corrección a la fórmula anterior que ahora por L Jung Box y que intenta paliar este problema de infravaloración. k Q * (k ) N·( N 2)· ( N t ) 1· rt2 k2 t 1 Con este criterio, valores de la “Q” experimental calculada según esta expresión superiores al valor tabulado de la chi-cuadrado nos llevarían a rechazar la existencia de un ruido blanco (los valores de la función de autocorrelación serían, globalmente, diferentes de cero). Dependent Variable: FILTRADA Method: Least Squares Sample (adjusted): 2 400 Included observations: 399 after adjustments Convergence achieved after 12 iterations MA Backcast: -2 1 C AR(1) MA(1) MA(2) MA(4) R-squared Adjusted R-squared S.E. of regression Sum squared resid Log likelihood F-statistic Prob(F-statistic) Coefficient Std. Error t-Statistic Prob. -0.766282 0.949856 0.222264 -0.155823 -0.194330 2.765659 0.018565 0.055380 0.053685 0.050132 -0.277070 51.16389 4.013432 -2.902527 -3.876388 0.7819 0.0000 0.0001 0.0039 0.0001 0.888522 0.887390 3.151725 3913.747 -1021.673 785.0805 0.000000 Inverted AR Roots Inverted MA Roots .95 .67 Mean dependent var S.D. dependent var Akaike info criterion Schwarz criterion Hannan-Quinn criter. Durbin-Watson stat -.05-.60i -.05+.60i -0.033326 9.392037 5.146229 5.196216 5.166026 1.992729 -.80 A la vista de la “probability” en el Q-stat que se muestra más abajo, aceptaremos ahora la hipótesis nula y afirmaremos que estamos ante un ruido blanco: p-value mayor que 0.05 por lo menos hasta el retardo 18 (recuérdese que es una serie diaria). Date: 03/22/13 Time: 11:25 Sample: 1 400 Included observations: 399 Autocorrelation .|. .|. .|. .|. .|. .|. .|. .|. *|. .|. .|* .|. *|. .|* .|. .|. | | | | | | | | | | | | | | | | Partial Correlation .|. .|. .|. .|. .|. .|. .|. .|. *|. .|. .|* .|. *|. .|* .|. *|. | | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 AC PAC Q-Stat Prob 0.002 -0.019 -0.053 -0.021 0.064 0.016 -0.003 0.054 -0.091 0.049 0.080 0.051 -0.069 0.131 -0.042 -0.053 0.002 -0.019 -0.053 -0.021 0.062 0.013 -0.003 0.061 -0.088 0.048 0.082 0.045 -0.075 0.158 -0.046 -0.073 0.0013 0.1531 1.2865 1.4623 3.1189 3.2276 3.2303 4.4311 7.8068 8.7794 11.435 12.492 14.485 21.585 22.333 23.485 0.971 0.926 0.732 0.833 0.682 0.780 0.863 0.816 0.554 0.553 0.408 0.407 0.341 0.088 0.099 0.101 .|. .|. | | .|. .|. | | 17 18 0.029 0.033 0.051 0.030 23.838 24.309 0.124 0.145 E. UTILIZACIÓN DEL MODELO PARA PREDECIR Ya se ha obtenido un modelo que se podría resumir como: Para predecir esta serie FILTRADA, hay que poner un SMPL a futuro y presionar el botón Forecast: Obtendremos entonces una serie de predicción llamada FILTRADAF. Para obtener la serie de las acciones de TERRA-LYCOS de predicción, deberemos incorporar a ésta el valor de predicción de la tendencia, para lo cual no habrá más que dar valores a futuro a las variables empleadas @trend() – ya los da por defecto e-views -, FIC67 FICDESDE68. Aplicando los coeficientes de la regresión: (LS ULTIMO C FIC67 FICDESDE68 @TREND @TREND()^2) Obtendremos ahora un FORECAST para los cinco períodos siguientes: Para obtener nuestra predicción de TERRA – LYCOS, tan sólo será necesario sumar la predicción de la serie filtrada (FILTRADAF) y la de la tendencia (ULTIMOF): SMPL 375 405 GENR TERRAPRED= FILTRADAF + ULTIMOF 397 398 399 400 401 402 403 404 405 11.10638988389165 11.18491309930912 11.26548726835366 11.34811239102293 11.43278846731451 11.51951549722631 11.60829348075612 11.6991224179019 11.79200230866189 Sobre este modelo básico ARIMA se podría ahora desarrollar alguna especificación más compleja a través de un análisis de intervención (incluyendo variables dicotómicas que corrijan los puntos atípicos) o de transferencia (incluyendo alguna variable explicativa conocida como regresor3), pero esto se sale del objeto de este documento. 3 Por ejemplo, es habitual recoger alguna variable que especifique factores deterministas observados en los mercados para días de la semana concretos (en general, los viernes la jornada es alcista y los lunes bajista).