Скачать MetaTrader 5

Как узнать координату правой вертикальной оси на чарте?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Переходите от теории к практике. Code Base поможет!
Сергей
49
Сергей 2013.09.04 07:42 

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

Кто нибудь может мне подсказать, как узнать координату этой правой оси по Х?
При этом надо учитывать, что Chart Shift может быть включен и расстояние между последним баром и правой осью может быть изменено пользователем.

JLY
592
JLY 2013.09.04 08:06  
После нулевого бара, бары не рисуются впринципе, можно нарисвоать объекты не по барам, а по секундам (с 1970).
Ihor Herasko
9056
Ihor Herasko 2013.09.04 09:28  

К сожалению, это непростой вопрос.

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

Непосредственно получить место расположения правой границы штатными средствами можно, но не в пикселях, а во времени открытия бара. Для этого используются функции WindowFirstVisibleBar и WindowsBarPerChart. От времени открытия самого крайнего правого бара окна и рисуйте объекты.

Рустам
3597
Рустам 2013.09.04 12:04  
легче рисовать в лейбами в писелях экрана, а не чарта. синхронизируя по цене.
Ihor Herasko
9056
Ihor Herasko 2013.09.04 12:53  
FAQ:
легче рисовать в лейбами в писелях экрана, а не чарта. синхронизируя по цене.


Думаю, что не проще. Перевод цены в пиксели в МТ4 штатными способами не решается.

Сергей
49
Сергей 2013.09.04 13:03  
JLY:
После нулевого бара, бары не рисуются впринципе, можно нарисвоать объекты не по барам, а по секундам (с 1970).


Я и хочу нарисовать 'по секундам' и собираюсь для этого использовать функцию

ObjectCreate("my_histo1", OBJ_RECTANGLE, 0, time1, price1, time2, price2);

Scriptong:

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

Ну да, но это другая проблема. Планирую для ее решения сделать все в зацикленном советнике.

Scriptong:

Непосредственно получить место расположения правой границы штатными средствами можно, но не в пикселях, а во времени открытия бара. Для этого используются функции WindowFirstVisibleBar и WindowsBarPerChart. От времени открытия самого крайнего правого бара окна и рисуйте объекты.


WindowFirstVisibleBar и WindowBarsPerChart конечно полезные функции, но используя их я смогу вычислить координату синей линии,

а мне интересно, есть ли способ узнать координату красной линии?

Сергей
49
Сергей 2013.09.04 13:16  
FAQ:
легче рисовать в лейбами в писелях экрана, а не чарта. синхронизируя по цене.

Лейбел - это же текст, а мне надо нарисовать прямоугольник или можно рисовать прямоугольники с помощью лейбелов?

Сам себе отвечу - нельзя. Т.к. лейбел использует только одну координату для отображения

OBJ_LABEL 23 Text label. Uses 1 coordinate in pixels.

Ihor Herasko
9056
Ihor Herasko 2013.09.04 13:20  
sergo700:


WindowFirstVisibleBar и WindowBarsPerChart конечно полезные функции, но используя их я смогу вычислить координату синей линии,

а мне интересно, есть ли способ узнать координату красной линии?

Координату в межбарном пространстве узнать не получится.

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

Сергей
49
Сергей 2013.09.04 13:31  
Scriptong:

Координату в межбарном пространстве узнать не получится.

Спасибо за ответы!

Тогда буду рисовать от синей линии.

Scriptong:

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

Лучше воздержусь от рисования из за экрана. Иначе мои прямоугольники будут не пропорциональными
Boris
3900
Boris 2013.09.04 13:59  

Ув. Scriptong!

Скажите, пожалуйста, какой процент составляет свободное от баров пространство от всего окна графика? Спасибо!

Ihor Herasko
9056
Ihor Herasko 2013.09.04 14:05  
borilunad:

Ув. Scriptong!

Скажите, пожалуйста, какой процент составляет свободное от баров пространство от всего окна графика? Спасибо!

К сожалению, не могу сказать. С высокой степенью вероятности можно лишь утверждать, что при разных масштабах графика и размерах окна это разные величины.
123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий