【问题标题】:pine v2 if statements meaningpine v2 if 语句的含义
【发布时间】:2022-01-25 07:37:16
【问题描述】:

我最近一直在研究 pine(tradingview),在 pine v2 中遇到了一个我不理解的嵌套 if 语句。

//@version=2 
study("name", shorttitle="name", overlay=true)
phi = 0.001

calculate() =>
    last = security(tickerid, '60', close[1])
    actual = security(tickerid, '60', close)
    result = actual - last
    p = result / last

diff = calculate()

q = diff > phi ? true : diff < -phi ? false : q[1]

long_condition = crossover (diff, phi)
plotshape(long_condition, style=shape.triangleup, title = "Buy", text="Buy", location=location.belowbar, size=size.small, color=green, transp=0)

short_condition = crossunder (diff, phi)
plotshape(short_condition, style=shape.triangledown, title = "Sell", text="Sell", location=location.abovebar, size=size.small, color=red, transp=0)


所以我不明白 q 是什么以及如何将此嵌套 if 语句转换为 pine v4 嵌套 if

【问题讨论】:

  • 这确实是非常混乱的代码。看起来 q 可以是数组、布尔值或原始数组的元素。
  • 我把所有的代码贴出来了,希望这样更容易理解。

标签: pine-script nested-if


【解决方案1】:

q 是一个 boolean 变量。

[] 在松树中称为History Reference Operator。这样,您可以访问变量的历史值。所以q[1] 返回q 的前一个值。

如果要将此转换为v4,则需要先定义变量q

bool q = false
q := diff > phi ? true : diff < -phi ? false : q[1]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-20
    相关资源
    最近更新 更多