Descargar MetaTrader 5

Modelo de Regresión Universal para la Predicción de Precio de Mercado

21 marzo 2014, 13:54
Yousufkhodja Sultonov
0
1 605

Introducción

El precio de mercado se forma mediante un equilibrio estable entre oferta y demanda, que a su vez depende de una variedad de factores económicos , políticos y psicológicos que son difíciles de considerar directamente a causa de las diferencias en su naturaleza, así como las causas de su influencia.

No obstante, es necesario ser capaz de prever y predecir el comportamiento futuro del precio del mercado con una cierta precisión para ser capaz de tomar las decisiones correctas respecto a la compra o venta de bienes, incluyendo divisas o acciones, en la situación actual. Este problema se puede solucionar usando una cantidad considerable de información de diferente naturaleza de todo tipo de fuentes que se procesa de una forma u otra.

Hay 4 tipos de análisis /1/ que se usan para el desarrollo de una estrategia efectiva y tácticas del comportamiento del mercado dependiendo del propósito, cualificación o predisposición del investigador:

  1. Análisis técnico basado en la afirmación de que el precio de mercado tiene en consideración todo lo que lo puede afectar. Utiliza técnicas matemáticas avanzadas /2/;
  2. Análisis fundamental que trata el efecto de diversos factores económicos en el precio de mercado. Substancialmente usa modelos macroeconómicos /3-5/;
  3. Análisis intuitivo basado en el conocimiento de los mayores índices e indicadores de mercado, método de predicción de sus comportamientos futuros, cuyos resultados no se pueden probar aplicando directamente reglas lógicas y matemáticas a las premisas iniciales, pero que, inexplicablemente, suelen acabar siendo ciertos;
  4. Psicoanálisis basado en un análisis psicológico de las condiciones de mercado para cada cliente individualmente, y juntos como un grupo, resultado en éxitos variados.

Estado de Conocimiento con Respecto al Problema

En nuestra opinión, cualquier técnica, incluyendo un nuevo método propuesto para la predicción de precio de mercado, debería considerar y, en una afortunada combinación de circunstancias, explicar las leyes basadas en tres axiomas conocidos como la Teoría Dow /6,7/ que se puede formular brevemente de la siguiente manera:

  1. El precio de mercado tiene en cuenta todos los factores que lo afectan, de acuerdo con la ley de oferta y demanda, y basta con tener información sobre los cambios en el precio de mercado a través del tiempo para poder predecirlo;
  2. La dependencia del precio de mercado en el tiempo es sujeto de tendencias que generalmente tienen forma de S, y los altos y bajos suelen estar conectados por líneas horizontales (planas) que se llaman tendencias laterales;
  3. Existen patrones de cambio de precio de mercado que ya existen objetivamente y que permanecen inalterables a través del tiempo, conocidos como los principios de que "la historia se repite", o "funcionaron bien en el pasado, y seguirán funcionando bien en el futuro".

No obstante, a las fases de reposo dinámicas de las series de precio de mercado, por ejemplo los tipos de cambio, le siguen fases que son tan complejas que dan la impresión de un caos completamente impredecible, que en el proceso de la auto-organización dan lugar al orden de nuevo.

Pero llegados a un determinado punto, el sistema dinámico debilitado por la estabilidad produce de nuevo un caos que nos da motivos para creer que la naturaleza de las series cronológicas de indicadores económicos es diversa. Esto significa que las series de precio de mercado son deterministas y analizables en algunos momentos, pero no se pueden predecir de forma segura en otros momentos; siguen la ley de distribución normal /8/ y actúan como una variable aleatoria en otros momentos.

Por tanto, el mundo científico actual no tiene todavía una opinión común respecto a la naturaleza de los cambios en el precio de mercado, lo que nos impide encontrar las dependencias que los definirían adecuadamente y serían aplicables en la práctica.


Funciones Transitorias para un Modelo de Celda Única de Caja Negra

A causa de la confusión que supone el proceso, yo sugiero echar primero un vistazo a un modelo de celda única de caja negra, que se atribuye a veces al problema en cuestión /1/, y aplicar la ecuación de equilibrio material.

Yendo más a fondo con los axiomas mencionados, imaginemos que el precio de mercado de equilibrio solo puede cambiar cuando resulta afectado por una fuerza externa D(t), cuya cantidad y valor se pueden medir en la misma dimensión que el precio.

Imaginemos también que el cambio en el precio de mercado P(t) a través del tiempo t desde el principio del impacto de la fuerza especificada se incrementa continuamente desde el valor cero de acuerdo con alguna ley que hasta ahora desconocemos, tratando de llegar a un valor de P(∞) = D0 en el infinito. En otras palabras, D0 implica un incremento o decremento finito del precio de mercado dependiendo de la naturaleza y signo de la fuerza que lo afecta.

También se implica que D(t=0) = D0. Podemos asumir también que, en el curso del período infinitesimal del período de tiempo dt, la fuerza que lo afecta disminuirá por el valor de dD(t) en proporción a la fuerza D(t) restante para el tiempo t:


de donde obtenemos la dependencia exponencial D(t) en el tiempo t, tal y como se muestra aquí:

                                                                                                                  (1)

donde:                                                                                                                                       

t es el período desde el principio del impacto de la fuerza desestabilizadora en unidades de series cronológicas, sec. (min, hrs, días, semanas, décadas, meses, años);

τ (tau) es el factor de proporcionalidad numérica igual a la constante de proceso de tiempo, sec. (min, hrs, días, semanas, décadas, meses, años).

Ahora, imaginemos que el cambio de velocidad V(t) del precio de mercado es proporcional tanto al valor de D(t) como al tiempo t:

donde:                                                                                                                                    (2)

k es el factor de proporcionalidad que tiene la dimensión 1/(tiempo)^2;

β = k*τ*D0 es el factor de proporcionalidad que tiene la dimensión de la velocidad de cambio de precio de mercado.

El incremento o decremento absoluto del precio por unidad de tiempo para el tiempo t que se expresa como H(t) es numéricamente igual a V(t):

H(t) = V(t) = β*m

Sin duda, integrando H(t) a través de toda la extensión del cambio de tiempo t obtendremos un valor total del cambio en el precio de mercado P(t) para el tiempo t desde el comienzo de su desestabilización:   

donde:                                                                                                                    (3)

Puesto que está basado en (3), parece que el momento en que t = ∞  s = 1, llegamos a la conclusión que:

P(∞) = β = D0;

or: β = D0/τ;

Al comparar la nota anterior de β con el resultado recibido, concluimos que:

   k = 1/τ^2;

Ahora, las siguientes relaciones son ciertas: 

         H(t) = D0*m;

         P(t) = D0*s.

Por tanto, si los coeficientes de τ y β están determinados, es posible estimar y predecir el cambio de precio D0 en cualquier fase del cambio de precio, incluyendo la fase temprana. No obstante, estas declaraciones solo serán ciertas cuando la condición de equilibrio material se cumpla:

D(t) + H(t) + P(t) = D0                                                                                                                                     (4)

o:  

   Por tanto, se cumplirá el requisito de normalización:

      ℓ + m + s = 1;                                                                                                                                          (5)

   Comprobemos este hecho usando las relaciones (1-3):

     

El cumplimiento preciso de la condición de equilibrio material (4) y satisfacción del requisito de normalización (5) indican que las suposiciones que hicimos y las relaciones propuestas son ciertas.


Funciones Transitorias para un Modelo de Celda Múltiple 

Siguiendo un razonamiento similar respecto a un modelo de caja negra de celda múltiple consistente en n celdas, obtenemos las siguientes relaciones para las funciones D(t), H(t) y P(t):

  • D(t) = D0 * L;
  • H(t) = D0 * M;
  • P(t) = D0 * S;

donde:

eq6                                                                                                         (6)

que yo he llamado una "función de distribución exponencial acumulativa de dos parámetros" por ahora

eq7                                                                                                  (7)

es un tipo de función de densidad de probabilidad de la distribución Gamma, o función de densidad de probabilidad de la distribución Erlang;

eq8                                                                                                        (8)

es un tipo de función de distribución acumulativa de la distribución Gamma o función de distribución acumulativa de la distribución Erlang,

  •  t/τ, n son parámetros de distribución;
  • 1 es una expresión booleana evaluada a "true";
  • 0 es una expresión booleana evaluada a "false";

La integración (8) puede probar que:

eq8-2

o:         

eq8-1

Consecuentemente, de acuerdo con (6-8), el requisito de normalización se cumple precisamente en este caso, también:

                                    L+M+S = 1;                                                                                                              (9)

He llamado a la función L una "función de períodos futuros", puesto que el precio de mercado futuro depende de su valor; la función M, "función del presente", puesto que determina el cambio en el precio de mercado por unidad del período de tiempo especificado; y la función S, "función del pasado", puesto que el nivel de precio de mercado conseguido durante el período de tiempo entero desde que se dio la desestabilización depende del valor de esta función, que no contradice la noción de transitoriedad, y expande en gran medida nuestra idea de qué está pasando en términos de filosofía del problema.

Sustituyendo n = 1 en (6-8) podemos ver que las funciones L, M y S se convierten en funciones ℓ, m y s respectivamente, y por tanto consideraremos solo las funciones L, M y S como los casos más generales de las funciones de esta clase para propósitos de predicción.


Desarrollo de Modelo de Regresión Universal de Predicción de Precio de Mercado en la Base de Funciones Transitorias Revelado

La dependencia del nivel de precio de mercado (P(h) en el tiempo t desde el principio de las observaciones se expresará de la siguiente manera:

En un modelo de celda única:

eq10a  (10a)

En un modelo de celda múltiple: 

eq10b  (10b)

donde:     P0 es el nivel de precio justo antes de su desestabilización, por ejemplo para el tiempo t = 0.

Los parámetros n y τ, así como el coeficiente de β, se determinan usando los valores de precio de mercado reales del principio de su desestabilización en el mercado, donde se analizan cambios en el precio de mercado f por unidad de tiempo t que se pueden tomar como el valor de la derivativa de (10b). Se puede ver que el error de aceptar esta suposición es prácticamente insignificante, puesto que se trata de varios cientos de un porcentaje del valor de cambio de precio. La aceptación de esta suposición facilita mucho el proceso de determinar los parámetros anteriores y el coeficiente de β.

Tras analizar la función S, ahora podemos continuar con el análisis de la función M:

eq11                                                        (11)

Dividiendo ambas partes de (11) por t^n y tomando el logaritmo de la relación obtenida, conseguiremos una ecuación de línea recta en coordinadas semi-logarítmicas:


Ahora, si se conocen los valores de la función f con los puntos de tiempo t correspondientes, los parámetros n y τ, así como el coeficiente β, se pueden determinar de la siguiente manera:

                                                       (12)

                                                                                                        (13)

eq14                                                                                                                          (14)

donde:

Los valores de la función f con los puntos de tiempo t correspondientes se determinan con base en los valores de precio de mercado reales Р0, Р1,…, Рк por los puntos de tiempo һ0, һ1,…, һк del principio de la desestabilización del precio de mercado por medio de diferenciación e integración numérica en mitad del intervalo:

f1 = (P1 - P0)/(һ1 – һ0);

f2 = (P2 – P1)/( һ2– һ1);

f3 = (P3 – P2)/( һ3– һ2); and so forth;

t1 = (һ0 + һ1)/2;

t2 = (һ1 + һ2)/2;

t3 = (һ3 + һ2)/2; and so forth.


Corrección y Ajuste del Modelo 

La comprobación práctica de las ecuaciones (10a) y (10b) como modelo de regresión al usar los datos reales muestra que los valores Р(0) y D0 deberían corregirse de la siguiente manera:

                                                         (15)

                                                                                                     (16)

donde: Sf y Sr son áreas de curvas reales y teóricas, respectivamente;

∑Pf = P0+ P1 + P2 + …+ Pk es la suma de valores de precio reales;

eq17                                                                                                      (17)

i = 0, 1,2,......k; 

k>2 es el número de intervalos de tiempo por los cuales se determina la diferencia de precio;

b es el coeficiente de la ecuación de regresión lineal que determina la dirección de la tendencia de la información real.

Ahora la ecuación de regresión (10b) para predecir el precio de mercado P(t) toma la forma final, como se muestra a continuación:

eq18                                                                                           (18) 


Comprobación de modelo

Al parecer, los valores de precio de mercado P(t) calculados de esta forma y los valores de precio reales Pf facilitados por el ejemplo del mercado Forex de abajo siempre cumplen la condición de equilibrio material de forma completa y precisa:

∑ P(t) = ∑ Pf.                                                                                                                                                                    (19)

El hecho de que las sumas de valores reales y teóricos del parámetro que se estudia, en particular el precio de mercado, son exactamente iguales que cualquier valor de argumento, en particular el del tiempo, prueba que los cálculos, transformaciones y suposiciones aceptadas en la salida de función son correctas, y es una señal de la universalidad del modelo de regresión propuesto.

La imagen de abajo muestra los resultados del procesamiento de datos reales del mercado Forex (marco temporal de 1 minuto) de forma específica usando la ecuación (18), en la que se puede notar una correspondencia satisfactoria entre los valores reales (Pf) (línea amarilla con puntos rojos), los valores teóricos y de predicción (P1) (línea azul) y los valores futuros reales que no se tomaron en cuenta en los cálculos (Pff) (línea azul con puntos rojos) de las cuotas EUR/USD.

                                                                      


     

Conclusiones

Hemos identificado y propuesto tres funciones que describen tres elementos transitorios dinámicos, respectivamente, que se definen como varias modificaciones de la distribución Gamma que determinan el comportamiento del parámetro estudiado, particularmente el precio de mercado, dependiendo del tiempo en el futuro, presente y pasado desde el comienzo de la desestabilización.

Siguiendo el análisis de los procesos especificados, se mostró el modelo de regresión universal para la predicción de precio de mercado; puede servir como base para el desarrollo, por ejemplo, de indicadores de mercado para varios propósitos, Asesores Expertos que optimicen la actividad del trader, sistemas de trading automatizados, y podría incluso llevar al desarrollo de un robot de trading - ROBOTRADER, que podría llevar a cabo trading por sí mismo en beneficio de una persona.

P.S. Todas las relaciones y fórmulas, así como las suposiciones y conclusiones principales en este artículo, se han hecho, elaborado, introducido y publicado en la prensa pública por primera vez.


Referencias

  1. A. E. Kotenko. On Methods of Technical and Fundamental Analysis in the Forex Market Study (Sobre Métodos de Análisis Técnico y Fundamental en el Estudio del Mercado Forex). Revista electrónica "INVESTIGATED IN RUSSIA" ("INVESTIGADO EN RUSIA"), http://zhurnal.ape.relarn.ru/articles/2003/151.pdf
  2. V. N. Yakimkin. Forex Market – Your Way to Success (Mercado Forex - Su Camino hacia el Éxito), М., "Akmos-Media", 2001.
  3. V. N. Likhovidov. Fundamental Analysis of the Currency Markets: Methods for Prediction and Decision-Making (Análisis Fundamental de los Mercados de Divisas: Métodos de Predicción y Toma de Decisiones). Vladivostok, 1999.
  4. M. K. Bunkina. A. M. Semenov. Principles of Currency Relations (Principios de Relaciones de Divisas), М., Urait, 2000.
  5. Jeffrey D. Sachs, Felipe B. Larrain. Macroeconomics in the Global Economy (Macroeconomía en la Economía Global). М., Delo, 1996.
  6. Rhea, Robert. Dow Theory (Teoría Dow),- New York; Barrons, 1932.
  7. Greiner, P. and H. C. Whitcomb: Dow Theory, New York: Investor’s Intelligence (Teoría Dow, Nueva York: la Inteligencia del Inversor), 1969.
  8. O. S. Gulyaeva. Foreign Exchange Risk Management on the Basis of Currency Rate Pre-Prediction Analysis Using Fractal Methods (Gestión de Riesgos de Intercambio Extranjero en Base al Análisis Predicción de Tipos de Cambio Usando Métodos de Fractales). Ph.D. thesis, Moscow-Tver, TvGU, 2008. 

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

Exponer código C# a MQL5 usando exportaciones no gestionadas Exponer código C# a MQL5 usando exportaciones no gestionadas

En este artículo presento diferentes métodos de interacción entre código MQL5 y código gestionado C#. También facilito varios ejemplos sobre cómo ordenar estructuras MQL5 en contraposición a C#, y cómo invocar funciones DLL exportadas en scripts MQL5. Creo que los ejemplos que proporciono podrán servir como base para estudios futuros sobre escritura de DLLs en código gestionado. Este artículo también abre puertas para MetaTrader para usar varias bibliotecas que ya están implementadas en C#.

Random Walk y el Indicador de Tendencias Random Walk y el Indicador de Tendencias

Random Walk (RW) es muy parecido a los datos del mercado real, pero tiene algunos detalles significativos. En este artículo veremos las propiedades de Random Walk, que simularemos usando el juego de cara o cruz. Para estudiar las propiedades de los datos se desarrolló el indicador de tendencias.

Usar Indicadores de MetaTrader 5 con la Estructura de Aprendizaje Automático ENCOG para Predicción de Series Cronológicas Usar Indicadores de MetaTrader 5 con la Estructura de Aprendizaje Automático ENCOG para Predicción de Series Cronológicas

Este artículo presenta modos de conectar MetaTrader 5 a ENCOG - Red Neuronal Avanzada y Estructura de Aprendizaje Automático. Contiene la descripción e implementación de un indicador de red neuronal sencillo basado en indicadores técnicos estándar y un Asesor Experto basado en un indicador neuronal. Todos los códigos fuente, binarios combinados, DLLs y un ejemplo de red formada se pueden encontrar como archivos adjuntos a este artículo.

La implementación del análisis automático de las Ondas de Elliott en MQL5 La implementación del análisis automático de las Ondas de Elliott en MQL5

Uno de los métodos más populares del análisis del mercado es el análisis de las ondas. Sin embargo, este proceso es bastante complejo lo que comporta el uso de herramientas adicionales. Una de estas herramientas es el marcador automático. En este artículo se describe el proceso de creación del analizador automático de las Ondas de Elliott en el lenguaje MQL5.