Проблемы при вызове iCustom

 

Заметил проблему при вызове пользовательского индикатора

Собственно в чем проблема. С выходом обновлений в самом языке, произошло изменение работы индикаторов которые вызываются из экспертов. Это касается тестера стратегий именно. Раньше я вызывал из эксперта индикатор, при вызове я передавал два параметра init переменную и string . Когда запускаешь тестирование, эксперт подгружает индикатор. Это видно в журнале, далее идет само тестирование, параметры переданы верно, индикатор их видит и с ними работает, но когда нажимаешь стоп тест, то на график должны выводиться индикаторы которые принимали участие в тесте.

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

Если этот же индикатор компилировать билдом ниже 600 то все работает норм . Так что трабла не в коде.

Вот сделал скрин . Вызывается индикатор test2, в него передаются параметры 1 и name5, он их принимает и выводит через Alert, это видно. Далее нажимаем стоп, снова вызов индикатора но уже строковой переменной нет. Причем ее нет вообще, даже значение по умолчанию не подставилось.

 
Получается что увидеть результат работы индикатора после тестирования не возможно !
 
Тоже видел эти траблы со строковыми параметрами. Наверно баг и надо обращаться в сервисдеск.
 
Где найти этот сервисдеск ?
 
artmark:
Где найти этот сервисдеск ?
На /, после регистрации в своем профиле ссылка будет.
 

Есть мнение, что трабла - именно в коде индикатора.

Скорее всего - эта "исчезающая" переменная задается в блоке {} (но не в начале функции, а где-то дальше).

После билда 600 эта переменная существует (и видна) только внутри этого блока (раньше была видна до конца функции).

Надо вынести её объявление повыше, сразу после заголовка функции.

 
EverAlex:

Есть мнение, что трабла - именно в коде индикатора.

Скорее всего - эта "исчезающая" переменная задается в блоке {} (но не в начале функции, а где-то дальше).

После билда 600 эта переменная существует (и видна) только внутри этого блока (раньше была видна до конца функции).

Надо вынести её объявление повыше, сразу после заголовка функции.

Это был разговор про внешнюю переменную индикатора. Про ту, которая в окне свйств индикатора. Из советнка взывается индикатора, после тестирования на графике появляется индикатор, а параметр пуст.
 
Integer:
Это был разговор про внешнюю переменную индикатора. Про ту, которая в окне свойств индикатора. Из советника вызывается индикатор, после тестирования на графике появляется индикатор, а параметр пуст.

А как в индикатор значение переменной передается после тестирования, в deinit()?

Может такое быть, что тестер уже освободил память от String и уже пустая строка приходит в индюк (если в deinit() передается) ?

Причина обращения: