Глобальные переменные и тестер

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

Естественно, я ей и воспользовался, когда проблему обнаружил. :)
Все равно, выглядит как workaround. IsTesting может вызываться внутри GlobalVariable* функций, запрещая им экспортировать переменные в терминал прозрачно для пользователя. Других-то экспертов в тестере все-равно нет. Тестер не должен влиять на работу экспертов в принципе.
 
Хотя, с другой стороны, тестируемый эксперт тоже может использовать настройки через глобальные переменные.
Все равно, лучше создавать для тестера локальную копию глобальных переменных. Пусть с ней работает.
 
В МТ3 была такая фишка - нужно было запомнить текущую настройку через глобальную переменную. Для этого сначала прогонялся бэк-тест(настраивался уровень в советнике на текущий момент) и после этого на чарт вешался эксперт. Может решение и сомнительное , но люди так делали.
Причина обращения: