получить тип режима моделирования из советника

 

Добрый день!

Подскажите пожалуйста можно ли получить указанный сабж в коде советника?


Необходимо при различных режимах моделирования отключать те или иные фильтры, например при тестировании по закрытиям, нет смысла обрабатывать функции связанные с тиками.

 
Давным давно (когда еще был сервис-деск) просил такую проверку через API. Ответили, что она не нужна. Предложили самостоятельно писать алгоритмы определения режима по времени и количеству тиков.
 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Особенности языка mql5, тонкости и приёмы работы

fxsaber, 2017.11.23 00:21

// Возвращает true только в случае, если выбран (в тестере) режим по реальным тикам
// Перед использованием должен быть хотя бы один OnTick вызван тестером
bool IsRealTicks( void )
{
  MqlTick Tick;
  
  return(SymbolInfoTick(_Symbol, Tick) && (Tick.volume || !(Tick.flags & TICK_FLAG_LAST)));
}


Пример использования

// Советник будет тестироваться только в режиме по реальным тикам
void OnTick()
{
  static bool IsRemove = true;
  
  if (IsRemove)
  {
    IsRemove = MQLInfoInteger(MQL_TESTER) && !IsRealTicks();
    
    if (IsRemove)
    {
      Print("Real ticks mode is needed!");
      
      ExpertRemove();
      
      return;
    }
  }
  
  //........
}
Как это сделать в OnInit (без OnTick) - не знаю.

Еще через MTTester.mqh можно в советнике получить все настройки Тестера, если он запущен на локальном Агенте.