[MQL4] Функция возвращает процент просадки по текущему символу

romanzif

Местный
Команда форума
Администратор
Монет
78,705
Код:
//+------------------------------------------------------------------+
double CurrentDD()
{
   double profit = 0; // объявляем локальные переменные
   double dd = 0;
 
   for (int i=OrdersTotal()-1; i >= 0; i--) // перебираем все ордера
   {
      if (OrderSelect(i,SELECT_BY_POS))
      {
         if (OrderMagicNumber() == Magic && OrderSymbol() == Symbol()) // отбираем ордера с нашим Magic и символом текущего графика
         {
            profit += OrderProfit()+OrderCommission()+OrderSwap(); // суммируем профит(убыток) + комиссия + своп
         }
      }
   }
 
   if (AccountBalance() <= 0) return(0); // проверяем есть ли деньги на балансе
 
   dd = profit / (AccountBalance()/100); // высчитываем процент просадки (профита)
 
   return(dd); // возвращаем значение
}
//+------------------------------------------------------------------+
 

romanzif

Местный
Команда форума
Администратор
Монет
78,705
Если закомментировать dd = profit / (AccountBalance()/100);
то будет возвращать просадку в деньгах, а не процентах.
 

Проверенные Брокеры

Для всех:
1. RoboForex
2. Weltrade
3. Exness
4. Forex4you

Для граждан РФ:
1. RoboForex
2. Альфа-Форекс
3. Альпари

Реклама

Weltrade 50
VPS сервера форекс
Secret Book

Заработок онлайн

Верх