Discusión sobre el artículo "¡Cree su propio robot de trading en 6 pasos!" - página 6

 

Usando las instrucciones de este artículo, he intentado crear mi propia señal y EA, pero la señal persistentemente no quiere aparecer en la lista de señales "MQL Wizard".

El Asesor Experto no realiza transacciones y no dibuja algunos indicadores durante las pruebas. He intentado crear mis propias señales y Asesores Expertos y rehacerlos a partir de señales y Asesores Expertos que funcionan.

Al descargar señales del sitio, tampoco se pueden insertar en la lista de señales "MQL Wizard", aunque los Asesores Expertos y las señales funcionan perfectamente. Perdón por las preguntas de un novato,

pero de la discusión en el foro, me di cuenta de que se producen problemas similares, pero no entendía cómo tratar con él. Es un problema del terminal o del código.

He probado en terminales VTB24 e Insta. En la compilación no se ve ningún error. ¿Qué número de indicadores es posible cuando se crea una señal

Archivos adjuntos:
HetireEMA.mq5  13 kb
Signal4EMA.mqh  15 kb
 
¡No soy un maestro de la programación en mql5, pero a partir de este artículo llegué a la conclusión de que para escribir un simple experto en la intersección de 2 MAs, en mql5 necesita 2 archivos, y además algunos complicados escribir mucho! ¡¡¡¡¡En mql4 para tal Asesor Experto no necesita más de 10 líneas y se hace!!!!! ¡¡¡¡Resulta que si en mql4 se gasta en la EA por ejemplo 1 día - en mql5 que necesita para matar a la misma EA tanto como 3, en el mejor de 2 días!!!! ¡Y también entendí la diferencia entre estos dos idiomas sólo en el hecho de que en mql5 puede hacer todo tipo de paneles hermosos y funcionales y eso es todo, y del hecho de que está escrito en mql5, este experto no va a operar mejor! Critica y hazme cambiar de opinión.
 
zlodei:
Criticar y hacerme cambiar de opinión.
Intenta leerlo de nuevo.
 
zlodei:

¡No soy un maestro de la programación en mql5, pero a partir de este artículo llegué a la conclusión de que para escribir un simple Asesor Experto en la intersección de 2 MAs, necesita 2 archivos en mql5, además de un montón de escritura complicada!

La conclusión es errónea, ya que se ofrecen soluciones universales ya hechas. Y tales soluciones no existen en dos líneas

¡¡¡¡Si usted necesita un robot puramente en la intersección de 2 MAs, específicamente para su tarea, también puede ser escrito en MQL5 en 10 líneas y es done!!!!

 

El Asesor Experto que he creado (hetireema.mq5) de alguna manera milagrosa trabajó en InstaTrader5 terminal (madurado sin manipulaciones innecesarias), pero la señal no es visible en el Asistente (no madurado todavía). Señales más complejas creadas por analogía con 7 y 10 EMA- y de nuevo no funcionan, aunque el compilador no ve ningún error, en el terminal los archivos del Asesor Experto y la señal están presentes, en el probador el Asesor Experto está presente, los parámetros de entrada están establecidos, pero las operaciones no se realizan. Es decir, lenguaje mql5 con caprichos o terminales con fallos.

Es realmente muy difícil crear código en mql5. Para describir la ubicación mutua de varias EMAs necesitas 500 líneas de código, o incluso más. La mayor parte del código es la comprobación de errores y condiciones que sobrecargan el código. He creado robots en el terminal AstTrader (ActFX (Pascal) lenguaje), allí los robots comerciales se pueden hacer 50 piezas al día con cualquier conjunto de indicadores y condiciones. El robot toma 2 páginas sin codobludy innecesario. Sin embargo, las pruebas son extremadamente lentas y el historial de velas es muy MUY!!! corto. En MQL5, la velocidad y un largo historial de velas eran una gran ventaja. Tienes que elegir entre escribir robots durante semanas o probar robots escritos rápidamente. Si MQL4 anula todas estas desventajas, voy a ir allí. Aunque la discusión de las lenguas es probablemente una rama diferente del foro.

 
alextxpert99:

El Asesor Experto que creé (hetireema.mq5) de alguna manera milagrosa funcionó en el terminal InstaTrader5 (maduró sin manipulaciones innecesarias), pero la señal no es visible en el "Asistente" (aún no ha madurado).

¿Está seguro de que ha hecho todo según la receta?

  1. Crea una nueva clase usando el Asistente MQL5 en una carpeta separada MQL5/Include/MySignals/. Contendrá nuestro módulo de señales de trading.
    .
  2. Crear un descriptor de módulo que describe los parámetros, su tipo y valores por defecto.
  3. Declarar los parámetros del módulo en la propia clase y añadir métodos para la inicialización en el constructor.
  4. Compruebe que los parámetros de entrada son correctos y no olvide llamar al método ValidationSettings() de la clase base CExpertSignal.
  5. Cree objetos indicadores y añada el método de inicialización predefinido InitIndicators().
  6. Defina las condiciones de ocurrencia de las señales de trading en los métodos LongCondition() y ShortCondition().
 
Lo intentaré una y otra vez. Le comunicaré los resultados.
 
¡¡¡Gracias por el apoyo!!! Había un error en el descriptor del módulo -(Tipo - indica la versión del módulo de señal. Siempre debe ser SignalAdvanced;). Lo he corregido y las señales aparecen en el Asistente. Los indicadores no aparecen en las señales cuyo número es superior a 4. Cuando cree un Asesor Experto, intentaré componer varias señales de trading simples del mismo tipo.
 

Un artículo muy bien escrito que, sin embargo, me dejó frustrado como ya para el primer/segundo (?) paso me dieron dos mensajes de error:

En la línea 10 el compilador fue capaz de encontrar pero no de abrir el archivo "ExpertSignal.mqh". Lo comprobé descargando el archivo adjunto "MA_...", para el que el compilador dio el mismo mensaje de error. Luego, por supuesto, tampoco fue capaz de discernir la estructura de"CExpertSignal" en la línea 33 ("MA_..."), descarrilando así todo el proceso.

¿Qué ha fallado ahí?

Muchas gracias.

Locan.BBS

 
locan.BBS:

Un artículo muy bien escrito que, sin embargo, me dejó frustrado como ya para el primer/segundo (?) paso me dieron dos mensajes de error:

En la línea 10 el compilador fue capaz de encontrar pero no de abrir el archivo "ExpertSignal.mqh". Lo comprobé descargando el archivo adjunto "MA_...", para el que el compilador dio el mismo mensaje de error. Luego, por supuesto, tampoco fue capaz de discernir la estructura de "CExpertSignal" en la línea 33 ("MA_..."), descarrilando así todo el proceso.

¿Qué fallaba ahí?

El ExpertSignal.mqh se encuentra en terminal_data_folder\MQL5\Include\Expert\ExpertSignal.mqh.

Tal vez el problema es la ubicación incorrecta de MA_Cross.mqh (debe ser creado en terminal_data_folder\MQL5\Include\Expert\MySignals\MA_Cross.mqh):