Discusión sobre el artículo "Desarrollando los Asesores Expertos multimódulo" - página 2

 
Aleksandr Masterskikh:

La multimodularidad del sistema de negociación viene determinada principalmente por la naturaleza del proceso (en el caso de los mercados financieros, el movimiento de los precios es un proceso no estacionario).

Y el modelado de un proceso tan complejo (porque el desarrollo de EA es siempre un modelado de procesos) es imposible con la ayuda de un único algoritmo de entrada, incluso muy complejo. Para acercarse al proceso en términos de precisión, se necesita un conjunto de algoritmos (módulos), cada uno de los cuales es un modelo independiente.

¿Por qué tengo que modelar algo para comprar/vender algo? ¿Y qué tiene que ver esto con los aspectos tecnológicos? ¿Por qué hablamos de estacionariedad?

Chico, publica el código, o TOR, o cualquier otra cosa, y entonces prestaré atención a tus juicios.

 
El autor del artículo cometió un error fundamental. Equiparó un conjunto de módulos con un Sistema de Negociación. Explicación. Características de cualquier sistema: 1. Jerarquía, la presencia de principal y subordinado (es), 2. Descomposición, por ejemplo, la división en módulos (esto también está ahí), 3. Interconexión (incluyendo la inversa), y esto no es. Debería ser así: cualquier módulo tiene interrelación con cualquier otro módulo. Por ejemplo, en el Sistema Solar, el Sol es el principal, el sistema está dividido en planetas (módulos) y todos están interconectados y se influyen mutuamente. Así que el autor tiene más trabajo que hacer.
 
MetaQuotes Software Corp.:

Nuevo artículo Desarrollando Asesores Expertos multimódulo ha sido publicado:

Autor: Sergey Pavlov

Esto es interesante como plantilla de generación de proyectos para casos de uso específicos, pero veo muchos problemas que inevitablemente surgirían al utilizarlo como patrón de desarrollo generalizado.

La auto-optimización de los módulos llevaría a un constante ajuste de curvas sobre el conjunto de datos históricos de optimización, llevando al EA a la trampa de tener una "memoria de mercado". A medida que la volatilidad sube o baja con respecto al tamaño de la muestra de entrenamiento, el módulo se quedaría rezagado y, por lo general, establecería stop loss o take profit demasiado cerca. Estadísticamente generaría más perdedores que ganadores a lo largo del tiempo. Con muestras de mayor tamaño, el ajuste de la curva sería extremadamente específico para las condiciones espurias del mercado que se produjeron a lo largo del historial de la muestra.

Abandonando la auto-optimización, tendríamos que ajustar manualmente el código fuente para explorar los parámetros de los indicadores, en lugar de ser capaces de utilizar el probador de estrategias para iterar rápidamente a través del "espacio del problema" y hacer un análisis comparativo de los resultados. Así que, básicamente, nos pasaríamos 1000 años buscando parámetros en estrategias de negociación relativamente sencillas.

La composición de programas siempre produce un "monolito" como producto final, aunque existen varios medios para componer los subcomponentes del monolito resultante. Es decir, todo el programa masivo tiene que funcionar independientemente de cómo esté organizado su código fuente, porque todo acaba como código máquina en alguna parte. Esta solución básicamente sacrifica la "interfaz de usuario", es decir, la entrada, para resolver problemas con la definición de bloques de código discretos que puedan mantenerse de forma fiable a lo largo del tiempo. Estos problemas se resuelven más comúnmente a través de principios OO utilizando clases e interfaces. El nivel "superior" de la biblioteca o programa es donde se declara un resumen de las dependencias internas, cosas como rutas a módulos, entradas, etc. La creación de un sistema en el que el nivel "superior" básicamente prohíbe las entradas es restringir el desarrollador de la interfaz con las herramientas integradas en metatrader que proporcionan para el desarrollo de estrategias y la definición de riesgo, que es más o menos como cambiar el nombre de los archivos en su sistema de módulos desde el punto de vista del usuario final.
 
Enhorabuena! Gran material de estudio,
 

Me gustaría expresar mi gratitud al autor de este artículo. Gracias por tanta labor. Para mí como un principiante en OOP y mql5 específicos, este artículo me ayuda a dominar el lenguaje en general. Señores que ven las deficiencias, la aplicación del concepto en el artículo anterior, me gustaría decir que no hay límite a la perfección en cualquier lugar, para mejorar tal vez creo y su trabajo es todavía donde .....

Este artículo está más bien orientado para principiantes en el aprendizaje de idiomas...

 
MetaQuotes:

Se ha publicado el nuevo artículo Desarrollo de un sistema de negociación inteligente multimódulo:

Por Sergey Pavl

Hola ¿Hay un código fuente?

 
¡MT5 hedge ea en xm broker back test normal open order hedge! Pero cuando pruebo con ic, no abre ordenes largas y no hace hedge? ¿Alguien sabe por qué sucede esto?