With this code block, you can get the last closed trade data without using loops.Â
- Create a variable to set the current day start time. (This is not necessary to do.)
- Create some other variables to print a chart output and use if in other code blocks as well. (This is not necessary to do.)
- Using this code inside of the OnTick(); function leads to show result for every tick. You can set it also for once a bar.Â
// variables string DayStart = "00:00"; // Day Start Time double LastClosed_Profit; // Last Closed trade profit string TradeSymbol, TradeType; // Expert Initializing -------------------- int OnInit()   {   return(INIT_SUCCEEDED);   } // Expert DeInitializing ------------------- void OnDeinit(const int reason)   {   } // Expert OnTick -------------------------- void OnTick()   { // check for last closed trade.   CheckLastClosed();   } //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //|                                                                  | //+------------------------------------------------------------------+ void CheckLastClosed()   {   datetime HistoryTime = StringToTime(DayStart); // history from "Day begining to current time   if(HistorySelect(HistoryTime,TimeCurrent()))     {       int Total = HistoryDealsTotal();       // Get the last deal ticket number and select it to furthur work.       ulong Ticket = HistoryDealGetTicket(Total -1);       // Get what you need to get.       LastClosed_Profit = NormalizeDouble(HistoryDealGetDouble(Ticket,DEAL_PROFIT),2);       TradeSymbol      = HistoryOrderGetString(Ticket,ORDER_SYMBOL);       // Identify a sell trade.       if(HistoryDealGetInteger(Ticket,DEAL_TYPE) == DEAL_TYPE_BUY)         {         TradeType = "Sell Trade";         }       // Identify a buy trade       if(HistoryDealGetInteger(Ticket,DEAL_TYPE) == DEAL_TYPE_SELL)         {         TradeType = "Buy Trade";         }       // chart out put.       Comment("\n","Deals Total - :  ", Total,               "\n","Last Deal Ticket - :  ", Ticket,               "\n", "Last Closed Profit -:  ", LastClosed_Profit,               "\n", "Last Trade was -:  ", TradeType);     }   } //+------------------------------------------------------------------+ //+------------------------------------------------------------------+
you can get the whole trading history (from the very beginning of the account) by using the HistorySelect(); function this way.
// Get entire history HistorySelect(0,TimeCurrent());