![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Может кто проверить, работает ли ограничение отрисовки в индикаторе?
Уже отсюда готовый индик скачал, всё равно рисует на всю историю.
Upd разобрался. Его надо запихать в OnCalculate и задать адекватное значение (rates_total-n).
В будние, когда есть котировки, то же самое.
Иногда проскакивает и оно показывает то, что нужно, но при смене ТФ или поступлении новой котировки опять начинает выдавать ерунду.
Пытаюсь нарисовать шаблон мультивалютного индикатора.
Объявил буферы, инициализацировал (EMPTY_VALUE), откуда рисовать... вроде всё сделал. В OnInit. В OnCalculate пока ничего нет.
Запускаю - получаю мусор в окне индикатора на разных кусках графика.
Что не так?
upd и ещё. При изменении параметров в функции f_comment и перекомпиляции коммент не меняется, изменения вступают в силу только после того, как удалил и снова кинул индикатор на график. Это нормально?
ps перезалил файлик
Пытаюсь нарисовать шаблон мультивалютного индикатора.
Объявил буферы, инициализацировал (EMPTY_VALUE), откуда рисовать... вроде всё сделал. В OnInit. В OnCalculate пока ничего нет.
Запускаю - получаю мусор в окне индикатора на разных кусках графика.
Что не так?
У себя при запуске этого кода, мусора не наблюдаю. Попробуйте удалить с графика все копии индикатора и загрузить их на график снова.
Неделю с ним сижу, выкинул всё, только пустые массивы оставил, всё равно периодически рисует из пустых буферов... бред какой то.
Неделю с ним сижу, выкинул всё, только пустые массивы оставил, всё равно периодически рисует из пустых буферов... бред какой то.
Пощёлкал по таймфреймам. По началу мусор вылез. Потом пропал и больше не воспроизводится.
Возможно сложноуловимый микробаг. )) Но ничего страшного. Можно (даже нужно) просто более жёстко вести контроль (на всякий случай). При расчёте значений для индикаторных буферов проблем не возникнет. А там, где значения должны быть пустыми просто ещё раз указывайте пустое значение уже для конкретного элемента массива.
Неделю с ним сижу, выкинул всё, только пустые массивы оставил, всё равно периодически рисует из пустых буферов... бред какой то.
Один баг нашёл:
Но мусора не наблюдал ни до ни после правки. Просто пустое окно.Пощёлкал по таймфреймам. По началу мусор вылез. Потом пропал и больше не воспроизводится.
Возможно сложноуловимый микробаг. )) Но ничего страшного. Можно (даже нужно) просто более жёстко вести контроль (на всякий случай). При расчёте значений для индикаторных буферов проблем не возникнет. А там, где значения должны быть пустыми просто ещё раз указывайте пустое значение уже для конкретного элемента массива.
Хех... надо будет ещё попринтовать, где это, в INDICATOR_DATA или в INDICATOR_CALCULATIONS
Прикол в том, что после удаления индикатора и новой установки на график мусор рисуется в тех же местах, где и был. Тоже фича...
Контроль, это понятно. Визуально всё равно увижу, если врать начнёт. А вот так вызовешь какой нить индик, - и его значения пересчитывать?
Как то кривенько...
Один баг нашёл:
Но мусора не наблюдал ни до ни после правки. Просто пустое окно.Спасибо, пропустил, пока копипастил.
Мусор появляется, нестабильно и не на всех тф (или не в зоне видимости, надо чарт влево посмотреть), но он есть.
upd его тут еще видно, должно, я так понимаю, быть по 0,000000 0,000000... везде
Неделю с ним сижу, выкинул всё, только пустые массивы оставил, всё равно периодически рисует из пустых буферов... бред какой то.
Не уверен, но скорее всего из-за этого:
из справки:
Инициализация массива выражением ArrayInitialize(array, init_val) не означает инициализацию этим же значением и элементов резерва, выделенного для этого массива. При последующих увеличениях размера массива array функцией ArrayResize() в пределах текущего резерва, в конец массива добавляются элементы, значения которых не определены и, чаще всего, не равны init_val.