Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 667

 
nogard37:

No sé si esto ayudará.

Pero, intente calcular "LOW-delta;" en una línea separada, obteniendo el resultado en una variable separada y luego pasándolo a"OrderSend"

Así:

extern double delta = 350;
int start()
{
   double stop;
   double LOW = iLow(NULL,0,1);  
if(Close[1]<Open[1])
   { 
    stop=LOW-delta;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,NormalizeDouble(stop*Point,Digits),0,NULL,Magic,0,Green);
   }
 
Forexman77:

No sé si esto ayudará.

Pero, intente calcular "LOW-delta;" en una línea separada con el resultado en una variable separada y luego páselo a "OrderSend"

Así:


Es una gran idea...

extern double delta = 350;
int start()
{
   double stop;
   double LOW = iLow(NULL,0,1);  

El LOW en este caso es (para el EURUSD, aproximadamente) 1,3525

if(Close[1]<Open[1])
   { 
    stop=LOW-delta;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,NormalizeDouble(stop*Point,Digits),0,NULL,Magic,0,Green);
   }

y luego restas 350 a 1,3525... ¿cuánto crees que vas a conseguir y es posible detenerlo? Incluso si se normaliza lo que se obtiene.

Aunque no lo he comprobado. ¿Tal vez no cometa un error, sino que ponga un tope por debajo de cero?

 
AlexeyVik:

Tienes una gran idea...

El LOW en este caso es (para el EURUSD aproximadamente) 1.3525

y luego restas 350 a 1,3525... ¿cuánto crees que vas a conseguir y es una parada? Incluso si normalizas lo que tienes.

Aunque no lo he comprobado. ¿Tal vez no cometa un error, sino que se detenga por debajo de cero?

Así es como debería ser:

if(Close[1]<Open[1])
   { 
    stop=LOW-delta*Point;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,NormalizeDouble(stop*Point,Digits),0,NULL,Magic,0,Green);
   }

O mejor dicho, así es en mi Expert Advisor. Lo copié mal).

 
Forexman77:

Así es como debe ser:

O mejor dicho, así es en mi EA. Lo copié mal)


Y de nuevo con un error...
 
AlexeyVik:

Y de nuevo con un error...
¿Cuál fue el error? El consejero cerró correctamente.
 
Forexman77:
¿Qué pasa? El consejero cerró como debía.


if(Close[1]<Open[1])
   { 
    stop=LOW-delta*Point;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,NormalizeDouble(stop*Point,Digits),0,NULL,Magic,0,Green);
   }
 
AlexeyVik:

if(Close[1]<Open[1])
   { 
    stop=LOW-delta*Point;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,stop,0,NULL,Magic,0,Green);
   }
 
Forexman77:
if(Close[1]<Open[1])
   { 
    stop=LOW-delta*Point;
    send=OrderSend(Symbol(), OP_BUY, Lot,Ask,10,stop,0,NULL,Magic,0,Green);
   }


y hola de nuevo )))) la normalización se ha perdido en alguna parte esta vez. ¿qué prisa hay?
 
Hola, ¿podríais decirme cómo obtener y actualizar el gráfico _tst offline? Sólo tengo GBP y EUR y están desactualizados,también necesito AUDUSD, USDCAD, USDCHF, NZDUSD. Necesito los gráficos para el probador de estrategias manuales Simple Forex Tester. Gracias de antemano.
 
Quizás alguien haya hecho esto: hay varias órdenes abiertas (digamos 4) de las cuales digamos 2 con beneficio positivo y 2 con beneficio negativo. Debemos dibujar una matriz de combinaciones de sumas de beneficios (por ejemplo, 1 positivo y 1 negativo, 1 positivo y 2 negativos, 2 positivos y 1 negativo, etc.). A continuación, identifique las combinaciones que suman un determinado beneficio (positivo, por supuesto) y cierre esas órdenes.