Определить как закрылся ордер mql5

 

Делаю вот так

HistorySelect(0,TimeCurrent());                                                                        
 for (int j =0; j < HistoryDealsTotal(); j++)
 {                                                                            
  
 ulong ticket = HistoryOrderGetTicket(j);
 double profit = HistoryDealGetDouble(ticket,DEAL_PROFIT);
 
 if (profit >  0 ) 
  {
   Print ("Ордер ",ticket," закрылся по профиту = ",profit);
   Print ("Ордер ",ticket," закрылся по TP");
  }
  else  Print ("Ордер ",ticket," закрылся по SL");
 
  
 } 

 Но, профит ВСЕГДА равен 0.0 .  Даже если сработал лось или тейк. Что я не так делаю? 

 
bakanaev: Делаю вот так

 Но, профит ВСЕГДА равен 0.0 .  Даже если сработал лось или тейк. Что я не так делаю? 

Вы организуете перебор по номерам сделок, а тикет получаете для ордера. 
 
А как получить тикет сделки? Вообщем как получит профит сделки? Поправьте пожалуйста мой код 
Документация по MQL5: Торговые функции / HistoryDealGetTicket
Документация по MQL5: Торговые функции / HistoryDealGetTicket
  • www.mql5.com
Торговые функции / HistoryDealGetTicket - Документация по MQL5
 
Ок, всем спасибо!
Причина обращения: