Добавляет метку с заданными параметрами.
Функция возвращает числовой идентификатор метки. В случае неуспешного завершения функция возвращает «nil».
Параметр | Тип | Описание |
---|---|---|
TEXT | STRING | Подпись метки (если подпись не требуется, то пустая строка) |
IMAGE_PATH | STRING | Путь к картинке, которая будет отображаться в качестве метки (пустая строка, если картинка не требуется). Используются картинки формата *.bmp, *.jpeg |
ALIGNMENT | STRING | Расположение картинки относительно текста (возможно 4 варианта: LEFT, RIGHT, TOP, BOTTOM) |
YVALUE | NUMBER | Значение параметра на оси Y, к которому будет привязана метка |
DATE | NUMBER | Дата в формате «ГГГГММДД», к которой привязана метка |
TIME | NUMBER | Время в формате «ЧЧММСС», к которому будет привязана метка |
R | NUMBER | Красная компонента цвета в формате RGB. Число в интервале [0;255] |
G | NUMBER | Зеленая компонента цвета в формате RGB. Число в интервале [0;255] |
B | NUMBER | Синяя компонента цвета в формате RGB. Число в интервале [0;255] |
TRANSPARENCY | NUMBER | Прозрачность метки в процентах. Значение должно быть в промежутке [0; 100] |
TRANSPARENT_BACKGROUND | NUMBER | Прозрачность фона картинки. Возможные значения: «0» – прозрачность отключена, «1» – прозрачность включена |
FONT_FACE_NAME | STRING | Название шрифта (например «Arial») |
FONT_HEIGHT | NUMBER | Размер шрифта |
HINT | STRING | Текст всплывающей подсказки |
-- Настройки settings = {} -- Метка. Это же значение необходимо указать в настройках графика на закладке "Дополнительно" в поле "Идентификатор" settings.chart_tag = "gzp" -- Класс бумаги для которой будут искаться значение цены и времени settings.class_code = "QJSIM" -- Код бумаги settings.sec_code = "GAZP" stopped = false function main() -- Удаляум все нарисованные метки DelAllLabels(settings.chart_tag) -- Получаем индекс 10000 значения из таблицы всех сделок local last_index = getNumberOf('all_trades') - 10000 local finded = false -- Перебираем значение таблицы всех сделок от 10000 и вверх while finded == false and last_index >= 0 do -- Получаем значение local all_trade_item = getItem('all_trades', last_index) -- Если тикер соответствует тикеру в настройках if all_trade_item.class_code == settings.class_code and all_trade_item.sec_code == settings.sec_code then -- Представляем дату в виде "ГГГГММДД" local date_pos = (tostring(all_trade_item.datetime.year)..add_zero(tostring(all_trade_item.datetime.month))..add_zero(tostring(all_trade_item.datetime.day))) -- Представляем время в виде "ЧЧММСС" local time_pos = (add_zero(tostring(all_trade_item.datetime.hour))..add_zero(tostring(all_trade_item.datetime.min))..add_zero(tostring(all_trade_item.datetime.sec))) -- Вызываем размещение метки с полученной датой и временем place_label(all_trade_item.price, date_pos, time_pos) -- Указываем, что поиск завершен finded = true end -- Если попали не на наш тикер, то берем значение выше last_index = last_index - 1 end while stopped ~= true do sleep(50) end end -- Функция добавляет 0 к переданному значению, если количество переданных символов = 1, "1" -> "01" function add_zero(number_str) if #number_str == 1 then return "0"..number_str else return number_str end end function place_label(price, date_pos, time_pos) -- Внимание, название всех параметров должны писаться большими буквами label_params = { -- Если подпись не требуется то оставить строку пустой "" TEXT = "Label text", -- Если картинка не требуется оставить значение пустым "" IMAGE_PATH = getScriptPath() .. "\\arrow.jpeg", -- Расположение картинки относительно текста (возможно 4 варианта: LEFT, RIGHT, TOP, BOTTOM) ALIGNMENT = "LEFT", -- Значение параметра на оси Y, к которому будет привязана метка YVALUE = price, -- Дата в формате «ГГГГММДД», к которой привязана метка DATE = date_pos, -- Время в формате «ЧЧММСС», к которому будет привязана метка TIME = time_pos, -- Красная компонента цвета в формате RGB. Число в интервале [0;255] R = 100, -- Зеленая компонента цвета в формате RGB. Число в интервале [0;255] G = 200, -- Синяя компонента цвета в формате RGB. Число в интервале [0;255] B = 80, -- Прозрачность метки в процентах. Значение должно быть в промежутке [0; 100] TRANSPARENCY = 10, -- Прозрачность фона картинки. Возможные значения: «0» – прозрачность отключена, «1» – прозрачность включена TRANSPARENT_BACKGROUND = 1, -- Название шрифта (например «Arial») FONT_FACE_NAME = "Arial", -- Размер шрифта FONT_HEIGHT = 12, -- Текст всплывающей подсказки HINT = "This is hint" } -- Добавляем метку и запоминаем ее ID label_id = AddLabel(settings.chart_tag, label_params) end