Обновление МТ5 - проблема!!

 

Господа разработчики и программисты, не оставьте без внимания.


Есть индикатор DEMA_HTF (во вложении), который показывает на текущем ТФ среднюю с большего ТФ.

Использую терминал от альпари, индикатор работал нормально в версии билда 1881. Но сегодня пришло обновление - билд 1931 и вместе с ним пришла беда!

Теперь при запуске терминала индикатор рисует фигню.


Вот пример, поставил индикатор, при перезапуске терминала нарисовал просто линию.

плохо


Если нажать Обновить на графике или перейти на другой ТФ и обратно, то рисует нормально, но при следующем перезапуске терминала может опять нарисовать не то.

Вот пример, как должен рисовать в этом месте, если нажать Обновить:

хорошо


Такая беда началась сразу после обновления МТ5!


Перекомпилировал индикатор вручную в новой версии Метаэдитора (1931) - не помогло.

Система: Windows 10 (build 17134) x64, IE 11, UAC, Intel Core i7-6700  @ 3.40GHz, Memory: 14213 / 16348 Mb, Disk: 129 / 222 Gb, GMT+3


Прошу, помогите, что делать?

Файлы:
DEMA_HTF_4.mq5  17 kb
 

Проверил, ситуация не воспроизводится.

Попробуй закрыть терминал, очистить каталоги

bases\*\history

bases\*\ticks

 
Serhios:

Господа разработчики и программисты, не оставьте без внимания.


Есть индикатор DEMA_HTF (во вложении), который показывает на текущем ТФ среднюю с большего ТФ.

Использую терминал от альпари, индикатор работал нормально в версии билда 1881. Но сегодня пришло обновление - билд 1931 и вместе с ним пришла беда!

Теперь при запуске терминала индикатор рисует фигню.


Вот пример, поставил индикатор, при перезапуске терминала нарисовал просто линию.


Если нажать Обновить на графике или перейти на другой ТФ и обратно, то рисует нормально, но при следующем перезапуске терминала может опять нарисовать не то.

Вот пример, как должен рисовать в этом месте, если нажать Обновить:


Такая беда началась сразу после обновления МТ5!


Перекомпилировал индикатор вручную в новой версии Метаэдитора (1931) - не помогло.

Система: Windows 10 (build 17134) x64, IE 11, UAC, Intel Core i7-6700  @ 3.40GHz, Memory: 14213 / 16348 Mb, Disk: 129 / 222 Gb, GMT+3


Прошу, помогите, что делать?

К автору (@Nikolay Kositsin) обращались?

 
oleg360:

Проверил, ситуация не воспроизводится.

Попробуй закрыть терминал, очистить каталоги

bases\*\history

bases\*\ticks

Спасибо, что нашли время. Сделал как вы написали - не помогло.

По поводу того, что у вас не воспроизводиться данная проблема. 

У меня 24 пары в профиле. На каждой паре стоит 4 таких индикатора с периодом 1 (так нужно). При запуске терминала на какой-то паре может быть этот глюк, а на какой-то нет. После следующего перезапуска терминала, на парах, на которых был глюк может стать уже все нормально, а там где не было этого глюка - может рисовать не так. После следующего перезапуска ситуация опять может измениться.

Поэтому если вы поставили индикатор на одну пару, то вероятность засечь эту проблему при таком характере её проявления может быть невелика. 

 
Artyom Trishkin:

К автору (@Nikolay Kositsin) обращались?

Не еще. 

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

Разве дело в индикаторе?

 
Serhios:

Не еще. 

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

Разве дело в индикаторе?

Если индикатор покупали в маркете, то согласно Правилам, автор обязан поддерживать свой продукт в работоспособном состоянии. Если после обновления продукт перестал работать, то это проблема автора, даже если дело не в индикаторе.

 
Sergey Savinkin:

Если индикатор покупали в маркете, то согласно Правилам, автор обязан поддерживать свой продукт в работоспособном состоянии. Если после обновления продукт перестал работать, то это проблема автора, даже если дело не в индикаторе.

Нет, этот индикатор не покупался. Он лежит в открытом доступе в CodeBase.

 
Serhios:

Не еще. 

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

Разве дело в индикаторе?

Не глядел. Но судя по тому, что он берёт данные с других таймфреймов, и они некорректно отображаются, то индикатор не ожидает подкачки требуемой таймсерии; а это делать нужно - если нет ещё нужных данных, то return 0;

 
Artyom Trishkin:

Не глядел. Но судя по тому, что он берёт данные с других таймфреймов, и они некорректно отображаются, то индикатор не ожидает подкачки требуемой таймсерии; а это делать нужно - если нет ещё нужных данных, то return 0;

Может это там уже реализовано...

Как тогда объяснить, что индикатор нормально работал до обновления терминала?

 

Необходимо внести изменение в исходный текст индикатора

Убрать статический массив LastCountBar[SIZE] из функции CountIndicator. Убрать дефайн SIZE

В начало исходника, где-нибудь до OnInit вставить удалённые строчки

//---
#define SIZE 1 // константа для количества вызовов функции CountLine
int LastCountBar[SIZE];

Я пока не могу сказать, что именно сломалось.

 
Slava:

Необходимо внести изменение в исходный текст индикатора

Убрать статический массив LastCountBar[SIZE] из функции CountIndicator. Убрать дефайн SIZE

В начало исходника, где-нибудь до OnInit вставить удалённые строчки

Я пока не могу сказать, что именно сломалось.

Нет, извините. Дело совсем не в статичности массива
Причина обращения: