- ObjectCreate
- ObjectName
- ObjectDelete
- ObjectsDeleteAll
- ObjectFind
- ObjectGetTimeByValue
- ObjectGetValueByTime
- ObjectMove
- ObjectsTotal
- ObjectSetDouble
- ObjectSetInteger
- ObjectSetString
- ObjectGetDouble
- ObjectGetInteger
- ObjectGetString
- TextSetFont
- TextOut
- TextGetSize
ObjectCreate
Создает объект с указанным именем, типом и начальными координатами в указанном подокне графика. При создании можно указать до 30 координат.
bool ObjectCreate(
|
Параметры
chart_id
[in] Идентификатор графика. 0 означает текущий график.
name
[in] Имя объекта. Имя должно быть уникальным в пределах одного графика, включая его подокна.
type
[in] Тип объекта. Значение может быть одним из значений перечисления ENUM_OBJECT.
sub_window
[in] Номер подокна графика. 0 означает главное окно графика. Указанное подокно должно существовать, в противном случае функция возвращает false.
time1
[in] ВременнАя координата первой привязки.
price1
[in] Ценовая координата первой точки привязки.
timeN=0
[in] ВременнАя координата N-ой точки привязки.
priceN=0
[in] Ценовая координата N-ой точки привязки.
time30=0
[in] ВременнАя координата тридцатой точки привязки.
price30=0
[in] Ценовая координата тридцатой точки привязки.
Возвращаемое значение
Возвращает true при успешной постановке команды в очередь указанного графика, иначе false. Если объект был уже создан ранее, то производится попытка изменить его координаты.
Примечание
При вызове ObjectCreate() всегда используется асинхронный вызов, поэтому функция возвращает только результат постановки команды в очередь графика. В этом случае true означает только то, что команда успешно поставлена в очередь, сам результат её выполнения неизвестен.
Для проверки результата выполнения можно использовать функцию ObjectFind() или любые функции, запрашивающие свойства объекта, например вида ObjectGetXXX. Но при этом следует иметь в виду, что такие функции ставятся в конец очереди команд графика и дожидаются результата выполнения (так как являются синхронными вызовами), то есть могут быть затратными по времени. Нужно иметь это обстоятельство в виду, если ведется работа с большим количеством объектов на графике.
Имя графического объекта не должно превышать 63 символа.
Нумерация подокон графика (если на графике есть подокна с индикаторами) начинается с 1. Главное окно графика есть всегда и имеет индекс 0.
Большое количество точек привязки (до 30-ти) предусмотрено для будущего использования. В то же время ограничение только 30-тью возможными точками привязки для графических объектов обусловлено тем, что при вызове функции количество параметров не должно превышать 64.
При переименовании графического объекта одновременно формируются два события, которые можно обработать в эксперте или индикаторе функцией OnChartEvent():
- событие удаления объекта со старым именем;
- событие создания графического объекта с новым именем.
Для создания каждого из типов объектов требуется задать определенное количество точек привязки:
Идентификатор |
Описание |
Точки привязки |
---|---|---|
Вертикальная линия |
Одна точка привязки. Фактически используется только координата по оси времени. |
|
Горизонтальная линия |
Одна точка привязки. Фактически используется только координата по оси цены. |
|
Трендовая линия |
Две точки привязки. |
|
Трендовая линия по углу |
Две точки привязки. |
|
Циклические линии |
Две точки привязки. |
|
Объект "Линия со стрелкой" |
Две точки привязки. |
|
Равноудаленный канал |
Три точки привязки. |
|
Канал стандартного отклонения |
Две точки привязки. |
|
Канал на линейной регрессии |
Две точки привязки. |
|
Вилы Эндрюса |
Три точки привязки. |
|
Линия Ганна |
Две точки привязки. |
|
Веер Ганна |
Две точки привязки. |
|
Сетка Ганна |
Две точки привязки. |
|
Уровни Фибоначчи |
Две точки привязки. |
|
Временные зоны Фибоначчи |
Две точки привязки. |
|
Веер Фибоначчи |
Две точки привязки. |
|
Дуги Фибоначчи |
Две точки привязки. |
|
Канал Фибоначчи |
Три точки привязки. |
|
Расширение Фибоначчи |
Три точки привязки. |
|
5-волновка Эллиота |
Пять точек привязки. |
|
3-волновка Эллиота |
Три точки привязки. |
|
Прямоугольник |
Две точки привязки. |
|
Треугольник |
Три точки привязки. |
|
Эллипс |
Три точки привязки. |
|
Знак "Хорошо" (большой палец вверх) |
Одна точка привязки. |
|
Знак "Плохо" (большой палец вниз) |
Одна точка привязки. |
|
Знак "Стрелка вверх" |
Одна точка привязки. |
|
Знак "Стрелка вниз" |
Одна точка привязки. |
|
Знак "Стоп" |
Одна точка привязки. |
|
Знак "Птичка" (галка) |
Одна точка привязки. |
|
Левая ценовая метка |
Одна точка привязки. |
|
Правая ценовая метка |
Одна точка привязки. |
|
Знак "Buy" |
Одна точка привязки. |
|
Знак "Sell" |
Одна точка привязки. |
|
Объект "Стрелка" |
Одна точка привязки. |
|
Объект "Текст" |
Одна точка привязки. |
|
Объект "Текстовая метка" |
Положение задается при помощи свойств OBJPROP_XDISTANCE и OBJPROP_YDISTANCE. |
|
Объект "Кнопка" |
Положение задается при помощи свойств OBJPROP_XDISTANCE и OBJPROP_YDISTANCE. |
|
Объект "График" |
Положение задается при помощи свойств OBJPROP_XDISTANCE и OBJPROP_YDISTANCE. |
|
Объект "Рисунок" |
Одна точка привязки. |
|
Объект "Графическая метка" |
Положение задается при помощи свойств OBJPROP_XDISTANCE и OBJPROP_YDISTANCE. |
|
Объект "Поле ввода" |
Положение задается при помощи свойств OBJPROP_XDISTANCE и OBJPROP_YDISTANCE. |
|
Объект "Событие", соответствующий событию в экономическом календаре |
Одна точка привязки. Фактически используется только координата по оси времени. |
|
Объект "Прямоугольная метка"для создания и оформления пользовательского графического интерфейса. |
Положение задается при помощи свойств OBJPROP_XDISTANCE и OBJPROP_YDISTANCE. |