如何根据条件更新值?
How to update a value depending on a condition?
我正在使用 tradingview.com 中使用的 Pine 脚本。
我的问题是:是否可以根据条件更新变量?
这是一个名为 'index' 的变量,每当 'buycondition' 为 False 时该变量就会增加。每当 'buycondition' 变为 True 时,变量 'index' returns 变为 0。
index = 0
if (buycondition == 0) // 0 for False
index += 1
else:
index = 0
目标是了解最后一个 'buycondition' 和最后一个 'sellcondition'
之间的烛台距离
请阅读 Variable declaration 以了解其工作原理。
Pine 脚本在每个柱上执行。参见 Execution Model。
按照你写的方式,你的 index
在每个柱上都重新初始化为 0。
你应该这样使用它:
var int index = 0
if (buycondition == 0) // 0 for False
index := index + 1
else:
index := 0
其实你是想测量条件“buycondition == 0”的时间,对吧?
那就一切都好!
将此块放入一个函数中,例如调用每秒,指数以秒为单位提供该烛台时间。
例如(我是 Pine 新手)
index := 0
getCD(buycondition) =>
if (buycondition == 0) // 0 for False
index := index + 1
else:
index := 0
index // return value
我正在使用 tradingview.com 中使用的 Pine 脚本。
我的问题是:是否可以根据条件更新变量?
这是一个名为 'index' 的变量,每当 'buycondition' 为 False 时该变量就会增加。每当 'buycondition' 变为 True 时,变量 'index' returns 变为 0。
index = 0
if (buycondition == 0) // 0 for False
index += 1
else:
index = 0
目标是了解最后一个 'buycondition' 和最后一个 'sellcondition'
之间的烛台距离请阅读 Variable declaration 以了解其工作原理。
Pine 脚本在每个柱上执行。参见 Execution Model。
按照你写的方式,你的 index
在每个柱上都重新初始化为 0。
你应该这样使用它:
var int index = 0
if (buycondition == 0) // 0 for False
index := index + 1
else:
index := 0
其实你是想测量条件“buycondition == 0”的时间,对吧?
那就一切都好! 将此块放入一个函数中,例如调用每秒,指数以秒为单位提供该烛台时间。
例如(我是 Pine 新手)
index := 0
getCD(buycondition) =>
if (buycondition == 0) // 0 for False
index := index + 1
else:
index := 0
index // return value