Download MetaTrader 5
To add comments, please log in or register
What are the latest MQL5.community news? The Wall section will tell you!
José
28
José 2007.09.04 20:27 

Hello,

I'm working with an ea, and I need to know if the last trade closed for stop loss.

How can I know it?

Thanks.

Wackena
647
Wackena 2007.09.04 21:56  

Try this:

Stringo provided this code to find last closed trade in another thread.

int last_trade=HistoryTotal();
if(last_trade>0)
  {
   if(OrderSelect(last_trade-1,SELECT_BY_POS,MODE_HISTORY)==true)
     {
      Print("Last trade ticket ",OrderTicket(),"   op ",OrderType(), "   time ",TimeToStr(OrderCloseTime()),"   price ",OrderClosePrice());
     }
  }

You could change to this:

int last_trade=HistoryTotal();
if(last_trade>0)
  {
   if(OrderSelect(last_trade-1,SELECT_BY_POS,MODE_HISTORY)==true)
     {
      if(OrderSymbol()==Symbol() && OrderClosePrice()==OrderStopLoss())
         {
          Print("Last closed order was OrderType = ",OrderType(),"  Time = ",TimeToStr(OrderCloseTime()),"  close at StopLoss  ",OrderClosePrice());
         }
     }
  }
you can replace OrderStopLoss() with OrderTakeProfit() for when order closes at takeprofit.
/
To add comments, please log in or register