Ошибки, баги, вопросы - страница 3690
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Уже сто лет в обед, как пользовался индикатором, взятом с базы форума (здоровья и долголетия его автору), который добросовестно рисовал сетку цен на графике до:
Terminal MetaTrader 5 x64 build 5485 started for MetaQuotes Ltd.
Terminal Windows 11 build 26200, 12 x AMD Ryzen 5 5500U with Radeon, AVX2, 9 / 15 Gb memory, 175 / 475 Gb disk, UAC, GMT+7
Но он же тупо удаляется с графика после компиляции с билдов 5487 и крайнего 5488. Выдает в журнал строку:
Custom Indicator loading of Сетка (EURUSD,M5) from C:\Users\User\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Indicators\Сетка.ex5 failed [539]
При компиляции же в редакторе всё ровно:
Сетка.mq5
code generated
0 errors, 0 warnings, 487 msec elapsed, cpu='AVX2 + FMA3'
Куда же стоит копать? Подскажите, пожалуйста.
P.S. Спасибо автору Prival
https://www.mql5.com/ru/code/111
...
Но он же тупо удаляется с графика после компиляции с билдов 5487 и крайнего 5488. Выдает в журнал строку:
Custom Indicator loading of Сетка (EURUSD,M5) from C:\Users\User\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Indicators\Сетка.ex5 failed [539]
...
Я тоже воспроизвёл этот баг с несколькими простыми индикаторами.
Код:
Custom Indicator loading of Сетка ( EURUSD ,M5) from C:\Users\User\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Indicators\Сетка.ex5 failed [539]
Я тоже возпроизвёл этот баг с несколькими простыми индикаторами.
Код:
Подтверждено и доведено до сведения MQ.
Спасибо.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Новая версия платформы MetaTrader 5 build 5370: улучшения в веб-версии
Ivan Butko, 2025.12.15 13:46
Сегодня было обновление.Ничего не изменилось, ошибка сталась - знаков на кнопках онлайн графика - нет, в тестере - есть.
Онлайн кнопки
В тестере:
После обновления значки появились онлайн
Старый баг, просто ни кто не пользовался и не обнаружил.
CCheckGroup из standardlibrary позволяет размещать и расчитывать до 64 чекбоксов в элементе. Но отметить из кода можно только столько, сколько их видно. В коде ниже видно только 5.
Но создал я не 5, как в примере, а 64 чекбокса. Они появятся при прокрутке. Но отметить их можно только вручную, но не командой m_check_group.Check(i,(long)1<<i).
После того, как отметится последний видимый чекбокс, то появится ошибка о выходе за пределы массива видимых элементов, ведь его длина =5.
array out of range in 'CheckGroup.mqh' (222,17)
Немного измененный пример эксперта из документации https://www.mql5.com/ru/docs/standardlibrary/controls/ccheckgroup
Изменения выделены зеленым.
После поиска решения проблемы изменил функцию bool CCheckGroup::Check(const int idx,const long value) в MQL5\Include\Controls\CheckGroup.mqh таким образом:
После этого программа отметила все 64 чекбокса
Но были ошибки в расчете Value() - после 32 чекбокса Value начинался снова с 0. Эти значения видно в Comment при клике по любому чекбоксу.
Причина в паре функций которые вместо long использовали int. И массив m_states поменял на long
После этого и расчеты стали правильными.
Правильно работающий MQL5\Include\Controls\CheckGroup.mqh прикладываю.Компаратором увидите, где правки.Просьба поменять, т.к. кажется свои версии при апдейтах переписываются, не хотелось бы потерять правильный код.
Коментарий для тех кто будет использовать: Можно генерировать и больше 64 чекбоксов, но с 65 элемента Value начнется с 0, т.к. не хватает разрядности long 8 байт (64 бита). Я попробовал 100. Отрисовались, но в Value были ошибки.
m_value |=value;
m_value |=value;Обьясните, что делает эта строка ?