PineScript 如何解析 'if series1 > series2'?
How does PineScript parse 'if series1 > series2'?
我想弄清楚我发现的一些用 PineScript 编写的代码是如何工作的。
是这样的:
C_BlackBody = open > close
C_EngulfingBearish = C_UpTrend and C_BlackBody [...]
if C_EngulfingBearish
[do something...]
我想做的是输出close
的值。 open
和 close
都是系列,也就是说 C_BlackBody
和 C_EngulfingBearish
也是。但是,C_EngulfingBearish
可以成功地用在 if
语句中,因此它就像一个布尔值。然而,如果我尝试将它连接成一个字符串,它会说它仍然是一个系列:
debugInfo := "Close: " + close
报错:
Cannot call 'operator +' with arguments (literal string, series[float]);
那么什么是 close
、C_EngulfingBearish
和其他被评估的系列在 if
语句中使用时,以及如何将其转换为字符串以便我可以输出它在标签中作为调试信息?
C_EngulfingBearish
是一系列布尔值,所以可以用在运算符if
的条件中。
使用函数tostring
转换为字符串。
debugInfo := "Close: " + tostring(close)
阅读 Debagging
的提示
我想弄清楚我发现的一些用 PineScript 编写的代码是如何工作的。
是这样的:
C_BlackBody = open > close
C_EngulfingBearish = C_UpTrend and C_BlackBody [...]
if C_EngulfingBearish
[do something...]
我想做的是输出close
的值。 open
和 close
都是系列,也就是说 C_BlackBody
和 C_EngulfingBearish
也是。但是,C_EngulfingBearish
可以成功地用在 if
语句中,因此它就像一个布尔值。然而,如果我尝试将它连接成一个字符串,它会说它仍然是一个系列:
debugInfo := "Close: " + close
报错:
Cannot call 'operator +' with arguments (literal string, series[float]);
那么什么是 close
、C_EngulfingBearish
和其他被评估的系列在 if
语句中使用时,以及如何将其转换为字符串以便我可以输出它在标签中作为调试信息?
C_EngulfingBearish
是一系列布尔值,所以可以用在运算符if
的条件中。
使用函数tostring
转换为字符串。
debugInfo := "Close: " + tostring(close)
阅读 Debagging
的提示