Новая версия платформы MetaTrader 5 build 6060: Интеграция с ИИ, Passkey и удобная работа с кодом в MetaEditor - страница 12

 
Что это за предположение через минут 5 работы:
"

Скрипт, видимо, долго обрабатывает данные. Попробую запустить с большим таймаутом и перенаправлю вывод в файл, чтобы избежать проблем с кодировкой.

"
Почему он не может знать, работает ещё скрипт на питоне или нет?
 

Общался я с ботом в ME нажал сдучайно CTRL+TAB вернулся на чат, а там нет большей части истории - печально.

И это не просто трёп был, а проект, который я делал.

 

Касательно комиссии


void OnStart()
  {
//--- объявляем динамический массив для получения правил начисления комиссии
   MqlCommission commissions[];
 
//--- получаем правила комиссии для текущего символа.
//--- если вместо NULL указать имя символа, функция вернет комиссии для этого символа.
   int total=SymbolInfoCommissions(NULL,commissions);
 
//--- проверяем результат выполнения функции
   if(total<0)
     {
      //--- в случае ошибки выводим код ошибки
      PrintFormat("SymbolInfoCommissions failed. Error %d",GetLastError());
      return;
     }
 
//--- выводим количество полученных правил комиссии
   PrintFormat("Commission rules: %d",total);
 
//--- перебираем все правила комиссии
   for(int i=0;i<total;i++)
     {
      //--- выводим основные параметры правила комиссии:
      //--- валюту, режим выбора диапазона и режим начисления
      PrintFormat("Rule %d: currency=%s, range mode=%d, charge mode=%d",
                  i,
                  commissions[i].currency,
                  commissions[i].mode_range,
                  commissions[i].mode_charge);
 
      //--- получаем количество уровней комиссии в текущем правиле
      int tiers_total=ArraySize(commissions[i].tiers);
 
      //--- перебираем уровни комиссии
      for(int j=0;j<tiers_total;j++)
        {
         //--- выводим параметры уровня комиссии:
         //--- способ расчета, значение, диапазон применения и валюту
         PrintFormat("  Tier %d: mode=%d, value=%G, range=%G - %G, currency=%s",
                     j,
                     commissions[i].tiers[j].mode,
                     commissions[i].tiers[j].value,
                     commissions[i].tiers[j].range_from,
                     commissions[i].tiers[j].range_to,
                     commissions[i].tiers[j].currency);
        }
     }
  }

--

Закрываем позицию и смотрим Историю

--

Вывод: как не было возможности получить комиссию на открытой позиции - так и не появилось.

Будем использовать старый и проверенный способ получать через историю.