【问题标题】:Declaring variable at the very beginning一开始就声明变量
【发布时间】:2020-06-22 01:24:16
【问题描述】:

我在 Pine 脚本中有一个普遍的问题。我不知道如何在策略一开始就声明一个变量,并在每根蜡烛时更新它。当你宣布它时,它就会在每根蜡烛上宣布!

逻辑应该是这样的:

如果某个事件发生,变量值应设置为x。变量应保持 x 直到另一个事件发生。

我看到的问题是,由于脚本开头的声明,该变量将始终重置为其原始值。

我的(示例)代码:

    a = 20 

    if crossover(ma1, ma2)
         a:=30
    
    if crossunder(ma1, ma2)
         a:=40

对于触发 ma 交叉/下方的蜡烛,变量“a”仅为 30 或 40,但我希望从交叉到交叉的值是 30。

PS:变量保持其值并不是绝对必要的。我只需要“移动平均线的最后一个交叉点是交叉点”(分别是交叉点)的信息。

PPS:我知道在这种情况下你可以简单地使用 ma1 > ma2,但这只是解释我的问题的一个例子。

谢谢你们! BR

【问题讨论】:

    标签: pine-script trading algorithmic-trading


    【解决方案1】:

    你需要使用 var。示例:

    var a = 0
    a:=valuewhen(crossover(ma1, ma2), close, 1)
    

    https://www.tradingview.com/pine-script-docs/en/v4/language/Expressions_declarations_and_statements.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-04
      • 1970-01-01
      • 1970-01-01
      • 2016-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多