Как получить доступ к предыдущему значению серии с помощью функции безопасности - PullRequest
0 голосов
/ 22 марта 2020

Я пытаюсь нанести индикатор на pinescript, для которого мне нужно вычислить EMA для двух серий данных.

Функция безопасности не возвращает ряды в качестве периода более высокого графика, который делит их в таймфрейм нижнего графика.

study("My Script")
s5v = 12
ul = sma( high * (1 + 4 * (high - low) / (high + low)), length = 14)
s5r = 26
s5g = 9
vc1 = security(syminfo.tickerid, "D", ema(close, s5v)) - security(syminfo.tickerid, "D", ema(close, s5r))
plot(vc1)

Есть ли какой-нибудь способ, которым я могу получить серию данных в терминах более высокого таймфрейма? предыдущее значение в возвращаемой серии указывает на разделенное значение, а не предыдущее значение на старшем таймфрейме

1 Ответ

0 голосов
/ 22 марта 2020

При этом используется только один вызов безопасности для получения значения vc1 с более высокой TF, а затем используется другой вызов для получения предыдущего значения из HTF:

//@version=4
study("My Script")
s5v = 12
ul = sma( high * (1 + 4 * (high - low) / (high + low)), length = 14)
s5r = 26
s5g = 9
maDiff = ema(close, s5v) - ema(close, s5r)
vc1 = security(syminfo.tickerid, "D", maDiff)
plot(vc1, "vc1")

// Fetch previous value from higher TF.
vc1Previous = security(syminfo.tickerid, "D", maDiff[1])
plot(vc1Previous, "vc1Previous", color.blue, transp = 60)

enter image description here

...