Tengo este código del foro. Creo que es de Nicolas.
Me gustaría que el stop pasara a BE, cuando el precio alcance 22 puntos. En el código esto no ocurre hasta que no hay una vela que cierra por encima de esos 22 puntos. Hay alguna forma de cambiarlo para que pase el stop a BE, cuando el precio alcance un beneficio de 22 puntos sin esperar a que cierre la vela ?
Gracias!!
// Mover el stop a BE
// Cuando se han movido a nuestro favor
startBreakeven = 22
// Movemos el stop a "" puntos de beneficio
PointsToKeep = 3
IF NOT ONMARKET THEN
breakevenLevel=0
ENDIF
IF LONGONMARKET AND close-tradeprice(1) >= startBreakeven*pipsize THEN
//calculate the breakevenLevel
breakevenLevel = tradeprice(1)+PointsToKeep*pipsize
ENDIF
IF SHORTONMARKET AND tradeprice(1)-close >= startBreakeven*pipsize THEN
//calculate the breakevenLevel
breakevenLevel = tradeprice(1)-PointsToKeep*pipsize
ENDIF
//place the new stop orders on market at breakevenLevel
IF breakevenLevel>0 THEN
SELL AT breakevenLevel STOP
EXITSHORT AT breakevenLevel STOP
ENDIF
Reemplace todas las líneas anteriores con las siguientes:
If LongOnMarket then
Sell at TradePrice + ((startBreakeven + PointsToKeep) * pipsize) Limit
Endif
If ShortOnMarket then
Exitshort at TradePrice - ((startBreakeven + PointsToKeep) * pipsize) Limit
Endif
Gracias Roberto.
Pero lo que hace ahora es cerrar la posición en +25 ( 22+ 3), si llega.
Y lo que quiero es que cuando la posición vaya ganando 22 puntos (sin que haya terminado la vela que alcanza ese nivel) . Mi stop que está a -18 (por ejemplo), pase a +3.
Luego, debe usar el soporte MTF, Multi Time Frame, para usar otro marco de tiempo más pequeño que le permita verificar mejor el logro de 22 puntos.
uff
Soy todavía muy novato. Pero gracias! investigaré en eso.