Discusión sobre el artículo "MQL5 Wizard: Cómo crear un módulo de señales de trading" - página 3
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
En la nueva versión del MQL5 Wizard, el formato de los módulos de señal ha cambiado. Mire aquí para obtener información - https://www.mql5.com/ru/forum/3724/66962#comment_66962.
Miré a través del código de varias señales listas de la carpeta de señales, no hay ninguna implementación de las funciones CheckOpenShort/CheckOpenLong. ¿En lugar de ellos se utilizan correctamente entiendo?
Sí, así es.
Para ser honesto, estoy un poco confundido. Hay funciones CheckOpenShort/CheckOpenLong en la clase CExpertSignal. Tú usas otras funciones en tus señales, y tampoco entiendo dónde se llaman en CExpert. El problema es que tomé una señal ya hecha del artículo sobre cómo escribir mi propio módulo de señales, hice que el asistente la viera (probablemente puedas hacer cambios en el artículo sobre el nuevo formato) y obtuve un Asesor Experto con esta señal, pero no opera, ni una sola operación en el probador durante un año.
Las funciones se llaman en el constructor - está claro, pero ¿por qué no se utilizan funciones estándar?Por favor, vea lo que está mal. No es el comercio en el probador.
Este módulo es el comercio.
Para su caso, reemplace para largos
if( High(1) > High(2) && Low(2)>Low(3) && High(2)<High(3) && Close(3)>Open(3) ){ return(100); } //--- условие не выполнено return(0); }por
for shorts - encuéntrelo usted mismo
este módulo comercia
para su caso, sustituya los largos
por
por cortos, lo encontrarás tú mismo.
Sí, gracias. Pasé el día, creo que hice todo como en el artículo, ¿cuál es mi error?
En el nuevo asistente comparado con el anterior hay cambios muy grandes,
virtual bool CheckOpenLong(double& price,double& sl,double& tp,datetime& expiration);
virtual bool CheckOpenShort(double& price,double& sl,double& tp,datetime& expiration);
Entendí lo siguiente: debe haber un objeto de la clase CExpertSignal entre varios objetos utilizados en el Asesor Experto con el atributo principal, puede utilizar estas funciones. otros objetos participan en la apertura de posiciones a través de las funciones
virtual int ShortCondition(); //comprobar la condición de apertura de venta
virtual int LongCondition(); //comprobar la condición de apertura de una posición de Compra
Para poner los puntos sobre las íes, necesitamos un artículo sobre cómo escribir tu propio módulo de señales en el nuevo asistente, así que lo estamos esperando.