Цитата |
---|
Egor Zaytsev написал: Добрый день.
Через скрипт как понимаем не ставится, выложите код скрипта здесь, чтобы на Вашем проверить. |
Есть две картинки с экрана в разных версиях. Справа на 1-й свече жёлтая линия это метка.
Ниже код скрипта:
is_run = true----------------------------------------------------
------------------------------------------ НАСТРОЙКИ
-- указать в настройках графика на закладке "Дополнительно" в поле "Идентификатор"
chart_tag = "tag";
-- количество свечей в диапазоне
numcandles = 3;
------------------------------------------ НАСТРОЙКИ
----------------------------------------------------
-- Функция добавляет 0 к переданному значению
add_zero = function(num_str)
num_str = tostring(num_str)
if string.len(num_str) == 1 then
num_str = "0"..num_str
end
return num_str
end
-- добавить метку к графику
function add_label(vol, price, date_vol, time_vol, hint)
local params = {
TEXT = vol,
ALIGNMENT = "RIGHT",
YVALUE = price,
DATE = date_vol,
TIME = time_vol,
R = 255,
G = 255,
B = 180,
TRANSPARENCY = 0,
TRANSPARENT_BACKGROUND = 1,
FONT_FACE_NAME = "Arial",
FONT_HEIGHT = 9,
HINT = hint
}
label_id = AddLabel(chart_tag, params)
end
date_vol = {}
time_vol = {}
-- получение всех свечей
function candle()
allcandles = getNumCandles(chart_tag)
tcandles, ncandles, namecan = getCandlesByIndex(chart_tag, 0, 0, allcandles)
for n = ncandles, ncandles-numcandles, -1 do
local num = ncandles-n+1 -- получаем цифру 2 и увеличение этой цифры на 1 с каждым циклом
date_vol[num] = tcandles[n-1].datetime.year..add_zero(tcandles[n-1].datetime.month)..add_zero(tcandles[n-1].datetime.day)
time_vol[num] = add_zero(tcandles[n-1].datetime.hour)..add_zero(tcandles[n-1].datetime.min)..add_zero(tcandles[n-1].datetime.sec)
end
end
function OnInit()
end
local function label()
candle()
DelAllLabels(chart_tag)
local vol = string.rep("\151", math.floor(30))
local price = 280.91
add_label(vol, price, date_vol[1], time_vol[1], price)
message("Метка установлена")
end
function main()
label()
end