MQL5 : Calculate total pnl of today closed trades
double Today_Closed_Profit()
{
MqlDateTime SDateTime;
TimeToStruct(TimeCurrent(),SDateTime);
SDateTime.hour=0;
SDateTime.min=0;
SDateTime.sec=0;
datetime from_date=StructToTime(SDateTime); // From date
SDateTime.hour=23;
SDateTime.min=59;
SDateTime.sec=59;
datetime to_date=StructToTime(SDateTime); // To date
to_date+=60*60*24;
HistorySelect(from_date,to_date);
int trades_of_day=0;
double wining_trade=0.0;
double losing_trade=0.0;
double total_profit=0.0;
uint total=HistoryDealsTotal();
ulong ticket=0;
//--- for all deals
for(uint i=0; i<total; i++)
{
//--- try to get deals ticket
if((ticket=HistoryDealGetTicket(i))>0)
{
long entry=HistoryDealGetInteger(ticket,DEAL_ENTRY);
if(entry==DEAL_ENTRY_IN)
continue;
//--- get deals properties
trades_of_day++;
double deal_commission=HistoryDealGetDouble(ticket,DEAL_COMMISSION);
double deal_swap=HistoryDealGetDouble(ticket,DEAL_SWAP);
double deal_profit=HistoryDealGetDouble(ticket,DEAL_PROFIT);
double profit=deal_commission+deal_swap+deal_profit;
if(profit>0.0)
wining_trade+=profit;
if(profit<0.0)
losing_trade+=profit;
total_profit+=profit;
}
}
return total_profit;
}
//---
Comments
Post a Comment