pine-script - tradingview close -close[1] 准确度
问题描述
我写了一个如下的 Pine 脚本来考虑 RSI 指标。在此计算 RSI 的代码中,需要减去两个相邻蜡烛的收盘价(close-close 1)。如下图所示,pine 脚本 close-close 1 = 0.10 而 97.42-97.31=0.11!。这种差异从何而来?
为了计算 RMA,Pine 脚本使用 sum 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))
解决方案
推荐阅读
- ios - 故事板在自动布局中为自定义视图设置宽度/高度,类似于 UILabel
- html - 如何在Angular中选择组合框数据之前禁用按钮
- google-chrome - 如何在没有任何浏览器的情况下启动 Web 应用程序
- swift - 从数值泛型返回 Double 的平均值扩展
- nginx - 添加删除 .html 扩展名的选项后,闪亮的服务器重定向停止工作
- matlab - 使矩形跟随轨迹
- javascript - 如何在反应中获取json api中的图像?
- django - 如何在 django-filter 中使用范围滑块
- python - 试图改变机器人的状态
- neo4j - Neo4j - 通过关系创建导入数百万数据