Проблема с ChartTimePriceToXY - страница 2

 

хм. еще раз проверю , 

цена всегда есть на экране,

а время - время всегда равно 0, потому что у линии нет координаты времени, только цена.  

 

Действительно проблема была в координате время. из-за того что времени у линии нет, функция возвращала ошибку,

поэтому решил проблему так:

      bool xy=ChartTimePriceToXY(0,0,Time[WindowFirstVisibleBar()],ObjectGetDouble(0,"targetmouseline",OBJPROP_PRICE1),newx,newy);

 Спасибо за помощь

 
Супер, работает. :-) 
 
Vladislav Andruschenko:

хм. еще раз проверю , 

цена всегда есть на экране,

а время - время всегда равно 0, потому что у линии нет координаты времени, только цена.  

Передавайте 1 вместо нуля. Это давнишняя фича MQL )))
 
Vladislav Andruschenko:

поэтому решил проблему так:

 Спасибо за помощь

Только такой код будет время от времени давать ошибку выхода за пределы массива. Ведь WindowFirstVisibleBar() может вернуть что угодно. Поэтому его результат стоит проверить. Также лучше не использовать обращение к массивам-таймсериям по той же причине. Переходите на iTime(NULL, 0, shift). Это по крайней мере, защитит от фатальных ошибок.

 
;-) проверку сделал на предел массива. Спасибо
Причина обращения: