在松树脚本中将系列的每个值彼此相乘

时间:2021-05-21 14:51:37

标签: pine-script

我正在使用松树脚本,我想将一个系列的每个值相互乘以。假设我有一个具有以下值的系列:

a = [2, 3, 4, 5]

首先将前两个值相乘

2 * 3 = 6

然后它应该将第三个元素与前一个乘积相乘

6 * 4 = 24

结束于

24 * 5 = 120

创建新系列:

prod = [2, 6, 24, 120]

我尝试将 0 bar 值与前一个 bar 值相乘,但这是错误的,因为我想要所有先前值的乘积。

a_value := valuewhen(condition, a, 0)
a_previous_value := valuewhen(condition, a, 1)
prod := a_value * a_previous_value

有没有简单的方法可以得到这个结果?

1 个答案:

答案 0 :(得分:0)

这应该可以,但数字变得非常大,非常快。

//@version=4
study("Prod", overlay=true)

var float prod = na
var float a    = na

a := bar_index % 10
prod := nz(prod[1],1) * (a==0?1:a)

plot(prod)