[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 466

 

¡Pregunta para programadores expertos!

¿Cómo se fija un StopLoss?

newstop - el nuevo precio detectado por la línea del indicador, a este precio quiero establecer un stop loss

Por ejemplo newstop = 1.5005, pero el precio Bid está en un nivel = 1.5000, y el stoploop del broker en 10 puntos, respectivamente, que no puedo establecer el stoploss en este nivel, ¿cómo prescribirlo correctamente para evitar errores del stoploop?


(newstop>MarketInfo(Symbol(),MODE_STOPLEVEL))


Gracias.

 

double op=NP(MathMax(Bid-SL*Point, Bid-StopLvl))


NP - normalización de precios.

 
sergeev >>:

double op=NP(MathMax(Bid-SL*Point, Bid-StopLvl))


NP - нормализация цены.

Gracias, pero ¿qué pasa con la multiplicación por Punto?

No mostré todo el código, probablemente por eso no entendí bien mi pregunta, aquí hay un trozo de código.

¿Funcionará la lógica de lo que se escribe a continuación?

if ((OrderStopLoss()==0)&&( newstop>MarketInfo(Symbol(),MODE_STOPLEVEL)*Point)) // если стоплосс не определен, то тралим в любом случае
     OrderModify( ticket,OrderOpenPrice(), newstop,OrderTakeProfit(),OrderExpiration());  
 

¿O tengo que hacer esto primero, por ejemplo, para bai?

   int mi = MarketInfo(Symbol(),MODE_STOPLEVEL);
   double m = mi*Point;
   double mi1 = NormalizeDouble ( Вid - m,Digits); 

if ((OrderStopLoss()==0)&&( newstop< mi1)) // если стоплосс не определен, то тралим в любом случае
         OrderModify( ticket,OrderOpenPrice(), newstop,OrderTakeProfit(),OrderExpiration());  
 
Gun писал(а) >>

¿O tengo que hacer esto primero, para comprar por ejemplo?

La clase de orden debe tenerse en cuenta al comprobar la condición. Puedes hacerlo así:

if (OrderStopLoss()==0 && OrderType()==0 && newstop<=Ask-MarketInfo(Symbol(),MODE_STOPLEVEL)*Point) //если buy

OrderModify( ticket,OrderOpenPrice(), newstop,OrderTakeProfit(),OrderExpiration());

else

if (OrderStopLoss()==0 && OrderType()==1 && newstop>=Bid+MarketInfo(Symbol(),MODE_STOPLEVEL)*Point) //если sell

OrderModify( ticket,OrderOpenPrice(), newstop,OrderTakeProfit(),OrderExpiration()); 
 
Pregunta para los programadores. La búsqueda no ha dado nada todavía. Cómo, en el robot de comercio para establecer (dónde encontrar un bloque de código / alguien hizo esta cuestión) saltando las apuestas, es decir, las operaciones de robot a partir de la segunda oferta después de una pérdida de decisiones, porque la transacción es virtual, y cuando se encuentra desencadenado stoploss en un robot gnanchinaet comercio ya el dinero, entonces funcionó un número determinado de las tasas, pero de nuevo comienza a operar en el virtual (saltando las tasas) y de nuevo a la espera de stoploss desencadenado, de nuevo a través de uno comienza a trabajar utilizando en el depósito de apuestas significa.
 
kraizislot писал(а) >>
Pregunta para los programadores. La búsqueda no ha dado nada todavía. Cómo, en un robot de comercio para establecer (dónde encontrar un bloque de código / alguien hizo esta cuestión) saltando las apuestas, es decir, las operaciones de robot a partir de la segunda oferta después de una pérdida de decisiones, porque la transacción es virtual, y cuando se encuentra desencadenado stoploss en un robot gnanchinaet comercio ya el dinero, a continuación, elaboró un número determinado de las tasas, de nuevo comienza a operar con el dinero no, pero virtualmente (saltando las tasas) y de nuevo a la espera desencadenado stoploss, de nuevo a través de uno comienza a trabajar utilizando en el depósito de apuestas significa.

Había un artículo como este.

 
Tengo artículos sobre cómo saltar apuestas, pero no hay ningún código para *hacer* que el robot salte apuestas, o no lo he encontrado (he abierto los archivos adjuntos). Hay un robot que da cien apuestas al año con una o dos perdedoras, si las espero y luego entro en el mercado, pero lo hago automáticamente, es otra martingala. Si los espera y entra en el mercado automáticamente, es otra martingala. Pensé que el tema estaba resuelto, pero no encuentro ningún código.
 
kraizislot писал(а) >>
Los artículos sobre la omisión de apuestas existen, pero el código en sí para *hacer* que el robot omita las apuestas está ausente, o no se encuentra (he abierto los archivos adjuntos). Hay un robot que hace una o dos apuestas perdedoras al año, si las espero y luego entra en el mercado, pero lo hace automáticamente, es otra martingala. Si los espera y entra en el mercado automáticamente, es otra martingala. Pensé que el tema estaba resuelto, pero no encuentro ningún código.

Hay que hacer un módulo de comercio virtual. El código para implementar este enfoque está ahí. Sólo tienes que adaptarlo a tus propias necesidades.

 
¿Dónde puedo encontrarlo, por favor?