我正在使用松树脚本,我想将一个系列的每个值相互乘以。假设我有一个具有以下值的系列:
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
有没有简单的方法可以得到这个结果?
答案 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)