- Retrasar TP y SL
- MT5 - Trailing Stop dinámico que se ejecute al tocar una Smart Line que coloque en mi operativa.
- ¡¡¡SPOUTNIKH1V1.1 = 600 PIPS A WEEK (por moneda) SISTEMA DE TRADING ESTÁ BUSCANDO EA !!!
Hola gente, sabe alguien por aquí si es posible establecer unos niveles de stop y tp fijos, para que cuando cualquier operación (manual o por EA) sea abierta estos se coloquen automáticamente? Muchas gracias!
Sí, es muy fácil. Se puede hacer incluso desde un script aunque tendrías que ejecutarlo con cada nueva operación,
De todas formas mi consejo es que fjies niveles de stop basados en ATR para que el algoritmo sea adaptativo.
Sí, es muy fácil. Se puede hacer incluso desde un script aunque tendrías que ejecutarlo con cada nueva operación,
De todas formas mi consejo es que fjies niveles de stop basados en ATR para que el algoritmo sea adaptativo.
Pero quiero decir dejar unos niveles fijos por pips. Por ejemplo, que siempre se coloque el stop a 100 pips y el tp a 80, sea bajo las condiciones que sea.
Pues nada, tendrás que encargarlo.
Ya te digo, complicación no tiene ninguna y menos como tú lo pides.
![Aplicaciones comerciales para MetaTrader 5 por encargo Aplicaciones comerciales para MetaTrader 5 por encargo](https://c.mql5.com/36/63/aplicaciones-comerciales-para-metatrader.png)
- 2023.04.19
- www.mql5.com
Hola. Mira si esto te sirve, es un script:
#property version "1.00" #property script_show_inputs #include <Trade\PositionInfo.mqh> #include <Trade\Trade.mqh> #include <Trade\SymbolInfo.mqh> CPositionInfo posi; CTrade trade; CSymbolInfo symb; input double InpStoploss = 80; // StopLoss Pips input double InpTakeProfit = 100; // TakeProfit Pips //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { //--- double stoploss = InpStoploss * _Point; double takeprofit = InpTakeProfit * _Point; trade.SetDeviationInPoints(3 * _Point); for (int i = PositionsTotal() - 1; i >= 0; i--) { if (posi.SelectByIndex(i)) { if (posi.Symbol() == Symbol()) { if (posi.PositionType() == POSITION_TYPE_BUY) { trade.PositionModify(posi.Ticket(), posi.PriceOpen() - stoploss, posi.PriceOpen() + takeprofit); } if (posi.PositionType() == POSITION_TYPE_SELL) { trade.PositionModify(posi.Ticket(), posi.PriceOpen() + stoploss, posi.PriceOpen() - takeprofit); } } } } }
![Modify SL TP Modify SL TP](https://c.mql5.com/36/63/modify-sl-tp.jpg)
- www.mql5.com
Hola Enrique, yo en ese script veo un par de cosas.
Lo primero es que estás utilizando puntos en lugar de pips, por lo que no le servirá.
Y la otra cosa que veo es que en el código fijas las desviación máxima en decimales:
trade.SetDeviationInPoints(3 * _Point);
cuando en mi opinión debería ser un número entero:
trade.SetDeviationInPoints(30);
Que me corrijan si me equivoco.
Hola Enrique, yo en ese script veo un par de cosas.
Lo primero es que estás utilizando puntos en lugar de pips, por lo que no le servirá.
Y la otra cosa que veo es que en el código fijas las desviación máxima en decimales:
cuando en mi opinión debería ser un número entero:
Que me corrijan si me equivoco.
Fantástico! Entre los dos lo hemos logrado!
![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso