5pip_TSL_mod

Author: Copyright � 2007, MetaQuotes Software Corp.
Profit factor:
0.00
Orders Execution
Checks for the total of open ordersIt automatically opens orders when conditions are reachedIt can change open orders parameters, due to possible stepping strategy
Miscellaneous
It opens Message Boxes to the user
2 Views
0 Downloads
0 Favorites
5pip_TSL_mod
//+------------------------------------------------------------------+
//|                                                       fareed.mq4 |
//|                      Copyright © 2007, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"//---- input parameters
#include <stdlib.mqh>
#include <WinUser32.mqh>
extern double    TakeProfit=20;
extern double    Lots=1;
extern double    TrailingStop=5;



int start()
{
int cnt, ticket, total;
total = OrdersTotal();
//----
 if(total < 1)
{
 
 if(MessageBox("TO SELL 1.00 LOT OF "+Symbol()+" PRESS YES, TO BUY PRESS NO",
 "Script",MB_YESNO|MB_ICONQUESTION)!=IDYES)              
 {
 ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point,"My EA",0,Green);
  }             
else
{
    ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,Bid-TakeProfit*Point,"My EA",0,Red);
 }   
return(0);
}

//================================================================        

  
      
   
//===============================
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && OrderSymbol()==Symbol())
{
if(OrderType()==OP_BUY) 
{
if(TrailingStop>0)
{
if(Bid-OrderOpenPrice()>Point*TrailingStop)
{
if(OrderStopLoss()<Bid-Point*TrailingStop)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);
}
return(0);
}
}
}
}
else 
{
if(TrailingStop>0)
{
if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
{
if((OrderStopLoss()>(Ask+Point*TrailingStop)) ||(OrderStopLoss()==0))
{
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,
OrderTakeProfit(),0,Red);
}
return(0);
}
}
}
}

return(0);
}


Comments