Descargar MetaTrader 5

Análisis regresivo de la influencia de datos macroeconómicos en el cambio de precio de las divisas

15 octubre 2014, 09:29
Salavat Bulyakarov
0
756

Introducción

El análisis fundamental para muchos supone una esfera incomprensible, para otros no está clara su aplicación, qué parámetros tener en cuenta y cuáles no, y si se tienen en cuenta, entonces será necesario aclarar el carácter de su influencia y cuánto tiempo hay que considerar en las operaciones dicha incluencia.

Tras encontrarme con el artículo "Análisis de regresión múltiple, generador y probador de estrategias en una sola aplicación" en 2011, haberlo leído y haberme interesado por el método, llevé a cabo ciertas investigaciones sobre la aplicación de tal método en el análisis fundamental, sobre cuyos resultados se va a hablar en el presente artículo.


¿Qué es el "análisis regresivo múltiple"?

El análisis regresivo múltiple es un método de establecimiento de la dependencia de una variable de dos o más variables independientes.

La formulación del término para personas que no estén muy familiarizadas con las matemáticas no aclara mucho la esencia, en este punto será necesario un ejemplo para comprender para qué se necesita este tipo de análisis y cuál es su sentido.

Imagínese un investigador al que le interesa valorar el efecto de la carga física permanente utilizando estimulantes en la pérdida de peso. El investigador lleva a cabo un experimento, con la colaboración de 24 estudiantes de la universidad. Los estudiantes se dividen en 4 grupos de 6 personas cada uno. 1 grupo recibe 100 mg/d de estimulantes, el segundo 200 mg/d, el tercero 300 mg/d, y el cuarto 400 mg/d. En este experimento hay 4 niveles de estimulantes y 3 niveles de carga física. Cada grupo de seis se divide a su vez en tres parejas. Una pareja con un volumen de carga de 0 horas semanales, la segunda con una carga de 5 horas semanales, y la tercera con una carga de 10 horas semanles. Al final del experimento se registra como resultado una pérdida de peso por parte de cada uno de los participantes. Todo ha sido reflejado en una tabla con el aspecto siguiente.


Participant
 of the experiment
Doze of supplement
 (mg/day)
Level of physical activity
 (hours/week)
Weight loss (lb)
1 100 0 -4
2 100 0 0
3 100 5 -7
4 100 5 -6
5 100 10 -2
6 100 10 -14
7 200 0 -5
8 200 0 -2
9 200 5 -5
10 200 5 -8
11 200 10 -9
12 200 10 -9
13 300 0 1
14 300 0 0
15 300 5 -3
16 300 5 -3
17 300 10 -8
18 300 10 -12
19 400 0 -5
20 400 0 -4
21 400 5 -4
22 400 5 -6
23 400 10 -9
24 400 10 -7

Tab. 1 Resultados de la pérdida de peso de cada uno de los participantes

Propiamente, ahora nos encontramos con dos preguntas:

  1. ¿Qué ha influido en la pérdida de peso, los estimulantes o la carga física?
  2. ¿En qué grado de dependencia se halla el cambio de peso con respecto al factor influyente?

¿Verdad que se parece mucho a la situación en los mercados financieros?: el precio de una divisa, por ejemplo, ha cambiado, y nos encontramos ante la pregunta, ¿cuál de las dos noticias ha influido en este cambio? Si existe algún índice económico que influya en el precio, entonces, ¿cómo cambia el precio al aplicarse dicho índice?

A la hora de responder a estas preguntas, nos ayudará el análisis de regresión múltiple y el programa STATISTICA.

Trasladamos o importamos las tablas con los datos al programa y elegimos en el menú "Regresión Múltiple":

Fig 1. Importación de los datos del ejemplo al programa STATISTICA

Fig. 1. Importación de los datos del ejemplo al programa STATISTICA

 

En el menú que aparecerá tras elegir esta línea, hay que encontrar el botón "Variables" y pulsarlo:

Fig 2. Ventana de elección de parámetros para el análisis múltiple 

Fig. 2. Ventana de elección de parámetros para el análisis múltiple


Se abrirá la ventana de elección de las variables usadas para el análisis. La ventana consta de dos partes.

En la parte de la izquierda se elige lo que nosotros consideramos variable dependiente. En nuestro caso se trata de la pérdida de peso; a la derecha elegimos lo que, a nuestro entender, puede influir en este cambio:

Fig 3. Designación de variables dependientes e independientes

Fig. 3. Designación de variables dependientes e independientes

Tras pulsar "Ok" se nos devolverá a la anterior ventana de diálogo de elección de ajustes, en la que pondremos un aspa en la casilla de verificación, pulsamos "Ok":

Fig. 4. Elección de los parámetros para el análisis múltiple

Fig. 4. Elección de los parámetros para el análisis múltiple


En la siguiente ventana elegimos el método "Todos los efectos":

Fig. 5. Elección de método

Fig. 5. Elección de método


Como resultado de todas estas acciones, obtendremos una ventana así, con los resultados del análisis.

En la lista de índices, con letra roja están marcados los índices cuya aportación es estadísticamente verídica, en este caso, es el "Volumen de cargas",

"No. of cases" - es el número de casos utilizados para el análisis,

"p" - es el nivel de certeza estadística de esta correlacción (se considera verídico un nivel inferior a 0.05),

"Multiple R" - es el valor de la correlacción múltiple entre las variables dependientes e independientes que entran en la ecuación:

Fig. 6. Resultado del procesamiento de datos

Fig. 6. Resultado del procesamiento de datos

El valor "Multiple R= 0,71819113" se trata así: "Multiple R es el valor de la correlacción múltiple entre la pérdida de peso y los factores que influyen en dicha pérdida, y constituye el 71,82%".

De los dos factores, se ha destacado en rojo uno, el "Volumen de cargas", pues este factor precisamente ha sido el que ha influenciado en la pérdida de peso, la influencia de los estimulantes ha sido poco significativa.

Queda calcular en qué manera precisamente influencian en la pérdida de peso los factores, confeccionando una ecuación preliminarmente regresiva. Para esto, en la ventana de resultados, pulsaremos el botón "Summary: Regression results", como resultado se abrirá una nueva tabla, y de esta tabla utilizaremos los valores de las celdas de la columna "b" para componer la ecuación de regresión:

 Fig. 7. Variables de la ecuación regresiva

 Fig. 7. Variables de la ecuación regresiva


Hemos obtenido la siguiente ecuación:

Pérdida de peso = 0,00117*[Dosis de estimulante] - 0,63750 * [Volumen de carga] - 2,5625

Proporcionando los valores a la ecuación resultante (Ctrl-C en STATISTICA -> Ctrl-V en Excel) es posible calcular cómo puede cambiar el peso con este o aquel volumen de estimulante o volumen de carga, por ejemplo:

Cambio de peso 1 = 0.00117*100 - 0.6375 * 0 - 2.5625 = -2,4455 , es decir, podemos perder hasta 2,4 libras tomando 100 mg. de estimulante al día y en ausencia de cargas .

Cambio de peso 2 = 0.00117*100 - 0.6375 * 10 - 2.5625 = -8,8205 libras , es decir, podemos perder hasta 8,82 libras de peso tomando 100 mg. de estimulante al día y con cargas de 10 horas a la semana.

Espero que el ejemplo que hemos elegido y explicado haya aclarado de manera visual para qué puede ser útil el análisis múltiple (y puede que alguien, utilizando un método así, compruebe sobre sí mismo si le ayuda la dieta, o si debe ir más a menudo al gimnasio :-) ).

Vamos a trasladar nuestras reflexiones a las divisas. Supongamos que la variable dependiente es el cambio de precio de la pareja EURUSD, y las variables independientes son los datos de la estadística macroeconómica, obtenidos del calendario de eventos, el popular recurso forexfactory.

Propiamente, utilizando el análisis múltiple, como en el ejemplo que hemos visto más arriba, podemos esclarecer qué índices macroeconómicos pueden tener influencia en los posteriores cambios de precio de una divisa y obtener una ecuación que pueda mostrar en qué magnitud puede cambiar el precio de la divisa después de publicar los valores de dichos datos macroeconómicos.


Preparación de datos e importación de los mismos al programa STATISTICA

Al trabajar con la información de la página forexfactory me he encontrado con el problema siguiente, que, insisto, debe ser tenido en cuenta: en este recurso, los mismos datos pueden ser publicados en diferente formato y las cifras pueden tener formato de texto, complemento de texto, lo que dificulta la recopilación de datos de una forma convencional, es decir, puede que el parseo de la página para recopilar datos no dé resultado.

En el recurso he reunido manualmente los valores según los 99 factores del calendario de noticias que tienen relación con EE.UU en los últimos años:

índices macroeconómicos publicados USA

Fig. 8. Índices macroeconómicos publicados en USA

He procesado todas las cifras en un formato único, he eliminado "mill.", "bill.", etc, y he agrupado todos los datos en una tabla de 7 columnas (ver el archivo adjunto al artículo Calendar_USD) y he añadido las cotizaciones de EURUSD del periodo D1.

Encabezado de las columnas:

  • Date
  • MonthYear
  • Time
  • Time Zone
  • Currency
  • Description
  • Previous

La lista obtenida, de más de 6700 líneas de datos macroeconómicos y cotizaciones EURUSD no tiene utilidad práctica para el análisis simple en «modo manual», es necesario un procesador adicional, que pase todos los datos a un formato de tabla más cómodo, donde los datos estén clasificados según el tipo en columnas por separado y correlacionados en líneas según la fecha. Para procesar los datos y darles forma de tabla, se usa el script ListConvertToTable.

En el script, en la ventana de diálogo de ajustes es necesario indicar los nombres del archivo de entrada y el nombre del documento que obtenemos en la salida. Para procesar los datos, el archivo saliente debe colocarse preliminarmente en el catálogo_de_datos_del_terminal/MQL5/Files, el saliente se creará allí mismo.

Dado que hay muchos datos, el paso de lista de noticias a la tabla puede ocupar un tiempo muy considerable. En el script hay alertas incorporadas, que le ayudarán a comprender en qué fase se encuentra. La aparición de la alerta "8" significa que ha finalizado el proceso y se puede recoger el archivo. La tabla a la que se va a aplicar el análisis múltiple se incluye en el anexo al artículo.

Yo he obtenido lo siguiente como resultado (archivo adjunto "Calendar usd out"):

resultado del trabajo del script ListConvertToTable en el lenguaje MQL5

Fig. 9. Resultado del trabajo del script ListConvertToTable


Para procesar los datos recurriremos de nuevo al programa STATISTICA, Para cargar un archivo CSV en Statistica haremos lo siguiente.

  • En Statistica abra File, luego Open, elija el tipo de archivo “Data files” y abra nuestro archivo CSV.
  • En la ventana Text File Import Type deje Delimitedy pulse OK.
  • En la ventana que se abrirá, active los puntos subrayados.
  • En el campo Decimal separator character hay necesariamente que poner el punto, independientemente de que esté allí o no:

Importar una tabla de formato .csv al programa Statistica

Fig. 10. Importar una tabla de formato .csv al programa Statistica


Después de pulsar OK, obtenemos la tabla con nuestros datos. Los datos están listos para efectuar el análisis regresivo múltiple.

Para analizar la influencia de los datos en los cambios de precio sucesivos, es necesario añadir los periodos en los que han sucedido los cambios de precio. Yo he elegido para el análisis las noticias desde 2010 y tres variantes de variable dependiente:

  • El cambio de precio de la divisa, transcurrido 1 día desde la salida del índice;
  • El cambio de precio de la divisa, transcurridos 5 días desde la salida del índice;
  • El cambio de precio de la divisa, transcurridos 10 días desde la salida del índice.

Estas columnas pueden ser añadidas manualmente a la tabla .csv  antes de exportar al programa STATISTICA o bien en la tabla de la ventana del programa:

Fig. 11. Tabla de datos ampliada

Fig. 11. Tabla de datos ampliada


Los datos están listos, ahora podemos esclarecer los índices que influyen, a nuestro entender, en el cambio del curso de la divisa.


Funcionamiento del programa STATISTICA. Esclarecimiento de los factores que influyen en el precio

Ponga en marcha el Análisis regresivo (Statistics->Multiple Regression).

En la ventana que se abrirá, siga hasta la pestaña "Advanced" y active los puntos marcados. Pulse el botón "Variables".

En el primer campo, elija la variable dependiente (Dependent), en el segundo, elija las variables independientes (Independent), en base a las cuales construiremos la ecuación:

Fig. 12. Ventana de elección de parámetros

Fig. 12. Ventana de elección de parámetros


Usando el botón "Variables", elegimos los datos que se usarán durante el análisis:

Fig 13. Designación de variables dependientes e independientes

Fig. 13. Designación de variables dependientes e independientes


Aparecerá una ventana con una advertencia "Some variables have no variance", informándole de que algunas variables independientes elegidas sin datos no cambian. Las columnas así deben ser eliminadas. Mediante exclusión, encontramos la columna 49 "USD Federal Open Market Committee Rate Decision", la eliminamos, y obtenemos una tabla lista para el análisis (ver archivo adjunto)

Pulsamos "Ok". En la ventana que se abrirá a continuación, pase a la pestaña "Advanced", ponemos las aspas en las casillas de verificación:

Elección del método Forward Stepwise 

Fig. 14. Elección del método Forward Stepwise

 

Elija las opciones con la ayuda de los botones "Ok", en la siguiente ventana de elección de método para la selección automática de datos, elija el método "Forward Stepwise" y pulsamos otra vez "Ok":

Fig 15. Elección del método Forward Stepwise 

Fig. 15. Elección del método Forward Stepwise

Nos encontramos en la recta final. Se abrirá una ventana que informa de que el análisis regresivo se ha realizado con éxito, así que pulse el botón "Summary: Regression results".

Cuando se lleva a cabo la selección automática de índices, entonces se eligen aquellos de ellos que realizan mayor contribución a la correlacción múltiple entre los índices (variables independientes) y la variable dependiente. En nuestro caso, se elegirá el conjunto de indicadores que influyan en el precio con más intensidad. La selección automática, en esencia, juega el papel de generador de estrategia. En la ecuación generada solo entran aquellos indicadores que describan el comportamiento del precio de manera mejor y más fidedigna.

Las normas utilizadas en Statistica a la hora de incluir índices en el análisis no son siempre las óptimas. Por ejemplo, en una ecuación de regresión pueden incluirse muchos índices erróneos (fuente de texto negra en la tabla del resultado). Si en la lista hay índices inciertos, entonces debe regresar a la etapa de inclusión de los índices en el análisis y quitar este índice de la lista de índices elegidos para el análisis.

Para retornar, pulse el botón "Cancel" en la ventana de resultados del análisis y repita el análisis. Intente, de esta forma, excluir todos los índices que puedan ser inciertos. Trate de orientarse por el resultado obtenido de la correlación múltiple (Multiple R), no debería disminuir significativamente con respecto al inicial. Se pueden quitar los índices inciertos del análisis uno a uno, o bien quitarlos todos de golpe. Es preferible el primer método.

Al final, en la tabla se quedan los índices ciertos, que influyen en los cambios de precio. En las tablas tenemos destacadas en rojo aquellas variables para las que se ha establecido una cierta dependencia, su influencia en el cambio de precio, y en negro tenemos marcadas las variables que no ejercen influencia.

Al finalizar el análisis se descubrieron los índices que pueden ejercer influencia en el cambio de precio después de su publicación. Este conjunto de índices era diferente para diferentes periodos.

Como resultado de la elección, en calidad de variable independiente en la ventana izquierda "cambio del precio en 1 día" (es decir, hemos analizado cómo cambian los precios un día después de la salida de un índice) obtenemos:

Fig 16. Variable independiente "cambio del precio en 1 día"

Fig. 16. Variable independiente "cambio del precio en 1 día"

 

Retornamos con ayuda de "Cancel" y pulsamos el botón "Variables", volvemos a las listas de elección de variables. Vamos quitando gradualmente las líneas de variables dependientes, mostradas en letra negra, y dejamos solo las rojas. Estas serán, precisamente, las noticias que tengan influencia en los precios en los últimos días.

