Comprobación del stop mínimo en los EAs publicados en el mercado. - página 15

 

Bafle,

No puedo entender la razón.

Min stop en el servidor 18 pips

mensaje en el cuaderno de bitácora:

2016.04.06 08:32:02     Core 1  2016.01.05 21:36:00   Result = 10016 symbol EURUSD volume 0.01 action 1 tp 1.07441 sl 1.07389 type 0 price 1.07415   Invalid stops in the request
2016.04.06 08:32:02     Core 1  2016.01.05 21:36:00   failed instant buy 0.01 EURUSD at 1.07415 sl: 1.07389 tp: 1.07441 [Invalid stops]

precio de apertura = 1,07415

Stop Loss = 1.07389 = 26 pips

Take Profit = 1.07441 = 26 pips

Y sigue escribiendo mal las paradas.

 
Vladislav Andruschenko:

Bafle,

No puedo entender la razón.

Min stop en el servidor 18 pips

mensaje en el cuaderno de bitácora:

precio de apertura = 1,07415

Stop Loss = 1.07389 = 26 pips

Take Profit = 1.07441 = 26 pips

Y sigue escribiendo paradas erróneas.

¿Su'deslizamiento' no es mayor que el 'Min server stop 18 pips'?
 

Slipage= 2 spreads

eso se traduce en 20 pips, más sí.

 
Vladislav Andruschenko:

Slipage= 2 spreads

eso se traduce en 20 pips, más sí.

Así que calcule - el deslizamiento es más que el SL, TP nivel establecido.

Para evitar esto, primero abro SL; TP=0 y luego modifico SL; TP= Ask-26*_Point

Si no es así, el nivel de parada mínima debe calcularse a partir del precio +- el deslizamiento.

 

Gracias. El código siempre ha funcionado, pero después de la penúltima compilación (desde diciembre) si se pone el nivel mínimo del servidor en paradas, no se abre y ya está.

 
Vladislav Andruschenko:

Min stop en el servidor 18 pips

Precio de apertura de la operación = 1,07415

Stop Loss = 1.07389 = 26 pips

TakeProfit = 1.07441 = 26 pips

Pero sigue escribiendo paradas erróneas.

El stop para la compra debe contarse a partir del precio Bid (al que se activará).

Y sólo tienes 16 pips desde el SL hasta el Bid.

 

Entonces, ¿qué le impide hacer retroceder el TP/SL cuando se produce un error? Captura un error - mueve la extensión, lo captura de nuevo - lo mueve de nuevo...

 
Taras Slobodyanik:

Entonces, ¿qué le impide hacer retroceder el TP/SL cuando se produce un error? Captura un error - mueve la extensión, lo captura de nuevo - lo mueve de nuevo...

No, hay que hacerlo bien a la primera. El código debería funcionar sin errores )
 
Igor Volodin:
No, hay que acertar la primera vez. El código debería funcionar sin errores).

Exactamente

Andrey Khatimlianskii:

El stop de compra debe basarse en el precio de compra (al que se activará).

Y sólo tienes 16 pips desde el SL hasta el Bid.

El spread se cuenta ahí, el spread era de 8 pips. + min stop 18=26 pips.

aquí a los 27 años todo está bien.

Y además, si una persona necesita poner un stoploss de 100 pips, significa que perderá 100 pips, por lo que para una BAY del precio ASC, hay que contar 100 pips.

Y para vender desde Bid.

//Вычисляем стоплосс
   if(StopLoss!=0)sl=MarketInfo(Symbol(),MODE_ASK)-StopLoss*Point; else sl=0;
// ВЫчисляем тейкпрофит
   if(TakeProfit!=0)tp=MarketInfo(Symbol(),MODE_ASK)+TakeProfit*Point; else tp=0;
   OPs(Symbol(),OP_BUY,GetSizeLot(),sl,tp,Magic,"");

//Вычисляем стоплосс
   if(StopLoss!=0)sl=MarketInfo(Symbol(),MODE_BID)+StopLoss*Point; else sl=0;
// ВЫчисляем тейкпрофит
   if(TakeProfit!=0)tp=MarketInfo(Symbol(),MODE_BID)-TakeProfit*Point; else tp=0;
   OPs(Symbol(),OP_SELL,GetSizeLot(),sl,tp,Magic,"");
 
Igor Volodin:
No, tienes que acertar desde la primera vez. El código debería funcionar sin errores )

Entonces, ¿cómo no adivinar? si el corredor da un nivel de parada poco razonable? %)

...está claro que después de todas las comprobaciones, hay que adivinar para saber la sangría mínima.