Как находясь в функции OnTester() понять запущен заветник на оптимизацию или на одиночное тестирование ?

 

Тестирую советник в тестере. В функции OnTester() при одиночном тестировании нужно произвести запись в файл. Как находясь в функции OnTester() понять запущен заветник на оптимизацию или на одиночное тестирование ?

Пробовал через глобальные переменные. Оказались они не такие уж и глобальные. Единственный вариант который я вижу это считывать каждый раз этот бит из файла. Не опасно ли это для жесткого диска если таких обращений пара лямов в год ?

Может есть какие то другие способы понять запущен советник на оптимизацию или на одиночное тестирование?

 

bool  IsOptimization();

?

 

https://www.mql5.com/ru/docs/constants/environment_state/mql5_programm_info 

MQL_TESTER

Признак работы запущенной программы в тестере

bool

MQL_OPTIMIZATION

Признак работы запущенной программы в процессе оптимизации

bool

Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о запущенной MQL5-программе
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о запущенной MQL5-программе
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация о запущенной MQL5-программе - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Спасибо. Пошел разбираться.