Problem with retrieving ticketId or open Price

 
Hi,

This code is problem because if not exists returns 0.

I think is problem because the code use for all OrdersTotal in the same time, but I need to get only ticketId for OP_BUY first, and OP_SELL first.

So, I need to get Open price from ordertotal OP_BUY and OP_SELL.
How to do this?

double getFirstOpenTicketPriceBuy()
{
double orderPrice=0;
datetime first=0;


//for(int i=OrdersTotal()-1;i>=0;i--){
  if(OrderSelect(gSellTicket,SELECT_BY_TICKET));
   if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber && OrderType()==OP_BUY){
    if(first==0 || OrderOpenTime()<first){
         orderPrice=OrderOpenPrice();
  }
  }
//  }
       return orderPrice;
}
 
  1. You are selecting by ticket number. Therefor you will get pending orders, deleted pending orders, and closed orders.
  2. Remove the semicolon after the select.