Discusión sobre el artículo "Introducción a MQL5 (Parte 7): Guía para principiantes sobre cómo crear asesores expertos y utilizar código generado por IA en MQL5"

 

Artículo publicado Introducción a MQL5 (Parte 7): Guía para principiantes sobre cómo crear asesores expertos y utilizar código generado por IA en MQL5:

Descubra la guía definitiva para principiantes sobre cómo crear asesores expertos (Expert Advisors, EAs) con MQL5 en nuestro artículo completo. Aprenda paso a paso cómo construir EA usando pseudocódigo y aprovechar el poder del código generado por IA. Ya sea que sea nuevo en el comercio algorítmico o busque mejorar sus habilidades, esta guía proporciona un camino claro para crear EA efectivos.

Aprender todos los aspectos de MQL5 a la vez puede resultar abrumador. En cambio, centrarse en proyectos puede hacer que el proceso de aprendizaje sea más manejable y agradable. Comience por dominar conceptos fundamentales como variables, bucles, condiciones, funciones y todos los demás conceptos básicos discutidos en artículos anteriores. Una vez que tengas un dominio sólido de estos conceptos básicos, comienza a explorar proyectos que te interesen, como crear Expert Advisors o indicadores personalizados. Cada proyecto en el que trabajes presentará nuevos desafíos y te enseñará lecciones invaluables. A través del aprendizaje basado en proyectos, puedes poner en práctica tus conocimientos teóricos en escenarios del mundo real, lo que te ayudará a comprender mejor las complejidades de MQL5. Adquirirás progresivamente los conocimientos y las habilidades necesarias para manejar la complejidad de la programación MQL5 a medida que trabajes en una variedad de proyectos. 

Aceptar este método de aprendizaje te da la capacidad de avanzar como programador de manera constante y segura. En lugar de sentirse intimidado por la inmensidad de MQL5, lo abordará proyecto por proyecto, aumentando gradualmente su competencia. Por lo tanto, acepte el aprendizaje basado en proyectos; es la forma más confiable de dominar MQL5. Decidí utilizar el aprendizaje basado en proyectos a lo largo de esta serie debido a su eficacia. En lugar de lanzarte de cabeza a las complejidades de MQL5, nos centraremos en proyectos prácticos que te permitan aprender a través de la experiencia. Trabajar en proyectos del mundo real le ayudará a comprender mejor el tema y desarrollar habilidades útiles que mejorarán sus estrategias comerciales.

Comenzaremos con proyectos básicos, aptos para principiantes, y avanzaremos hasta otros más complejos. Si sigue este enfoque metódico, podrá asegurarse de tener una comprensión sólida de la programación MQL5 antes de avanzar a temas más complejos. Adquirirás nuevas habilidades e ideas con cada proyecto, lo que te ayudará a mejorar gradualmente. El proyecto en el que trabajaremos en este artículo actuará como un ejemplo práctico del procedimiento secuencial para generar asesores expertos en MQL5. También analizaremos cómo optimizar los beneficios del código generado por IA en el contexto de MQL5.


Autor: Israel Pelumi Abioye

 

Esclarecedora información, señor, muchas gracias.

 
Clemence Benjamin #:

Información esclarecedora, señor, muchas gracias.

De nada.
 

Lecciones muy útiles. Espero ver la continuación de la serie con proyectos adicionales y una progresión en profundidad para seguir aprendiendo la programación MQL. Es difícil encontrar una introducción paso a paso al lenguaje y cómo aplicarlo eficazmente.

Gracias por su gran trabajo.

 
Oscar Hayman proyectos adicionales y una progresión en profundidad para seguir aprendiendo la programación MQL. Es difícil encontrar una introducción paso a paso al lenguaje y cómo aplicarlo eficazmente.

Gracias por su gran trabajo.

Hola Oscar. Gracias por tus amables palabras.
 
Hola, en primer lugar gracias por esta guía. La vi a principios de esta semana y la revisé en busca de una forma rápida y sencilla de conocer MQL5, y tu trabajo me ha sido de gran utilidad. Tengo una tarea muy específica que hacer, y ahora estoy buscando una manera de completarlo. Conozco mi estrategia de trading, sé cómo me gustaría agilizar mi trading con la automatización, sé lo que mi algoritmo / robot / EA tiene que hacer, y he descompuesto todo el proceso en pasos sencillos, así que sé cómo traducirlo a MQL5. Quiero programarlo yo mismo (en lugar de pagar a alguien para que lo haga o pedir a GPT que lo escriba para mí) porque quiero saber cómo cambiar el código cada vez que lo necesite. Intentaré escribirlo, pero parece que en múltiples ocasiones tendré alguna pregunta concreta. ¿Existe algún foro de MQL5? ¿O alguna otra plataforma donde los usuarios intercambien opiniones? Muy agradecido
 
Rece_w_kieszeniach estrategia de trading, sé cómo me gustaría agilizar mi trading con la automatización, sé lo que mi algoritmo / robot / EA tiene que hacer, y he descompuesto todo el proceso en pasos sencillos, así que sé cómo traducirlo a MQL5. Quiero programarlo yo mismo (en lugar de pagar a alguien para que lo haga o pedir a GPT que lo escriba para mí) porque quiero saber cómo cambiar el código cada vez que lo necesite. Intentaré escribirlo, pero parece que en múltiples ocasiones tendré alguna pregunta concreta. ¿Existe algún foro de MQL5? ¿O alguna otra plataforma donde los usuarios intercambien opiniones? Muy agradecido
OK, veo el foro MQL5, ¿hay algún otro, algo digno de mención? Muchas gracias.
 
Rece_w_kieszeniach #:
OK, veo el Foro MQL5, ¿hay algún otro, algo digno de mención? Gracias.
Hola Rece, me alegro de que hayas encontrado el artículo útil. Si desea escribir el programa usted mismo, el mejor lugar para obtener respuestas a sus preguntas sigue siendo el foro MQL5. Si usted tiene cualquier problema con su EA, no dude en ponerse en contacto conmigo.
 
He estado siguiendo su serie y debo decir que las explicaciones son geniales y estoy deseando aprender más de artículos basados en proyectos como este
 
Oluwatosin Mary Babalola proyectos como este

Hola Oluwatosin, estoy deseando compartir la siguiente parte contigo. Si tienes alguna pregunta sobre el artículo, no dudes en ponerte en contacto conmigo.

 

¿Y por qué una guía para principiantes les enseñaría inmediatamente a codificar de forma incorrecta?

En primer lugar, hay problemas de eficiencia que se harán notar en cuanto una persona empiece a escribir algo un poco más complejo y realista (pero siga utilizando la misma técnica). En cada tick, se llama tres veces a una conversión StringToTime de las mismas cadenas. Sería posible limpiar para la IA - hacer la conversión una vez en variables globales:

input string Alarm1 = "00:00:00"; // Valor por defecto para la primera alarma
input string Alarm2 = "00:00:00"; // Valor por defecto para la segunda alarma
input string Alarm3 = "00:00:00"; // Valor por defecto para la tercera alarma
input string Sound = "alert.wav"; // Archivo de sonido predeterminado

// Definir globales para valores persistentes
datetime first_Alarm, second_Alarm, third_Alarm;

int OnInit()
{
   // Función de inicialización, ejecutada una vez al lanzar el EA
   // Realizar las conversiones sólo una vez por entrada
   first_Alarm = StringToTime(Alarm1);
   second_Alarm = StringToTime(Alarm2);
   third_Alarm = StringToTime(Alarm3);
   return 0; // Devuelve 0 para indicar que la inicialización se ha realizado correctamente
}

void OnTick()
{
   // Obtener la hora local actual
   datetime Time = TimeLocal();

   // Comprueba si la hora actual coincide con alguna de las horas de alarma
   if(first_Alarm == Time || second_Alarm == Time || third_Alarm == Time) // otro error lógico aquí (véase más abajo)
   {
      // Reproducir sonido si se alcanza alguna hora de alarma
      PlaySound(Sound);
   }
}

En segundo lugar, no hay garantía de que los tiempos de tick coincidan con los tiempos de alerta dados - lo más probable es que este código los pase por alto en los tiempos if. E incluso si hubiéramos hecho comprobaciones en el manejador OnTimer, no garantizaría que "pilláramos" los momentos necesarios, porque todos los eventos (OnTick, OnTimer, etc.) vienen de la cola, que se vacía lo más rápido posible, pero puede ralentizarse si algún otro programa está haciendo cálculos pesados. Por lo tanto, la condición de comprobar la ocurrencia de alertas debe ser reescrita a fondo, y al menos sin variables adicionales no es posible (en el futuro, se sugiere rehacer las alertas bajo clases, pero por supuesto no en este artículo).