Bonjour à toutes et tous,
Je souhaiterais pouvoir utiliser à nouveau cet EA qui apparemment ne fonctionne plus. (Le code se trouve en fin de message).
Je trouve plus facile de pouvoir définir un seuil précis qui permet de déplacer le SL au BE une fois ce seuil atteint.
Dans la majorité des autres EA's se rapportant au BE, la valeur à définir est le nombre de pips.
Personnellement, cela ne me convient pas.
Merci d'avance à toute personne qui pourrait répondre à ma demande.
Cordialement.
Philippe.
Je souhaiterais pouvoir utiliser à nouveau cet EA qui apparemment ne fonctionne plus. (Le code se trouve en fin de message).
Je trouve plus facile de pouvoir définir un seuil précis qui permet de déplacer le SL au BE une fois ce seuil atteint.
Dans la majorité des autres EA's se rapportant au BE, la valeur à définir est le nombre de pips.
Personnellement, cela ne me convient pas.
Merci d'avance à toute personne qui pourrait répondre à ma demande.
Cordialement.
Philippe.
Code
//+------------------------------------------------------------------+
//| TPSL-Insert.mq4 |
//| |
//| |
//+------------------------------------------------------------------+
#property copyright ""
#property link ""
//---- input parameters
//extern double TakeProfitPips=35;
//extern double StopLossPips=100;
extern double Move_SL_at = 0.9175;
int Faktor, Digt, cnt;
double TPp, SLp, Total, i;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init(){}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit(){}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
double OP = OrderOpenPrice();
double BCP = High[0];
double SCP = Low[0];
Total=OrdersTotal();
if(Total>0)
{
for(i=Total-1; i>=0; i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if(OrderSymbol() == Symbol()){
if(OrderStopLoss()==0 )
{
if(OrderType()==OP_BUY && BCP>Move_SL_at)
{SLp = OP;
OrderModify(OrderTicket(),OrderOpenPrice(),SLp,TPp,0);
SendMail("","Stop Loss has just been moved to : "+DoubleToStr(SLp,5)+"" );
}
if(OrderType()==OP_SELL && SCP<Move_SL_at)
{SLp = OP;
OrderModify(OrderTicket(),OrderOpenPrice(),SLp,TPp,0);
SendMail("","Stop Loss has just been moved to : "+DoubleToStr(SLp,5)+"" );
}
} else SLp = OrderStopLoss();
}}} }
Comment(
"\nStop Loss will move to BE at ", Move_SL_at);
/*
//---------------Modify Order--------------------------
if (OrderType()==OP_BUY || OrderType()==OP_SELL)
OrderModify(OrderTicket(),OrderOpenPrice(),SLp,TPp,0);
//-----------------------------------------------------
*/
Print ("Order Type= ",OrderType());
Print ("Open= ",OrderOpenPrice());
Print ("Ticket= ",OrderTicket());
Print ("Chart= ",OrderSymbol());
Print ("BCP= ",BCP);
Print ("SCP= ",SCP);
return(0);
}// Start()
//+------------------------------------------------------------------+
Modifié le 2018-06-23 08:34:46 par
AliX