Я написал скрипт Pine следующим образом для рассмотрения индикатора RSI. В этом коде для расчета RSI необходимо вычесть цену закрытия двух соседних свечей (close-close 1 ). Как вы можете видеть на изображении ниже, сценарий Pine close-close 1 = 0,10, а 97,42-97,31 = 0,11 !. Откуда эта разница?
для вычисления RMA сумма использования сценария Pine 1 объясните, как это значение вычисляется на примере.
Позвольте мне предположить у нас есть следующие данные цены закрытия за 3 дня. именно то, что происходит, произошло для вычисления RSI.
// @version=4
study(title = "MyRSI", overlay=true)
rolling_moving_average(data, length) =>
alpha = length
sum = 0.0
for index = length to 0
if sum == 0.0
sum := data[index]
else
sum := (data[index] + (alpha - 1) * nz(sum[1]))/alpha
MyRSI(data, length) =>
u = max(data - data[1], 0.0)
d = max(data[1] - data, 0.0)
rgain = rolling_moving_average(u,length)
rloss = rolling_moving_average(d,length)
rs = rgain / rloss
rsi = 100 - 100 / ( 1 + rs )
rsi
MyRmagain(data, length) =>
u = max(data - data[1], 0.0)
d = max(data[1] - data, 0.0)
//rgain = rolling_moving_average(u,length)
u
MyRmaloss(data, length) =>
u = max(data - data[1], 0.0)
d = max(data[1] - data, 0.0)
//rloss = rolling_moving_average(d,length)
d
//atr2 = MyRmagain(close, 3)
plot(MyRmagain(close, 3), title="mm[1]", color=#00FF00)
//plot(close)
//atr2 = MyRmaloss(close, 3)
plot(MyRmaloss(close, 3), title="mm[1]", color=#FF0000)
plot(close,"close",#0000FF)
plot(close[1],"close",#ff00FF)
//atr2 := rolling_moving_average(close, 14)
//plot(atr2, title="EMAUP2", color=#FF00FF)
//atr = rma(close, 14)
//plot(atr, title="EMAUP", color=#FF00FF)
//plot(MyRSI(close, 14))