Download MetaTrader 5
To add comments, please log in or register
Searching on MQL5.community is performed in all sections. Try it!
Eduard de Waal
30
Eduard de Waal 2015.05.06 13:04  
Thank you
Keith Watford
Moderator
9418
Keith Watford 2015.05.06 22:10  

Is this in a function?

for(int i=OrdersTotal(); i<0; --i)
{
   OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);

   if(OrderType()==OP_BUY&&OrderSymbol()==Symbol()&&OrderProfit()>0)   
      {
      return(1);
      }
   if(OrderType()==OP_BUY&&OrderSymbol()==Symbol()&&OrderProfit()<0)
      {
      return(0);
      }  
   if(OrderType()==OP_SELL&&OrderSymbol()==Symbol()&&OrderProfit()>0)
      {
      return(0);
      }  
   if(OrderType()==OP_SELL&&OrderSymbol()==Symbol()&&OrderProfit()<0)
      {
      return(1);
      }

 If not, why are you using return in a loop?

Why are you using the value of OrdersTotal and then checking History? 

OrdersTotal can only be a positive number or zero, so your loop will not run with i<0.  

Eduard de Waal
30
Eduard de Waal 2015.05.07 11:30  
GumRai:

Is this in a function?

 If not, why are you using return in a loop?

Why are you using the value of OrdersTotal and then checking History? 

OrdersTotal can only be a positive number or zero, so your loop will not run with i<0.  

Chances are its way wrong. Only stated with MQL4 this week. I tried some of the other "last profit" codes in the forum. Cant seem to get it right though.

 

string last;
for(int i=OrdersHistoryTotal()-1;i>=0;i--)
 {
   OrderSelect(OrdersHistoryTotal()-1, SELECT_BY_POS,MODE_HISTORY);
   
   if(OrderSymbol()==Symbol() && OrderMagicNumber()==magicnumber)
    {
       //for buy order
       if(OrderProfit() > 0) Alert("profit");
       else if(OrderProfit() < 0) Alert("loss");
    }
 }

 

This is another piece of code I am trying.

 Ill keep at it til I get it right. 

Eduard de Waal
30
Eduard de Waal 2015.05.07 11:31  
GumRai:

Is this in a function?

 If not, why are you using return in a loop?

Why are you using the value of OrdersTotal and then checking History? 

OrdersTotal can only be a positive number or zero, so your loop will not run with i<0.  

Yes it is in a function
/ /12
To add comments, please log in or register