Presta atención a que en la tabla del dibujo las líneas se diferencia por colores. En rojo se destacan las variables independientes cuya influencia es considerable sobre la variable dependiente. En la figura de más abajo, todas las líneas se destacan en rojo, es decir, el margen de error en los resultados de la ecuación durante la substitución de los datos será menor que en el primer caso. La influencia se puede ver según los valores de los coeficientes de la última columna "p-value" , cuanto menor sea la cifra, mejor, y eliminar también del análisis las variables que no tengan influencia en el precio.

Haciendo lo mismo, pero eligiendo como variable dependiente el "cambio del precio en 5 días", obtenemos:

Fig. 17. Variable independiente "cambio del precio en 5 días"

Fig. 17. Variable independiente "cambio del precio en 5 días"

Como resultado de la elección, en calidad de variable independiente en la ventana izquierda "cambio del precio en 10 días", obtenemos:

Fig. 18. Variable independiente "cambio del precio en 10 días"

Fig. 18. Variable independiente "cambio del precio en 10 días"

Al elegir como variable dependiente el cambio de precio en los días siguientes a la salida de datos, obtenemos inesperadamente, que en 2010 y hasta mediados de 2011 los datos publicados en la esfera de la construcción de bienes inmuebles y los índices publicados por el Instituto de Richmond ejercieron una fuerte influencia en el cambio de precio en el día más próximo tras la salida de los datos .

Al elegir el periodo de 5 días tras la salida de datos, a los datos de la construcción se añaden la atención a los índices de la esfera productiva y no productiva, a los índices de coste de la mano de obra y las demandas de desempleo.

Al aumentar el periodo otros 5 días más, la estructura de influencia cambia, saltan a primer plano los valores de los índices en la esfera productiva y no productiva, las demandas de construcción de casas, el nivel de desempleo, los precios del portador de energía.

De esta forma, los factores de influencia en el precio de EURUSD coinciden, en general, con la lista de datos macroeconómicos del análisis fundamental, sobre cuya importancia se habla prácticamente en cada manual. Ahora estas palabras quedan corroboradas por las matemáticas y la estadística.


Ecuación de regresión y pronóstico final

No es suficiente con conocer los factores que influyen en los precios, hay que entender también en qué medida puede cambiar este precio al ser publicados. Para eso, hay que crear una ecuación de regresión (como en el ejemplo estudiado al principio del artículo).

En base a los datos obtenidos de la tabla de la fig. 18 "cambio de precio en 5 días" creamos una ecuación de regresión. Para esto, se usan las variables de la columna con el encabezado "b". La primera línea es la constante numérica obtenida como resultado del análisis. Planeo repasar la metódica de su cálculo en las siguientes publicaciones.

En base a estos coeficientes creamos la ecuación de regresión:

R=-0.0761294138334434+0.355142961984956*[cambio de precio en 1 día]+0.319936701020232*[cambio de precio en 10 días]+0.455193706894553*[USD Existing Home Sales (MoM)]--0.146961978306227*[USD MBA Mortgage Applications] + ...,

donde, en calidad de coeficientes se usan los valores de la columna "b", los multiplicadores de corchetes, son valores publicados de datos macroeconómicos.

Sustituyendo en esta ecuación el valor de los índieces macroeconómicos, publicados en la página, obtenemosun cierto número R, que será mayor o menor que cero.

Si al sustituir con los nuevos datos obtenemos un resultado positivo, entonces se supone que los precios crecerán durante el periodo elegido en el análisis, y el valor del número R mostrará la magnitud en la que estos precios pueden crecer.

Si el número R es negativo, entonces los precios pueden caer, el valor del número muestra cuánto precisamente puede disminuir el precio en el periodo elegido en el análisis.

Sustituimos los valores en esta fórmula y echamos un vistazo al resultado, tomando como ejemplo la pareja EURUSD.

Sustituimos los coeficientes de la tabla y tomamos, por ejemplo, los datos de la línea con fecha del 04.08.2010 y sustituimos todo en la ecuación:

b valor [b]х[valor]
Intercept -0.0761 1.00000 -0.0761
cambio de precio en 1 día 0.3551 -0.0070 -0.0025
cambio de precio en 10 días 0.3199 0.0244 0.0078
USD Existing Home Sales (MoM) 0.4552 -0.022 -0.0100
USD MBA Mortgage Applications -0.1470 -0.044 0.0065
USD Employment Cost Index 144.0041 0.006 0.8640
USD NAPM-Milwaukee 0.0106 59 0.6278
USD Existing Home Sales 0.0000 5660000 -0.6596
USD Unemployment Rate -6.7866 0.099 -0.6719
USD ISM Manufacturing 0.0197 56.2 1.1052
USD Capital Goods Orders Non defense Excluding Air -2.8934 0.048 -0.1389
USD Durables Ex Transportation 4.9290 0.012 0.0591
USD House Price Purchase Index (QoQ) -5.9295 -0.018 0.1067
USD Chicago Purchasing Manager -0.0160 59.1 -0.9433
USD Personal Consumption Expenditure Core (YoY) -19.8579 0.015 -0.2979
-0.0230

 

La cifra R=-0,0230 es inferior a cero, por consiguiente, desde el 04.08.2010 y para los próximos 5 días se conserva una tendencia de caída de los precios de hasta -230 puntos.

Echemos un vistazo al gráfico de la pareja EURUSD en este periodo:

 EURUSD agosto de 2010

Fig. 19. EURUSD agosto de 2010

El pronóstico del ejemplo de la figura ha sido corroborado, y el precio en los 5 días comerciales de verdad ha descendido desde los 1.3154 hasta los 1.2844 (con cierre el 11 de agosto), es decir, en -310 puntos.

El pronóstico de descenso que había dado la ecuación de regresión, se ha confirmado. De manera análoga se pueden sustituir otras fechas.

Conclusión

Este método de análisis de datos de los índices macroeconómicos permite simplificar y automatizar el análisis fundamental, como resultado, incluso un principiante puede operar con enormes cantidades de datos de estadística económica.

Además, esta aproximación al análisis fundamental permite reaccionar prácticamente al instante en su propia actividad comercial y corregir sus operaciones, teniendo en cuenta los datos de las noticias.

Sin embargo, quiero se preste la debida atención al hecho de que el pronóstico no garantiza al 100% que la divisa vaya a ir precisamente en la dirección predicha. El resultado del pronóstico es un evento probable, cuyo cumplimiento depende de multitud de factores. Además, es recomendable comprobar la ecuación de regresión con la llegada de nuevos datos.

Que tengan un buen pronóstico.

Traducción del ruso hecha por MetaQuotes Software Corp.
Artículo original: https://www.mql5.com/ru/articles/1087

Archivos adjuntos |
Calendar_USD.zip (48.71 KB)
Recetas de MQL5 - procesamiento de eventos típicos del gráfico Recetas de MQL5 - procesamiento de eventos típicos del gráfico

En este artículo se analizan los eventos típicos del gráfico y se dan ejemplos de su procesamiento. Han sido considerados los eventos del ratón, evento del teclazo, creación/cambio de propiedades, eliminación del objeto gráfico, clic del ratón en el gráfico y en el objeto gráfico, desplazamiento del objeto gráfico con ratón, fin de edición del texto en el campo de introducción, así como los eventos de modificación del gráfico. Cada evento va acompañado con ejemplos de programas en MQL5.

Los bosques aleatorios predicen las tendencias Los bosques aleatorios predicen las tendencias

En el artículo se describe el uso del paquete Rattle para la búsqueda automática de patrones capaces de predecir "longs" y "shorts" para las parejas de divisas del mercado Fórex. El artículo será de utilidad tanto a los principiantes, como a los traders experimentados.

Recetas MQL5 - procesamiento del evento BookEvent Recetas MQL5 - procesamiento del evento BookEvent

En el artículo se estudia el evento de la profundidad de mercado BookEvent y su principio de procesamiento. En calidad de ejemplo se crea un programa MQL5, que procesa el estado de la profundidad de mercado. Se usa una aproximación orientada a objetos. Los resultados del procesamiento se muestran en la pantalla en forma de panel y de niveles de profundidad.

Principios de programación en MQL5 - Variables globales del terminal Principios de programación en MQL5 - Variables globales del terminal

En este artículo se demuestran las posibilidades orientadas a objetos del lenguaje MQL5 en cuanto a creación de objetos responsables del funcionamiento con las variables globales del programa. Como ejemplo práctico se verá una situación en la que las variables globales pueden usarse como puntos de control en la ejecución de etapas del programa.