Pinescript-具有百分比变化功能的“比较”指标仅获取最后一个柱数据

问题描述 投票:-1回答:1

需要帮助。

在Tradingview中,我使用“ Compare”来查看Binance上的BTCUSDT与ETHUSDT,基本上可以。但是图表上的线条太“上下”,我想查看那些股票的SMA或EMA。

我正在尝试逐步进行操作,但是我无法解决以下问题:我的代码仅考虑最后计算的值,并且每个新数据的“百分比变化线”都从0开始。因此,它没有任何意义。意思是说,我的最后一个数据不会加上先前的值,但总是从零开始。

因此,输出的数据(值)很好(与我在Tradingview“ Compare”上添加相同的代码相同,但是Tradingview“ Compare”计算/添加了历史数据,而我的代码从0开始。

这是Pine脚本代码:

//@version=4
study(title="Compare", shorttitle="Compare", overlay=false, max_bars_back=0)

perc_change = (((close[0] - open[0]) / open [0]) * 100)

sym1 = "BINANCE:BTCUSDT", res1 = "30", source1 = perc_change

plot(security(sym1, res1, source1), color=color.orange, linewidth=2)


sym2 = "BINANCE:ETHUSDT", res2 = "30", source2 = perc_change

plot(security(sym2, res2, source2), color=color.blue, linewidth=2)
compare percentage indicator
1个回答
0
投票

听起来像是两个ROC之间的差异。使用此功能,您可以仅显示2个ROC,而且还可以显示代表这两个ROC之间的增量的列。您还可以更改ROC的期限:

//@version=4
study(title="Compare", shorttitle="Compare")
rocPeriod = input(1, minval = 1)
showLines = input(true)
showDelta = input(true)

perc_change = roc(close, rocPeriod)
sym1 = "BINANCE:BTCUSDT"
sym2 = "BINANCE:ETHUSDT"
res = "30"

s1 = security(sym1, res, perc_change)
s2 = security(sym2, res, perc_change)
delta = s1 - s2
plot(showLines ? s1 : na, "s1", color.orange)
plot(showLines ? s2 : na, "s2", color.blue)
hline(0)
plot(showDelta ? delta : na, "delta", delta > 0 ? color.lime : color.red, 1, plot.style_columns)

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.