Ошибка Показа торговых уровней при CHART_SHOW_TRADE_LEVELS: Решено

 

Уважаемая Администрация,

сначала пишу на форум, может я что проглядел, я потом уже в СЕРВИСДЕСК 

 Билд 1502  -  Win 7,64x

 

обнаружил то ли баг, то ли ошибку, но получаю следующее:

 

 При вызове  CHART_SHOW_TRADE_LEVELS из советника, терминал более не рисует эти уровни, даже после перезапуска. 

 

 

 

код простой:


ResetLastError();
               if(!ChartSetInteger(0,CHART_SHOW_TRADE_LEVELS,0,true))
                  //--- выведем сообщение об ошибке в журнал "Эксперты"
                  Print(__FUNCTION__+", Error Code = ",GetLastError());

 

 

Ошибок в журнал не получаю, значит ее нет, но и линий нет. 

 

 

Для решения нужно включить опцию в главных настройках терминала:

 

 

Решение пока нашел такое, не знаю, правильно это или нет:

 

 

т.е. из советника функция

                  if(!ChartSetInteger(0,CHART_DRAG_TRADE_LEVELS,0,true))
            if(!ChartSetInteger(0,CHART_SHOW_TRADE_LEVELS,0,true))

 

не работает

 

 

Решение нашел.

оказывается надо поменять местами, сначала показать уровни, потом их двигать:

            if(!ChartSetInteger(0,CHART_SHOW_TRADE_LEVELS,1))
               if(!ChartSetInteger(0,CHART_DRAG_TRADE_LEVELS,1))


 

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