¡Pide! - página 85

 
cico707:
He probado este Ea en la moneda GBP/USD y creo que puede dar buenos resultados con un trailing stop.

¿Quién me ayuda a insertar un trailing stop?

GRACIAS

BACKTEST GBPJPY

Archivos adjuntos:
 

¿Cómo puedo expresar lo siguiente en MQL:-?

if(boolean_condition_is_true AND (this_is_true OR that_is_true))

Es decir si boolean_condition es verdadero Y( esto_es_verdadero O eso_es_verdadero) ENTONCES hago_algo.

¿Alguien sabe?

 

En MQL, para cambiar el signo de un identificador de positivo a negativo la sintaxis es: A = - A Sin embargo, la inversa no parece funcionar, es decir: A = + A. ¿Cómo puedo cambiar el signo de un valor negativo en un positivo?

 
Sadly:
En MQL, para cambiar el signo de un identificador de positivo a negativo la sintaxis es: A = - A Sin embargo, la inversa no parece funcionar es decir: A = + A. ¿Cómo puedo cambiar el signo de un valor negativo en un positivo?

A = -A; //Siempre funciona...

O :

A *= -1;

 
Sadly:
¿Cómo puedo expresar lo siguiente en MQL:-?

if(boolean_condition_is_true AND (this_is_true OR that_is_true))

Es decir, si boolean_condition es verdadero AND( this_is_true OR that_is_true) THEN do_something.

¿Alguien?

if(b1 && (b2 || b3))

{

hacer_algo

}

 

Gracias Michel. Utilizando lo que has sugerido A *= + A da efectivamente un signo positivo, es decir, cambia -A por +A.

 
Michel:
if(b1 && (b2 || b3))

{

hacer_algo

}

Esto es lo que estoy haciendo ...

if(Alarm_Reset && (stepSignalBuffer[shift] Upr_level ))

{

if(stepSignalBuffer[shift] < Lwr_level)

{

PlaySound("twank.wav");

}

else

{

PlaySound("tick.wav");

}

Alarm_Reset = false;

}

else

{

Alarm_Reset = true;

}

}

Es decir, si la alarma se ha restablecido (a true) y el signalbuffer < lwr_level o el signalbuffer> upr_level

Reproducir un sonido si el signalbuffer está por debajo del nivel inferior u otro sonido si está por encima del nivel superior. Poner la alarma en falso (no queremos que suene otra alarma si ya está hecha.

else

Reinicia la alarma (es decir, el signalbuffer está fuera del nivel_inferior y del nivel_superior)

Desgraciadamente eso no es lo que ocurre pero al menos sé que el código es correcto y que probablemente se deba a la lógica.

Gracias de nuevo Michel.

EDIT: Acabo de comentar stepSignalBuffer[shift] y su valor es siempre CERO. Me siento como un idiota.

 
Sadly:
Gracias Michel. Utilizando lo que has sugerido A *= + A da efectivamente un signo positivo, es decir, cambia -A por +A.

No, esto es incorrecto, he dicho A *= -1; no A *= +A;

Este flipflop el signo; pero si usted necesita tener un número positivo, utilice la función MathAbs(): A = MathAbs(A); Wathever es A , se convertirá en positif.

 

Código de prueba del fin de semana

Hola gurú,

¿Hay algún servidor que pueda alimentar el precio para darnos la oportunidad de probar nuestro código en sábado y domingo?

Me refiero a si es posible hacer un simulador de servidor para dar la oportunidad de probar en el fin de semana?

Esta idea viene debido a :

1. Mientras que en los días de trabajo, estamos seriamente para ver nuestro gráfico,

en ese momento, no se puede escribir el código en serio.

2. Tenemos más tiempo en el fin de semana, entonces podemos probar seriamente nuestro código.

¿Tal vez alguien puede darme información sobre esta idea?

Saludos cordiales,

BornToWin

 
Michel:
No, esto está mal, he dicho A *= -1; no A *= +A; Esto flipflop el signo; pero si usted necesita tener un número positivo, utilice la función MathAbs() : A = MathAbs(A); Wathever es A , se convertirá en positivo.

Yo estaba después de tratar t flipflip el signo que parecía funcionar. También he cansado la función MathsAbs() y efectivamente el número es positivo.

Gracias Michel, me has sido de gran ayuda.