Новая версия платформы MetaTrader 5 build 3660: Улучшения и исправления - страница 3

 
MetaQuotes #:

Уже есть в альфа версии редактора, скоро начнем показывать.

Зачем это всё?

Скоро уже лет десять, как трейдеры просят сделать плавное масштабирование графиков.

 

После обновления 3660 мои индикаторы перестали работать. При  компиляции выдает ошибку. В чем может быть дело?

картинка

 
MetaQuotes:

В пятницу 24 марта 2023 года будет выпущена обновленная версия MetaTrader 5. В ней мы внесли ряд исправлений и улучшений в работу платформы.


Тоже самое, что и у человечка выше, после обновления 3660 НЕКОТОРЫЕ мои советники и индикаторы перестали работать. При  компиляции выдает ошибку. В чем может быть дело?



UPD:

Методом исключения нашел, что вызывает ошибку - функция ArrayGetAsSeries()

Если за комментировать подобные строчки - компиляция проходит:

bool as_series_price=ArrayGetAsSeries(price);
 
У меня такие-же строки есть. Осталось выяснить, чем ArrayGetAsSeries() заменить.
 
Сейчас все исправим
 

Это предупреждение вполне можно убрать:

no indicator plot defined for indicator         0       0
 
Aliaksandr Hryshyn #:

Это предупреждение вполне можно убрать:

Может поможет. Глушится так:

#property indicator_plots   0


А у меня свой вопрос по индикаторам. Впервые встречаю такое предупреждение:

indicator buffers amount is less than needed            0       0

Сделал индикатор Bollinger Bands, где расчёт идёт на кольцевых буферах. Указал в коде, что есть 3 буфера (INDICATOR_DATA).

В итоге на графике такая интересная картина:



Отрисовался только 1 буфер. В окне данных показываются все 3, причём название буфера Middle задвоено, а Lower нет.


P.S. Сам допустил ошибку, исправил DRAW_COLOR_LINE на DRAW_LINE, предупреждение пропало.

В свойствах было объявлено так:

//--- buff 1
#property indicator_type1 DRAW_COLOR_LINE
#property indicator_color1 clrGreen
#property indicator_width1 2
//--- buff 2
#property indicator_type2 DRAW_COLOR_LINE
#property indicator_color2 clrBlue
#property indicator_width2 2
//--- buff 3
#property indicator_type3 DRAW_COLOR_LINE
#property indicator_color3 clrRed
#property indicator_width3 2


 
Konstantin Efremov #:

Методом исключения нашел, что вызывает ошибку - функция ArrayGetAsSeries()

Если за комментировать подобные строчки - компиляция проходит

Подтверждаю, у меня тоже компилятор отказывается собирать то, что точно работало ранее. Обходиться без ArrayGetAsSeries() не буду, подожду исправления платформы.


UPD

Уже исправлено.

 
Спасибо, оперативно))).
 
Denis Kirichenko #:

Может поможет. Глушится так:


А у меня свой вопрос по индикаторам. Впервые встречаю такое предупреждение:

Сделал индикатор Bollinger Bands, где расчёт идёт на кольцевых буферах. Указал в коде, что есть 3 буфера (INDICATOR_DATA).

В итоге на графике такая интересная картина:



Отрисовался только 1 буфер. В окне данных показываются все 3, причём название буфера Middle задвоено, а Lower нет.


P.S. Сам допустил ошибку, исправил DRAW_COLOR_LINE на DRAW_LINE, предупреждение пропало.

В свойствах было объявлено так:


Буферов 3, а отображений сколько?

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