Pine script 为什么这两个代码段生成不同的图?

Pine script 为什么这两个代码段生成不同的图?,pine-script,Pine Script,我在pine中创建了一些脚本和实验。尽管我尽了最大的努力,我还是无法理解我所说的一些“特质”。以下是一个我非常感谢的解释: 附件A: len = input(14, 'length', input.integer) highrsi = rsi(high, len) lowrsi = rsi(low, len) val = rsi(close, len) > 50 ? highrsi : lowrsi plot(val) 附件B: len = input(14, 'length', inp

我在pine中创建了一些脚本和实验。尽管我尽了最大的努力,我还是无法理解我所说的一些“特质”。以下是一个我非常感谢的解释:

附件A:

len = input(14, 'length', input.integer)
highrsi = rsi(high, len)
lowrsi = rsi(low, len)
val = rsi(close, len) > 50 ? highrsi : lowrsi
plot(val)
附件B:

len = input(14, 'length', input.integer)
val = rsi(close, len) > 50 ? rsi(high, len) : rsi(low, len)
plot(val)
在任何其他语言中,这两段代码都是等价的,因为我所做的只是将rsi()函数的结果存储在图表a中的两个变量中


我缺少什么?

Pine运行时与普通语言的运行时非常不同。许多函数调用,如
rsi()
,需要在每个条上执行,以返回正确的结果,这在附件B中不是这样的。虽然代码在语法上是正确的,并且可以编译,但它无法正常工作

有关usrman的详细说明,请参阅。

谢谢:)。现在这确实更有意义了。在第二个示例中,序列rsi(高,len)和rsi(低,len)可能不会在每个条上运行,因为它们隐藏在if分支后面,导致序列中“缺少”值。