Скачать MetaTrader 5

Баг в отображении кастом индикатора?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Forex Trader
114269
Forex Trader  
В целях обучения нарисовал кастом индикатор на двух скользячках:



При изменени размеров окна появляются непонятные линии:









Используется 2 массива:
ind_T3[i1]=iCustom(NULL,0,"T3",1000,0,i1);


и

ind_T4[i2]=iMAOnArray(ind_T3,Bars,MovPeriod,0,TypeMA,i2);


"T3" - финваровская скользячка.


Заодно прошу ответить на один вопрос. Какие значения может принимать параметр total в iMAOnArray, и откуда идет отсчет для этого параметра (со стороны 0 или последнего бара)?

MetaQuotes Software Corp.
Модератор
182667
MetaQuotes Software Corp.  
Желательно приложить полный код индикатора. Сразу найдется ошибочное место с расчетом данных.
Forex Trader
114269
Forex Trader  
открой дата виндов (Ctrl+D) и посмотри значения буферов на баре предшествующем нормальной отрисовке индикатора ну и значения, либо отрисовку ставь с первого правильно рассчитанного индикатора, либо правильно считай значение, скажу также что такое может быть и по причине "слабых" мест в алгоритме,
если у тебя на барах значение не должно отрисовываться, то используй SetIndexEmptyValue, а в буфере пиши нужное пустое значение
Forex Trader
114269
Forex Trader  
Тут явная ошибка в коде индикатора.
То ли не хватает истории для подсчёта (именно для первых баров), то ли просто некорректный алгоритм.
Плюс вероятность того, что некоторые переменные не обнуляются. Поэтому при изменении размера окна генерируется тик и индикатор пересчитывается с необнулёнными данными. Когда заново цепляешь, он же нормально рисует?
Forex Trader
114269
Forex Trader  
К сожалению, не догадался сохранить ошибочную версию индикатора. Продолжая эксперименты, я устранил данный эффект. Виной тому было, скорее всего:
SetIndexDrawBegin(0,value1);


где value1 "по причине "слабых" мест в алгоритме" приводило к этому багу.
Так или иначе сейчас все отрисовывается нормально.

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

Forex Trader
114269
Forex Trader  

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


Если не видел - будет интересно "MQL4, MQL2, EasyLanguage, Wealth-Lab 3.0 и VC++: сравнение скорости"
Forex Trader
114269
Forex Trader  
Если не видел - будет интересно

Спасибо за ветку. До этого видел только картинки и report разработчиков.
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий