Un análisis estadístico del DAX 30
Full text
FACULTAD DE TURISMO Y FINANZAS GRADO EN FINANZAS Y CONTABILIDAD UN ANÁLISIS ESTADÍSTICO DEL DAX 30 Trabajo Fin de Grado presentado por José Burgos Escribano, siendo el tutor del mismo el profesor José Manuel Gavilán Ruiz. Vº. Bº. del Tutor Alumno: D. José Manuel Gavilán Ruiz D. José Burgos Escribano Sevilla. Mayo de 2015
GRADO EN FINANZAS Y CONTABILIDAD FACULTAD DE TURISMO Y FINANZAS TRABAJO FIN DE GRADO CURSO ACADÉMICO [2014-2015] TÍTULO: UN ANÁLISIS ESTADÍSTICO DEL DAX 30 AUTOR: JOSÉ BURGOS ESCRIBANO TUTOR: D. JOSÉ MANUEL GAVILÁN RUIZ DEPARTAMENTO: ECONOMÍA APLICADA I ÁREA DE CONOCIMIENTO: MÉTODOS CUANTITATIVOS PARA LA ECONOMÍA Y LA EMPRESA RESUMEN: En este trabajo se analizan algunas de las premisas básicas que establece el modelo de Black-Scholes para la evolución temporal de los precios de un activo financiero, concretamente del DAX 30. Principalmente, se analiza el ajuste de los logreturns del DAX 30 con la distribución Normal, su agregación gaussiana y su independencia. Además, se propone como alternativa una distribución más precisa y flexible, la distribución Normal Inversa Gaussiana. Para realizar los cálculos y gráficas necesarias, se utiliza el software estadístico R. PALABRAS CLAVE: Modelo de Black-Scholes; logreturns; Normal; Normal Inversa Gaussiana; software R.
TFG-FICO. Un análisis estadístico del DAX 30 -IÍNDICE 1. INTRODUCCIÓN ................................................................................................. 1 2. EL DAX 30 ........................................................................................................... 1 3. EL MODELO DE BLACK-SCHOLES .................................................................... 5 3.1. INTRODUCCIÓN .......................................................................................... 5 3.2. MOVIMIENTO BROWNIANO ........................................................................ 6 3.2.1. Historia: origen y autores ..................................................................... 7 3.2.2. Marco teórico: características y modelos matemáticos ........................ 7 3.2.3. Simulación del movimiento browniano ................................................. 8 4. DATOS EMPÍRICOS DEL DAX 30 ....................................................................... 9 5. AGREGACIÓN GAUSSIANA ............................................................................. 10 5.1. TEST DE NORMALIDAD............................................................................. 11 5.1.1 . Contraste de Kolmogórov-Smirnov (Corrección de Lilliefors) ............ 11 6. COLAS PESADAS ............................................................................................. 12 6.1. VALUE AT RISK .......................................................................................... 12 6.2. DENSIDADES EN ESCALA LOGARÍTMICA ............................................... 13 7. MEDIDAS DE FORMA ....................................................................................... 13 7.1. ASIMETRÍA ................................................................................................. 13 7.2. CURTOSIS .................................................................................................. 14 7.3. TEST JARQUE-BERA ................................................................................. 15 8. AUTOCORRELACIONES .................................................................................. 16 9. ALTERNATIVA PARA EL MODELO BLACK-SCHOLES: NORMAL INVERSA GAUSSIANA.. .................................................................................................... 18 9.1. LA DISTRIBUCIÓN NORMAL INVERSA GAUSSIANA ............................... 18 9.2. ESTIMACIÓN DE LA NORMAL INVERSA GAUSSIANA ............................. 20 10. CONCLUSIONES............................................................................................. 23 Bibliografía ............................................................................................................. 25 Anexo ..................................................................................................................... 27
TFG-FICO. Un análisis estadístico del DAX 30 -11. INTRODUCCIÓN En la actualidad, aparecen cada vez más modelos para predecir el futuro en muchos campos. Entre todos ellos, los más utilizados son aquellos para predecir fenómenos naturales como el tiempo, terremotos, etc. Estos modelos están muy presentes en los mercados financieros, ya que permiten predecir el movimiento futuro de los precios y obtener grandes beneficios de ello. Uno de estos modelos, es el de Black-Scholes. Aunque está diseñado para la valoración de opciones europeas, existen diversas adaptaciones para valorar otros productos financieros. Los objetivos principales del presente trabajo son analizar algunas características del modelo de Black-Scholes, medir la validez de éste para la modelización del DAX 30 y compararlo con un modelo alternativo que puede modelizar las variaciones en los precios más adecuadamente. Para cumplir los objetivos, y utilizando el software estadístico R, se han llevado a cabo las siguientes acciones: estimación de los parámetros de la distribución Normal y Normal Inversa Gaussiana (NIG) ajustada a los logreturns del DAX 30, simulación del movimiento browniano estándar, representación gráfica de las densidades de los logreturns del DAX 30, de la Normal y de la NIG, así como las mismas en escala logarítmica, test de normalidad, cálculo de las medidas de forma y análisis de las autocorrelaciones. La organización del trabajo es como sigue: la primera sección contiene la introducción. En la segunda, se exponen la composición, la fórmula de cálculo y algunos datos históricos del DAX 30. En la tercera, se introduce el modelo de BlackScholes y se analiza la premisa relacionada con el movimiento browniano, realizando una simulación del mismo. En la cuarta, se representan datos empíricos del DAX 30 y se obtienen parámetros descriptivos de interés. En la quinta, se expone el fenómeno de la agregación gaussiana y se realiza un test de normalidad. En la sexta, se analiza la subestimación de las colas pesadas por parte de la distribución Normal. En la séptima, se estudian las medidas de forma (asimetría y curtosis) y se realiza un test para comprobar el ajuste de éstas con la distribución Normal. En la octava, se utilizan las autocorrelaciones para comprobar la dependencia entre los logreturns del DAX 30. En la novena, se expone una alternativa para el modelo de Black-Scholes, la NIG, y se compara con éste. En la décima, se exponen de forma resumida las conclusiones extraídas del estudio realizado. Por último, se incluye la bibliografía utilizada para la elaboración del trabajo, así como un anexo con las líneas de código introducidas en el software estadístico R para los cálculos y gráficas realizadas a lo largo del trabajo. 2. EL DAX 30 El DAX (Deutscher Aktienindex) es el índice de referencia de la Bolsa de Fráncfort, así como el más importante de la Bolsa Alemana. Está compuesto por las 30 empresas alemanas más grandes en términos de capitalización y volumen de negocio. También se le conoce como DAX 30 o DAX XETRA. Las 30 acciones contenidas en el índice representan en torno al 80% de la capitalización del mercado alemán. En él están representados todos los sectores con influencia en la economía del país, como, por ejemplo, la industria de la construcción, del automóvil, bancos, sector tecnológico y sector de servicios. Además, el DAX 30 fue diseñado desde un principio para ser utilizado como subyacente de productos financieros. La plataforma electrónica de negociación de la Bolsa de Alemania es el XETRA. En ella se negocia más del 90% del volumen de los valores bursátiles del país. Además de acciones, también se negocian todo tipo de derivados a través de esta plataforma.
Burgos Escribano, José -2El DAX 30 es un índice largo con base 1000 el 30 de diciembre de 1987, lo que quiere decir que se fijó su base en esa fecha y desde ese momento puede considerarse su evolución histórica. Para la formulación o expresión matemática de cálculo del índice se utiliza la fórmula de Laspeyres, que mide los cambios de precios frente a una base fija: = ∙∑ ∙ ∙ ∙ ∑ ∙ ∙ donde: • t es el momento en que se calcula el índice, • T es el momento en el que se hacen ajustes (momento del último encadenamiento), • K t es el factor que permite encadenar los tiempos T y t, • p it es el precio de la acción i en el momento t, • ff iT es el capital flotante de la acción i en el momento T, • q iT es el número de acciones de la compañía i en el momento T, • c it es el factor de ajuste de la compañía i en el momento T (por ampliaciones o reducciones de capital, dividendos, etc), • p i0 es el precio de cierre de la acción i en el día de negociación siguiente a la primera inclusión en el índice, • q i0 es el número de acciones de la compañía i en el día de negociación siguiente a la primera inclusión en el índice • Base del índice es, en nuestro caso, 1000. Aunque existen valores históricos del DAX 30 desde el 28 de septiembre de 1959, su evolución histórica se considera a partir del 30 de diciembre de 1987. La mayor subida diaria del índice se produjo el 13 de octubre de 2008, cuando subió un 11,40% (518,14 puntos) tras la aprobación de un plan de rescate por parte de la zona euro para desbloquear el sistema financiero. Sin embargo, durante la semana anterior (del 6 al 10 de octubre de 2008) acumuló una caída de 1.252,72 puntos debido a la inestabilidad del sistema financiero y a la crisis desatada por la quiebra de Lehman Brothers. Desde su creación hasta el año 2000, el DAX 30 experimentó una lenta y continua subida, pero desde ese año y hasta el 2003 sufrió una fuerte caída debido a la crisis tecnológica (burbuja “puntocom”). A partir de entonces, comenzó un ascenso progresivo que finalizó en 2008, con la llamada crisis de las hipotecas subprime. A partir de 2009, se produce una subida en la que se encuentra inmerso actualmente, marcando máximos históricos en 2015 por encima de los 12.300 puntos (ver Figura 3). En la Figura 1 se puede ver la composición del DAX 30 por sectores, así como el peso de cada uno de ellos dentro del índice a 30 de enero de 2015.
TFG-FICO. Un análisis estadístico del DAX 30 -3Figura 1. Composición del DAX 30 por sectores. Fuente: Elaboración propia a partir de dax-indices.com. En la Tabla 1 se muestran los componentes del DAX 30, así como su último precio, capitalización y el peso de cada uno de los valores dentro del índice a fecha 27 de febrero de 2015. ÚLTIMO PRECIO (€) CAPITALIZACIÓN (millones de €) PESO (%) ADIDAS 69,430 14.525,88 1,4672% ALLIANZ 149,600 68.292,40 7,7838% BASF SE 85,650 78.667,70 7,9113% BAYER 113,000 68.025,46 3,5756% BEIERSDORF 132,050 95.066,35 10,1687% BMW 77,630 19.562,76 0,8394% COMMERZBANK 12,055 13.724,70 1,2733% CONTINENTAL 213,300 42.661,28 2,3230% DAIMLER 86,510 92.551,64 8,5255% DEUTSCHE BANK 29,375 40.516,15 4,0208% DEUTSCHE BOERSE 72,900 14.069,70 1,3511% DEUTSCHE LUFTHANSA 30,430 36.810,34 3,1718% DEUTSCHE POST 16,670 75.607,97 5,1105% DEUTSCHE TELEKOM 14,445 28.904,45 3,4358% E.ON 73,170 22.702,88 1,6196% FRESENIUS MED.CARE 51,180 27.673,06 2,0882% FRESENIUS SE 71,130 13.366,50 1,0053% HEIDELBERGCEMENT 105,850 18.858,54 1,9274% HENKEL 10,345 11.666,18 1,1984% INFINEON TECHNO N 28,825 5.517,11 0,5059% K+S AG NOM. 46,035 4.213,26 0,4337% LANXESS 181,800 33.766,29 3,2468% LINDE 13,100 6.040,08 0,7732% MERCK KGAA 92,200 11.916,14 1,2551% MUNICH RE 185,500 32.080,86 3,1181% RWE 24,985 14.385,00 1,5701% SAP 62,840 77.199,21 6,5700% SIEMENS 99,820 87.941,42 9,0480% THYSSENKRUPP 23,790 13.463,66 1,1428% VOLKSWAGEN AG VZO 225,500 40.734,65 3,5396% Tabla 1. Precios, capitalización y peso de las acciones del DAX 30 a 27/02/2015. Fuente: dax-indices.com. 23% 19% 11% 10% 6% 5% 5% 21% DAX 30 PRODUCTOS QUÍMICOS AUTOMÓVIL SEGUROS INDUSTRIAL SOWTWARE TELECOMUNICAIONES FARMACIA Y SALUD OTROS
Burgos Escribano, José -10donde es el precio actual, 9 es la variación media de la cotización del subyacente (tendencia), * es la desviación típica (volatilidad) y es el movimiento browniano estándar (Benth, 2004). Por tanto, los logreturns entre dos periodos se calculan de la siguiente forma: @AB C CDE F=9∆"+*∆ que es una variable aleatoria normal de media 9∆" y varianza * ∆". En la Figura 4, se han simulado dos trayectorias del movimiento browniano geométrico ajustadas a los parámetros diarios estimados en la Tabla 2. La cotización en el primer momento del tiempo de la muestra se ha definido como S 0 y, a partir de ella, se ha realizado la suma acumulada de cada uno de los valores aleatorios de la muestra y se ha pasado ésta a escala exponencial. Figura 4. Simulación de dos trayectorias del movimiento browniano geométrico ajustado a los datos diarios. 5. AGREGACIÓN GAUSSIANA La distribución normal se emplea para el estudio de diversas distribuciones empíricas, como el peso, el coeficiente intelectual, errores cometidos al medir ciertas magnitudes, etc. El Teorema Central del Límite o hipótesis de Lindeberg-Lévy afirma que la tipificación de la suma de n variables aleatorias independientes e idénticamente distribuidas se aproxima en su comportamiento al de la distribución Normal estándar N(0,1). Habitualmente, cuando n es mayor o igual que 30 el parecido entre las funciones de distribución de las variables tipificadas y de la N(0,1) ya se considera grande. La Agregación Gaussiana es un fenómeno según el cual la densidad de una muestra empírica tiende a converger hacia la de una distribución Normal a medida que aumenta el periodo de tiempo entre observaciones. Esta convergencia puede darse en los logreturns semanales y, sobre todo, mensuales del DAX 30. Sin embargo, los períodos cortos de tiempo como los logreturns diarios se encuentran lejos de la distribución Normal. Debido a la propiedad aditiva de los logreturns mencionada en apartados anteriores, los logreturns semanales y mensuales se pueden obtener a partir de los
TFG-FICO. Un análisis estadístico del DAX 30 -11diarios. Utilizando los cinco días de cotización en una semana, el logreturn 5 H I para la semana i sería: 5 H I=J55I−1+% M NO El índice i se mide en semanas, por lo que 5 H 2 es la variación logarítmica en el precio desde el final de la primera semana hasta el final de la segunda. Del mismo modo, asumiendo 20 días de cotización en un mes, el logreturn 5 P I para el mes i sería: 5 P I=J520I−1+% NO Si suponemos que los logreturns diarios son muestras independientes de la misma distribución (no es necesario que sea normal), el Teorema Central del Límite implica que los logreturns semanales y mensuales se asemejan a una distribución Normal. En la Figura 5 se muestran las densidades empíricas de las muestras diarias, semanales y mensuales del DAX 30 junto con la densidad teórica de la Normal. Figura 5. Densidades empíricas (línea continua) y teóricas (línea discontinua) de las muestras diarias, semanales y mensuales del DAX 30. En la figura anterior se puede apreciar el fenómeno de la Agregación Gaussiana, ya que, cuanto mayor son los periodos de tiempo entre las observaciones, mayor es el parecido con la distribución Normal. Sin embargo, se observa cómo la muestra diaria se encuentra lejos de ésta. 5.1. TEST DE NORMALIDAD Además de comparar las gráficas de las densidades empíricas y teóricas de la muestra, se realiza un test de normalidad para determinar la similitud entre la distribución de los logreturns del DAX 30 y la distribución Normal. Se trata, por tanto, de un contraste de hipótesis en el que la hipótesis nula (H 0 ) es que la distribución de los logreturns se ajusta a una distribución Normal, mientras que la hipótesis alternativa (H 1 ) es que no se ajusta a ella. 5.1.1. Contraste de Kolmogórov-Smirnov (Corrección de Lilliefors) El contraste de Kolmogórov-Smirnov (K-S), compara los valores de una distribución empírica con los que se derivarían de la distribución supuesta como hipótesis nula. En nuestro caso, la hipótesis nula (H 0 ) es que la distribución de la muestra es Normal. La corrección de Lilliefors es una mejora que se introduce para el caso de la distribución Normal, ya que este contraste se puede plantear para otras distribuciones distintas de la Normal. El estadístico de K-S (D) consiste en la máxima diferencia observada entre ambas funciones de distribución: =Rá5|U N 5 −U 5 |
Burgos Escribano, José -12donde U N 5 es la función de distribución muestral , U 5 la función teórica (Normal, en nuestro caso) y 5 es el i-ésimo valor observado en la muestra (cuyos valores han sido ordenados previamente de menor a mayor). Cuanto más cercano a cero se encuentre el estadístico D, mayor será la similitud entre la distribución muestral y la teórica normal. El p-valor determina hasta qué valor se debe bajar el nivel de significación para no tener que rechazar H 0 . Generalmente, el p-valor tiene que ser menor o igual que 0,05 para que H 0 sea rechazada con un nivel de significación del 5% (es el nivel generalmente aceptado). En la Tabla 3, se ha calculado el estadístico D y el p-valor para las series diaria, semanal y mensual del DAX 30. En los tres casos, el estadístico D se encuentra muy alejado de cero, así como el p-valor muy por debajo de 0,05. Por tanto, según este test, las muestras no se ajustan a una distribución normal y se rechazaría la hipótesis nula. En cuanto al fenómeno de la Agregación Gaussiana, se aprecia cómo el p-valor va aumentando a medida que se incrementan los periodos de tiempo, pero queda muy lejos del valor crítico 0,05. D p - valor Diario 0,0713 < 2,2E-16 Semanal 0,0579 0,000001642 Mensual 0,0852 0,002935 Tabla 3. Estadístico y p-valor del contraste K-S para las series diaria, semanal y mensual del DAX 30. 6. COLAS PESADAS Cuando hablamos de colas pesadas, nos referimos a la probabilidad concentrada en los valores extremos, es decir, en las colas de la función de densidad. En esta sección se analiza en qué medida considera la distribución Normal la probabilidad concentrada en las colas, utilizando para ello el Valor en Riesgo (VaR) y la representación gráfica en escala logarítmica de las curvas de densidad de la Figura 5. 6.1. VALUE AT RISK El VaR, es un sistema de valoración de riesgo basado en el planteamiento de escenarios pesimistas o de aversión al riesgo. Se utiliza habitualmente en el campo de las finanzas y de los seguros. Bajo el supuesto de que las variaciones entre periodos del DAX 30 siguen una distribución Normal, utilizaremos el VaR para determinar la existencia de colas pesadas. Para ello, calcularemos los percentiles 1%, 2%, 98% y 99% para determinar la probabilidad existente por debajo de ellos en la distribución normal y empírica. Si existen colas pesadas, el valor absoluto de los percentiles empíricos será mayor que el de los teóricos, ya que existe mayor probabilidad concentrada en los extremos. La Tabla 4 muestra cómo la distribución Normal subestima la probabilidad en los extremos, es decir, que la distribución empírica de los logreturns del DAX 30 tiene colas más pesadas que la distribución teórica Normal ajustada a la muestra diaria de los logreturns del índice. Percentil Empírico Teórico 0,01 -0,0470 -0,0359 0,02 -0,0351 -0,0317 0,98 0,0318 0,0319 0,99 0,0413 0,0361 Tabla 4. Valores de los percentiles de la serie diaria empírica y teórica del DAX 30.
TFG-FICO. Un análisis estadístico del DAX 30 -13En la Tabla 5, se han calculado los percentiles teóricos correspondientes a los valores de los percentiles empíricos 1%, 2%, 98% y 99%. Para ver hasta qué punto la distribución Normal subestima la probabilidad de los sucesos extremos, utilizaremos el siguiente ejemplo con los valores de la Tabla 5: teóricamente, una caída igual o superior a un 4,70% se produce 0,12 de cada 100 días, mientras que empíricamente se produce 1 de cada 100 días. Valor Percentiles empíricos Percentiles teóricos -0,0470 0,01 0,0012 -0,0351 0,02 0,0115 0,0318 0,98 0,9796 0,0413 0,99 0,9961 Tabla 5. Percentiles teóricos correspondientes a los valores de los percentiles empíricos 1%, 2%, 98% y 99%. 6.2. DENSIDADES EN ESCALA LOGARÍTMICA La siguiente Figura representa las curvas de densidad empírica y teórica de las muestras diaria, semanal y mensual ya vistas en la Figura 5, pero esta vez en escala logarítmica. Si observamos los extremos de las gráficas, vemos como la curva de densidad empírica (línea continua) se encuentra por encima de la curva de densidad teórica (línea discontinua). Este hecho demuestra, una vez más, que la distribución Normal subestima la probabilidad concentrada en los extremos. 7. MEDIDAS DE FORMA En este apartado se analizan las medidas de forma (asimetría y curtosis) y se contrastan con la distribución Normal a través del Test Jarque-Bera. 7.1. ASIMETRÍA Las medidas de asimetría se utilizan para determinar el grado de simetría o asimetría que presenta una distribución sin necesidad de realizar una representación gráfica. Además, permite realizar comparaciones entre distribuciones distintas. Si una distribución es simétrica, existe el mismo número de valores a la derecha que a la izquierda de la media y, por tanto, el mismo número de desviaciones con signo positivo que con signo negativo, siendo la suma de las desviaciones positivas igual a la suma de las negativas (Martín-Pliego, 2009). Para medir numéricamente la asimetría se utiliza un coeficiente de asimetría. El más usado es el coeficiente de asimetría de Fisher (A ): Figura 6 . Densidades empíricas (línea continua) y teóricas (línea discontinua) de las muestras diarias, semanales y mensuales del DAX 30 en escala logarítmica.
Burgos Escribano, José -14A =9 V * V siendo 9 V el momento central de orden 3 y * la desviación típica: 9 V =∑5 −9 V % El signo de A determina la simetría o asimetría de la distribución y depende solo del numerador. Por tanto, si A =0 la distribución es simétrica A >0 la distribución es asimétrica positiva A <0<la distribución es asimétrica negativa Cabe destacar que, cuando la distribución es simétrica, entonces A =0, pero el recíproco no tiene por qué cumplirse. Por tanto, es necesario acompañar el estudio numérico con la representación gráfica. En la Tabla 6 hemos calculado los coeficientes de asimetría de la muestra empírica diaria, semanal y mensual de los logreturns del DAX 30. También se han calculado los p-valores para determinar el nivel de significación con el que podemos considerar si el valor de A está significativamente lejano o cercano a cero. Cabe destacar que el pvalor se ha obtenido a partir de la distribución asintótica normal del estadístico usado. En este caso, la hipótesis nula o H 0 es que el coeficiente de asimetría es cero. En función de los datos obtenidos, el p-valor de la serie diaria es mayor que el nivel de significación generalmente aceptado (0,05), por lo que no se rechaza H 0 y se acepta que el coeficiente de asimetría de la serie diaria es cero. En las series semanal y mensual, sin embargo, el p-valor se encuentra muy por debajo de 0,05 y se observa que presentan asimetría negativa, es decir, presentan valores más alejados de la media por debajo de ésta que por encima. Serie Y Z p-valor Diaria 0,0166 0,6752 Semanal -0,6568 6,217E-14 Mensual -0,9954 4,977E-8 Tabla 6. Coeficiente de asimetría de Fisher y p-valores de las series diaria, semanal y mensual de logreturns del DAX 30. 7.2. CURTOSIS La curtosis es otra medida de forma que mide tanto el apuntamiento (anchura del pico) como la pesadez de las colas de la distribución. Las medidas de curtosis tratan de determinar el número de observaciones que se encuentran muy lejos o muy cerca de la media. Para esta medida, una curtosis elevada significa que más varianza de la variable es resultado de observaciones extremas infrecuentes en oposición a observaciones menos desviadas de la media y más frecuentes. Para estudiar la curtosis, se utiliza la distribución Normal como modelo de referencia. El hecho de utilizar esta distribución, es porque se presenta en múltiples casos, e implica que la mayoría de los valores de la variable están cerca de la media, y aquellos que se encuentran muy distanciados de ella, a ambos lados, son poco numerosos (Martín-Pliego, 2009). El coeficiente de curtosis es el cociente entre el momento central de orden cuatro y la varianza a la cuarta. No obstante, a esta fórmula se le resta 3 para medir el exceso de curtosis respecto a la distribución Normal:
TFG-FICO. Un análisis estadístico del DAX 30 -15A =9 [ * [ −4 siendo 9 [ el momento central de orden 3 y * la desviación típica: 9 [ =∑5 −9 [ % En función del signo de A , podemos distinguir entre distribuciones: mesocúrticas si A =0 leptocúrticas si A >0 platicúrticas si A >0 Al igual que con la asimertía, se han calculado en la Tabla 7 los coeficientes de curtosis y sus correspondientes p-valores para la tres series temporales. En los tres casos, se observa un exceso de curtosis elevado, aunque éste va disminuyendo a medida que se reduce el periodo de tiempo entre observaciones. Las distribuciones son, por tanto, leptocúrticas. En los tres casos el p-valor del contraste es prácticamente nulo, con lo que hay un claro rechazo de la hipótesis nula de que el coeficiente de curtosis es cero. Serie Y ] p-valor Diaria 4,2686 0 Semanal 5,1965 0 Mensual 3,1209 0 Tabla 7. Coeficiente de curtosis y p-valores de las series diaria, semanal y mensual de logreturns del DAX 30 7.3. TEST JARQUE-BERA Se trata de un test exclusivo para la distribución Normal y se basa en el ajuste entre las medidas de forma (asimetría y curtosis) de la distribución empírica y una distribución Normal teórica. El estadístico de este test es X 2 , y su fórmula de cálculo la siguiente: = N ^ &A + [ A ' En la Tabla 8 se han calculado el estadístico X 2 y su correspondiente p-valor para contrastar si las muestras de los logreturns diarios, semanales y mensuales del DAX 30 se ajustan a la distribución Normal. En los tres casos se observa cómo los pvalores se encuentran muy por debajo del nivel de significación del 5%, por lo que, según este test, ninguna de las distribuciones de los logreturns del DAX 30 es Normal. Aun así, el estadístico va disminuyendo su valor a medida que aumentan los intervalos temporales entre observaciones, con lo que se demuestra, una vez más el fenómeno de agregación Gaussiana. Serie X 2 p-valor Diaria 2.901,819 <2,2E-16 Semanal 936,116 <2,2E-16 Mensual 102,206 <2,2E-16 Tabla 8. Test de Jarque-Bera para las series diaria, semanal y mensual de logreturns del DAX 30.
Burgos Escribano, José -168. AUTOCORRELACIONES El modelo de Black-Scholes establece incrementos independientes de los logreturns. En los mercados financieros, existen periodos de mucha volatilidad en los que las variaciones son mayores y otros en los que hay menos volatilidad. Este hecho se puede observar en la Figura 7, en la que se han representado las variaciones diarias del DAX 30 (logreturns). Se puede ver cómo las variaciones son sistemáticamente mayores en determinados momentos del tiempo y menores en otros. Esto nos lleva a pensar que los logreturns no son independientes entre sí, sino que existe una dependencia en determinados momentos del tiempo. Figura 7. Logreturns de la serie diaria del DAX 30. Considerando la serie temporal /"0 < O _ de logreturns como estacionaria en el sentido de que el valor esperado de " no es una función de tiempo y la covarianza entre " y "+ solo depende de (intervalo temporal), podemos establecer la expresión matemática @`a","+b=c para una función c donde c0=c>0. La autocorrelación con retardos viene dada por la siguiente expresión: @))a","+b=@`a","+b "a"b"a"+b=c c La autocorrelación describe la intensidad con la que el logreturn actual recuerda a los anteriores, es decir, la dependencia lineal entre ambos. Por tanto, a través de la autocorrelación podemos predecir los precios futuros (Benth, 2004). En la Figura 8, se han representado las autocorrelaciones de los logretunrs de la serie diaria del DAX 30. Se observa cómo varían sin orden alguno por encima y por debajo de cero y la gran mayoría de ellas se encuentran dentro de la banda de confianza del 95% centrada en cero. Por tanto, los logreturns de la serie diaria del DAX 30 no están correlados. -0.05 0.00 0.05 0.10 2000 2002 2004 2006 2008 2010 2012 2014
TFG-FICO. Un análisis estadístico del DAX 30 -17Figura 8. Autocorrelaciones de los logreturns diarios del DAX 30 con retardos de hasta 100. Sin embargo, al representar las autocorrelaciones en la Figura 9 utilizando el valor absoluto de los logreturns (gráfica de arriba) y su cuadrado (gráfica de abajo), es decir, las autocorrelaciones entre los tamaños de los logreturns, se observa que las autocorrelaciones son siempre positivas y significativamente alejadas de cero. Además, se aprecia un descenso progresivo en el valor de la autocorrelación, lo que significa que, cuanto menor es la distancia en el tiempo entre los logreturns, la correlación entre ellos se hace mayor. Si los logreturns fueran independientes tal y como afirma el modelo de BlackScholes, sus autocorrelaciones deberían ser significativamente iguales a cero en todos los casos, cosa que no ocurre con el valor absoluto y el cuadrado de los logreturns. Se prueba entonces que existe un cierto grado de dependencia entre los tamaños de los logreturns, lo que contradice una de las premisas básicas del modelo de BlackScholes.
Burgos Escribano, José -18Figura 9. Autocorrelaciones de los valores absolutos (arriba) y cuadrados (abajo) de los logreturns diarios del DAX 30. 9. ALTERNATIVA PARA EL MODELO BLACK-SCHOLES: NORMAL INVERSA GAUSSIANA Hasta ahora, hemos visto cómo la distribución Normal no es un modelo adecuado para los logreturns del DAX 30 debido a varios factores. En primer lugar, subestima las probabilidades en las colas de la distribución. Además, la muestra empírica presenta asimetría y curtosis, lo cual no ocurre en la distribución Normal. En este apartado, se introduce un modelo más complejo y flexible que se adapta mejor a las series temporales financieras, a los logreturns del DAX 30 en nuestro caso. Este modelo, es la distribución Normal Inversa Gaussiana (NIG). 9.1. LA DISTRIBUCIÓN NORMAL INVERSA GAUSSIANA Se trata de un tipo de distribución hiperbólica y fue introducida por Barnforff-Nielsen en 1977 como un modelo de distribución para el tamaño de los granos de arena en las playas danesas. Más tarde, se comenzó a utilizar en las finanzas como un buen modelo para los logreturns.
TFG-FICO. Un análisis estadístico del DAX 30 -19La NIG presenta cuatro parámetros: d,e,9<f<g. El parámetro 9 marca el centro de la distribución en el eje horizontal, mientras que la asimetría está definida por e. El parámetro g es un parámetro de escala parecido a la desviación típica de la distribución Normal. Por último, d modela las colas pesadas de la distribución. La expresión de la función de densidad de la distribución Normal Inversa Gaussiana es la siguiente: Nh 5;d,e,9,g=j kl: &dmg +5−9 ' mg +5−9 donde j es una constante y es la función de Bessel modificada de tercera clase con índice 1: j = n gd o m p q k q 5 = 1 2 r l a s ; s D E b _ En la función de densidad, se tiene que cumplir que 0≤|e|≤d. Adicionalmente, g tiene que ser mayor que cero. La media y varianza de una variable aleatoria 5 que sigue una distribución Normal Inversa Gaussiana son las siguientes: u v 5 w = 9 + ge m d − e x) v 5 w = g d d − e V / En la Figura 10 se han representado 4 distribuciones NIG (línea continua) y las correspondientes Normales (línea discontinua) con la misma media y varianza, de modo que sea comparables. Los parámetros fijados para cada gráfica son los siguientes: Gráfica z { | } 1 30 0 0 0,015 2 150 0 0 0,015 3 30 10 0 0,015 4 30 -10 0 0,015 Tabla 9. Valores de los parámetros de las distribuciones NIG representadas en las Figuras 10 y 11 . En las gráficas 1,3 y 4 se observa la forma hiperbólica que presentan las colas, mientras que en la segunda gráfica son prácticamente lineales. Esto se debe a que, para la gráfica 2, se ha fijado el peso de las colas (d) en 150, mientras que en el resto ha sido 30. En los ejemplos 3 y 4, se ha fijado una asimetría (e) positiva y negativa respectivamente. Se observa como la NIG recoge este fenómeno, a diferencia de la distribución Normal. Los parámetros 9 y g se han mantenido constantes en todas las representaciones.
TFG-FICO. Un análisis estadístico del DAX 30 -27Anexo En el desarrollo de este trabajo se ha usasdo el software estadístico R para realizar diversas gráficas y cálculos. A continuación, se exponen las líneas de código utilizadas a lo largo del trabajo. Simulación del movimiento browniano estándar (Figura 2) set.seed(250) par(mar=c(2,2,2,2) BA <- cumsum(rnorm(500,0,1)) plot(x=c(0:500),y=c(0,BA),type="l",lty=1,xlab="",ylab="",ylim=c(- 40,40)) BB <- cumsum(rnorm(500,0,1)) lines(x=c(0:500),y=c(0,BB),type="l",lty=2,xlab="",ylab="") BC <- cumsum(rnorm(500,0,1)) lines(x=c(0:500),y=c(0,BC),type="l",lty=3,xlab="",ylab="") Lectura de datos de yahoo finance y representación de cotizaciones diarias (Figura 3) library("tseries") library("zoo") indice="^GDAXI" fecha.ini="2000-01-01" fecha.fin="2014-12-31" precios="Close" DAXd <- get.hist.quote(instrument=indice, start=fecha.ini, end=fecha.fin, compression="d", quote=precios) DAXw <- get.hist.quote(instrument=indice, start=fecha.ini, end=fecha.fin, compression="w", quote=precios) DAXm <- get.hist.quote(instrument=indice, start=fecha.ini, end=fecha.fin, compression="m", quote=precios) nd=length(DAXd); nw=length(DAXw); nm=length(DAXm); par(mar=c(2,2,2,2)) plot(DAXd,xlab="",ylab="",type="l",lty=1) Logreturns del DAX 30 XDAXd <- diff(log(DAXd)) XDAXw <- diff(log(DAXw)) XDAXm <- diff(log(DAXm)) nXDAXd <- as.numeric(XDAXd) nXDAXw <- as.numeric(XDAXw) nXDAXm <- as.numeric(XDAXm) Estadística descriptiva de los logreturns del DAX 30 (Tabla 2) mud <- mean (XDAXd) sigmad <- apply(XDAXd,2,sd);sigma2d <- sigmad^2; muw <- mean (XDAXw) sigmaw <- apply(XDAXw,2,sd);sigma2w <- sigmaw^2; mum <- mean (XDAXm) sigmam <- apply(XDAXm,2,sd);sigma2m <- sigmam^2; options(scipen=100) options(digits=6) summary(XDAXd) summary(XDAXw) summary(XDAXm)
Burgos Escribano, José -28library(pastecs) stat.desc(nXDAXd) stat.desc(nXDAXw) stat.desc(nXDAXm) Simulación de dos trayectorias del movimiento browniano geométrico ajustado a los datos diarios y mensuales (Figura 4) set.seed(1000) lsd0=log(as.numeric(DAXd[1])) I <- rnorm(nd-1, mean=mud, sd=sigmad) ssimul <- exp(cumsum(c(lsd0,I))) ssimul <- zoo(ssimul,index(DAXd)) plot(ssimul,type="l",lty=1) I <- rnorm(nd-1, mean=mud, sd=sigmad) ssimul <- exp(cumsum(c(lsd0,I))) ssimul <- zoo(ssimul,index(DAXd)) lines(ssimul, type="l",lty=3) set.seed(1000) lsd1=log(as.numeric(DAXm[1])) II <- rnorm(nm-1, mean=mum, sd=sigmam) ssimul <- exp(cumsum(c(lsd1,II))) ssimul <- zoo(ssimul,index(DAXm)) plot(ssimul,type="l",lty=1) II <- rnorm(nm-1, mean=mum, sd=sigmam) ssimul <- exp(cumsum(c(lsd1,II))) ssimul <- zoo(ssimul,index(DAXm)) lines(ssimul, type="l",lty=3) Curvas de densidad del DAX 30 y de la Normal con parámetros diarios, semanales y mensuales. También las mismas curvas, pero en escala logarítmica (Figuras 5 y 6) densityXDAXd <- density(XDAXd,n=500) plot( densityXDAXd,type="l",lty=1,xlab="",ylab="",main="",xlim=c(- 0.08,0.08)) curve(dnorm(x,mean=mud,sd=sigmad),add=TRUE,xlim=c(- 0.06,0.06),n=500,type="l",lty=2,xlab="c(-0",ylab="",main="") x <- seq(from=-0.06,to=0.06,length.out=500) plot(densityXDAXd$x,log(densityXDAXd$y),type="l",lty=1,xlab="",ylab="" ,main="",xlim=c(-0.07,0.07), ylim=c(-2,4)) y <- log( dnorm(x,mean=mud,sd=sigmad)) lines(x,y,lty=2) densityXDAXw <- density(XDAXw,n=500) plot( densityXDAXw,type="l",lty=1,xlab="",ylab="",main="",xlim=c(- 0.15,0.15)) curve(dnorm(x,mean=muw,sd=sigmaw),add=TRUE,n=500,type="l",lty=2,xlab=" c(-0",ylab="",main="") x <- seq(from=-0.15,to=0.15,length.out=500) plot(densityXDAXw$x,log(densityXDAXw$y),type="l",lty=1,xlab="",ylab="" ,main="",xlim=c(-0.12,0.12), ylim=c(-4,4)) y <- log(dnorm(x,mean=muw,sd=sigmaw)) lines(x,y,lty=2) densityXDAXm <- density(XDAXm,n=500) plot( densityXDAXm,type="l",lty=1,xlab="",ylab="",main="",xlim=c(- 0.20,0.20)) curve(dnorm(x,mean=mum,sd=sigmam),add=TRUE,n=500,type="l",lty=2) x <- seq(from=-0.25,to=0.25,length.out=500) plot(densityXDAXm$x,log(densityXDAXm$y),type="l",lty=1,xlab="",ylab="" ,main="",xlim=c(-0.20,0.20), ylim=c(-2,2)) y <- log(dnorm(x,mean=mum,sd=sigmam)) lines(x,y,lty=2)
TFG-FICO. Un análisis estadístico del DAX 30 -29Contraste de Kolmogórov-Smirnov (Corrección de Lilliefors) (Tabla 3) library(nortest) lillie.test(nXDAXd);lillie.test(nXDAXw);lillie.test(nXDAXm) Percentiles empíricos y teóricos (Tabla 4) qnorm(p=c(0.01,0.02,0.98,0.99),mean=mud,sd=sigmad) qe <- quantile(x=XDAXd,probs=c(0.01,0.02,0.98,0.99)) Probabilidades teóricas acumuladas por los percentiles empíricos (Tabla 5) pnorm(qe,mean=mud,sd=sigmad) Asimetría y curtosis de los logreturns del DAX 30 y sus respectivos p-values (Tablas 6 y 7) library(moments) skewness(XDAXd); skewness(XDAXw); skewness(XDAXm) kurtosis(XDAXd)-3; kurtosis(XDAXw)-3; kurtosis(XDAXm)-3 sk.d <- skewness(XDAXd);stat <- abs(sk.d/sqrt(6/nd));2*(1-pnorm(stat)) sk.w <- skewness(XDAXw);stat <- abs(sk.w/sqrt(6/nw));2*(1-pnorm(stat)) sk.m <- skewness(XDAXm);stat <- abs(sk.m/sqrt(6/nm));2*(1-pnorm(stat)) ku.d <- kurtosis(XDAXd)-3;stat <- abs(ku.d/sqrt(24/nd));2*(1pnorm(stat)) ku.w <- kurtosis(XDAXw)-3;stat <- abs(ku.w/sqrt(24/nw));2*(1pnorm(stat)) ku.m <- kurtosis(XDAXm)-3;stat <- abs(ku.m/sqrt(24/nm));2*(1pnorm(stat)) Test de Jarque-Bera (Tabla 8) library(tseries) jarque.bera.test(nXDAXd);jarque.bera.test(nXDAXw);jarque.bera.test(nXD AXm) Logreturns de la serie diaria del DAX 30 (Figura 7) plot(XDAXd, type="l",xlab="",ylab="", col="blue" ) Autocorrelaciones de los logreturns diarios del DAX 30, así como de sus valores absolutos y cuadrados (Figuras 8 y 9) library(FinTS) autocorr <- apply(XDAXd,2,Acf,lag.max = 100,type = "correlation",xlab = "", ylab="", main="") autocorr <- apply(abs(XDAXd),2,Acf,lag.max = 100,type = "correlation",xlab = "", ylab="", main="") autocorr <- apply(XDAXd^2,2,Acf,lag.max = 100,type = "correlation",xlab = "", ylab="", main="") Gráficas de la función de densidad de la NIG y sus correspondientes Normales (Figura 10) par(mfrow=c(2,2) alpha=30; beta=0; mu=0; delta=0.015; curve(dnig(x,alpha,beta,delta,mu),xlim=c(0.075,0.075),ylim=c(0,30),n=5 00,type="l",lty=1,xlab="",ylab="",main="1") temp=sqrt(alpha^2-beta^2) mean <- mu +( (delta*beta)/(temp)); sigma2= (delta*(alpha^2))/(temp^3); sigma=sqrt(sigma2); curve(dnorm(x,mean=mean,sd=sigma),add=TRUE,n=500,type="l",lty=2,xlab=" ",ylab="",main="")
Burgos Escribano, José -30alpha=150; beta=0; mu=0; delta=0.015; curve(dnig(x,alpha,beta,delta,mu),xlim=c(0.075,0.075),ylim=c(0,50),n=5 00,type="l",lty=1,xlab="",ylab="",main="2") temp=sqrt(alpha^2-beta^2) mean <- mu +( (delta*beta)/(temp)); sigma2= (delta*(alpha^2))/(temp^3); sigma=sqrt(sigma2); curve(dnorm(x,mean=mean,sd=sigma),add=TRUE,n=500,type="l",lty=2,xlab=" ",ylab="",main="") alpha=30; beta=10; mu=0; delta=0.015; curve(dnig(x,alpha,beta,delta,mu),xlim=c(0.075,0.075),ylim=c(0,30),n=5 00,type="l",lty=1,xlab="",ylab="",main="3") temp=sqrt(alpha^2-beta^2) mean <- mu +( (delta*beta)/(temp)); sigma2= (delta*(alpha^2))/(temp^3); sigma=sqrt(sigma2); curve(dnorm(x,mean=mean,sd=sigma),add=TRUE,n=500,type="l",lty=2,xlab=" ",ylab="",main="") alpha=30; beta=-10; mu=0; delta=0.015; curve(dnig(x,alpha,beta,delta,mu),xlim=c(0.075,0.075),ylim=c(0,30),n=5 00,type="l",lty=1,xlab="",ylab="",main="4") temp=sqrt(alpha^2-beta^2) mean <- mu +( (delta*beta)/(temp)); sigma2= (delta*(alpha^2))/(temp^3); sigma=sqrt(sigma2); curve(dnorm(x,mean=mean,sd=sigma),add=TRUE,n=500,type="l",lty=2,xlab=" ",ylab="",main="") Gráficas de la función de densidad de la NIG y sus correspondientes Normales en escala logarítmica (Figura 11) x<-seq(from=-0.09,to=0.09,length.out=500) curve(log(dnig(x,alpha= 30,beta= 0,delta= 0.015,mu= 0)),type="l", lty=1,xlab="",ylab="",main="1",xlim=c(-0.15,0.15), ylim=c(-2,4)) y<-log( dnorm(x,mean=mean,sd=sigma)) lines(x,y,lty=2) x<-seq(from=-0.19,to=0.19,length.out=500) curve(log(dnig(x,alpha= 150,beta= 0,delta= 0.015,mu= 0)),type="l", lty=1,xlab="",ylab="",main="2",xlim=c(-0.20,0.20), ylim=c(-20,5)) y<-log( dnorm(x,mean=mean,sd=sigma)) lines(x,y,lty=2) x<-seq(from=-0.09,to=0.09,length.out=500) curve(log(dnig(x,alpha= 30,beta= 10,delta= 0.015,mu= 0)),type="l", lty=1,xlab="",ylab="",main="3",xlim=c(-0.15,0.15), ylim=c(2,4)) y<-log( dnorm(x,mean=mean,sd=sigma)) lines(x,y,lty=2) x<-seq(from=-0.09,to=0.09,length.out=500) curve(log(dnig(x,alpha= 30,beta= -10,delta= 0.015,mu= 0)),type="l", lty=1,xlab="",ylab="",main="4",xlim=c(-0.15,0.15), ylim=c(2,4)) y<-log( dnorm(x,mean=mean,sd=sigma)) lines(x,y,lty=2) Estimación de los parámetros de la distribución NIG para las series diaria, semanal y mensual de los logreturns del DAX 30 (Tabla 10) nigFit(nXDAXd, alpha = 49, beta = -4.8, delta = 0.01, mu = 0.001) nigFit(nXDAXw, alpha = 33, beta = -7.8, delta = 0.03, mu = 0.01) nigFit(nXDAXm, alpha = 15, beta = -7, delta = 0.1, mu = 0.01) alphafd <- 49.195961699;betafd <- -4.883579874;deltafd <- 0.011800869;mufd <- 0.001274932 alphafw <- 33.031597136;betafw <- -7.923094366;deltafw <- 0.033472579;mufw <- 0.008741963 alphafm <- 17.28097973;betafm <- -7.13702345;deltafm <- 0.05487273;mufm <- 0.02689937
TFG-FICO. Un análisis estadístico del DAX 30 -31Gráficas de las curvas de densidad empírica, Normal y NIG con parámetros del DAX 30, así como las mismas curvas en escala logarítmica (Figura 12) par(mfrow=c(3,2)) densityXDAXd <- density(XDAXd,n=500) plot( densityXDAXd , type="l",lty=1,xlab="",ylab="",main="",xlim=c(- 0.06,0.06),col="blue") curve( dnorm(x,mean=mud,sd=sigmad),from=-0.06, to=0.06,add=TRUE,n=500, type="l",lty=2,xlab="",ylab="",main="",col="black") curve(dnig(x,alpha=alphafd,beta=betafd,delta=deltafd,mu=mufd),n=500 ,add=TRUE, type="l",from=-0.06, to=0.06, lty=1,xlab="",ylab="",main="",col="red") plot( densityXDAXd$x, log(densityXDAXd$y) , type="l",lty=1,xlab="",ylab="", main="",xlim=c(-0.08,0.08), ylim=c(-4,4),col="blue") curve( log(dnorm(x,mean=mud,sd=sigmad)),from=-0.08, to=0.08,add=TRUE,n=500, type="l",lty=2,xlab="",ylab="",main="",col="black") curve(log(dnig(x,alpha=alphafd,beta=betafd,delta=deltafd,mu=mufd)), n=500,add=TRUE, type="l",from=-0.08, to=0.08, lty=1,xlab="",ylab="",main="",col="red") densityXDAXw <- density(XDAXw,n=500) plot( densityXDAXw , type="l",lty=1,xlab="",ylab="",main="", xlim=c(-0.10,0.10), ylim=c(0,17),col="blue") curve( dnorm(x,mean=muw,sd=sigmaw),add=TRUE,n=500, type="l",lty=2,xlab="",ylab="",main="",col="black") curve(dnig(x,alpha=alphafw,beta=betafw,delta=deltafw,mu=mufw),n=500 ,add=TRUE, type="l",from=-0.10, to=0.10, lty=1,xlab="",ylab="",main="",col="red") plot( densityXDAXw$x, log(densityXDAXw$y) , type="l",lty=1,xlab="",ylab="", main="",xlim=c(-0.12,0.12), ylim=c(-3,3),col="blue") curve( log(dnorm(x,mean=muw,sd=sigmaw)),from=-0.12, to=0.12,add=TRUE,n=500, type="l",lty=2,xlab="",ylab="",main="",col="black") curve(log(dnig(x,alpha=alphafw,beta=betafw,delta=deltafw,mu=mufw)), n=500,add=TRUE, type="l",from=-0.12, to=0.12, lty=1,xlab="",ylab="",main="",col="red") densityXDAXm <- density(XDAXm, n=500) plot( densityXDAXm , type="l",lty=1,xlab="",ylab="",main="", xlim=c(-0.2,0.2),ylim=c(0,10),col="blue" ) curve( dnorm(x,mean=mum,sd=sigmam),add=TRUE,n=500, type="l",lty=2,xlab="",ylab="",main="",col="black") curve(dnig(x,alpha=alphafm,beta=betafm,delta=deltafm,mu=mufm),n=500 ,add=TRUE, type="l",from=-0.2, to=0.2, lty=1,xlab="",ylab="",main="",col="red") plot( densityXDAXm$x, log(densityXDAXm$y) , type="l",lty=1,xlab="",ylab="", main="",xlim=c(-0.2,0.2), ylim=c(-2,3),col="blue") curve( log(dnorm(x,mean=mum,sd=sigmam)),from=-0.20, to=0.20,add=TRUE,n=500, type="l",lty=2,xlab="",ylab="",main="",col="black") curve(log(dnig(x,alpha=alphafm,beta=betafm,delta=deltafm,mu=mufm)), n=500,add=TRUE, type="l",from=-0.2, to=0.2, lty=1,xlab="",ylab="",main="",col="red")