Какова стоимость одного пикселя?
Каково значение одного пикселя на оси Y текущего графика? Заранее благодарю.
Значение?
У пикселя нет "значения".
Что вы имеете в виду?
Каково значение одного пикселя на оси Y текущего графика? Заранее спасибо.
Значение? У пикселя нет "значения".
Что вы имеете в виду?
min_price = ChartGetDouble(0,CHART_PRICE_MIN);
long chart_height = ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS);
printf("1 pixel = %f",(max_price-min_price)/chart_height);
min_price = ChartGetDouble(0,CHART_PRICE_MIN);
long chart_height = ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS);
printf("1 pixel = %f",(max_price-min_price)/chart_height);
Если пиксель не имеет значения, как тогда можно нарисовать линию, используя оси x и y (конечно, эти переменные принимают значения в пикселях) или создать кнопки и т.д., которые используют координаты?
См. https://www. mql5.com/en/docs/chart_operations/chartxytotimeprice
- www.mql5.com
Если пиксель не имеет значения, как тогда можно нарисовать линию, используя оси x и y (конечно, эти переменные принимают значения в пикселях) или создать кнопки и т.д., которые используют координаты?
Вероятно, стоит упомянуть, что существует 2 различных способа рисования объектов.
- Используя время / цену... такие как OBJ_TREND и OBJ_TEXT.
- Эти объекты будут перемещаться по экрану при прокрутке графика влево/вправо/вверх/вниз.
- Используя пиксели X/Y... такие как OBJ_BUTTON и OBJ_LABEL
- Эти объекты не будут перемещаться по экрану, даже если график прокручивается.
Иногда их необходимо смешивать, например, вы хотите нарисовать объект относительно времени по оси X, а пиксели - по оси Y.
В таких случаях нужно использовать ChartXYToTimePrice() или ChartTimePriceToXY(), как предложил Марко.
long chart_id, // Chart ID
int sub_window, // The number of the subwindow
datetime time, // Time on the chart
double price, // Price on the chart
int& x, // The X coordinate for the time on the chart
int& y // The Y coordinates for the price on the chart
);
Может быть очень большой бар в крайней левой части экрана, когда этот бар выходит за пределы видимой области, то все рассчитанные значения будут меняться, так как график подстраивается под общий диапазон.
А как насчет того, когда у вас открыты окна терминала и/или тестера стратегий?
При использовании пикселей не будет ничего однородного.
Ух ты! Я думаю, это будет очень полезно. Большое спасибо. Я буду комбинировать его со следующей обратной функцией:
long chart_id, // Chart ID
int sub_window, // The number of the subwindow
datetime time, // Time on the chart
double price, // Price on the chart
int& x, // The X coordinate for the time on the chart
int& y // The Y coordinates for the price on the chart
);
Мне нужно это значение, чтобы я мог рассчитать значение 600 пикселей.
Это потому, что мне нужен уровень тейк-профита в 600 пикселей, а не 600 пунктов или 600 пипсов.
Мне нужен единый уровень тейк-профита на всех графиках, независимо от их значений Point или Pip.
Пришло время торговать в терминах пикселей. Заранее спасибо.