Pine Script编写计数器变量时报错'CountOverB已定义'如何解决?
Pine Script "变量已定义"报错解决方案
报错原因
你触发了Pine Script的变量重复定义规则:
你已经在if语句外层声明了要将if表达式的返回值赋值给CountOverB,if代码块内部仅需要返回对应数值即可,不需要再次书写CountOverB = 的赋值逻辑,重复赋值操作会被判定为重复定义变量。
修复后的代码
var CountOverB = 0 // Pine Script v4及以上版本推荐用:=运算符更新已声明的变量 CountOverB := if OverB and not OverB[1] 1 else CountOverB + 1
补充说明
如果需要更简洁的写法,可以直接用三元运算符实现相同逻辑:
var CountOverB = 0 CountOverB := (OverB and not OverB[1]) ? 1 : CountOverB + 1
内容的提问来源于stack exchange,提问作者Sandrino
相关产品推荐
相关产品推荐

