【问题标题】:hline doesn't work as expected in PineScripthline 在 PineScript 中无法按预期工作
【发布时间】:2018-08-30 13:06:22
【问题描述】:

下面的代码是如何工作的:

//@version=3
study("My Script", overlay=true)
price = (ticker == "EURUSD" ? 1.1600 : 1.1500)
hline(1.1500, title='Pi', color=blue, linestyle=dotted, linewidth=2)
plot(price)

但这不是:

//@version=3
study("My Script", overlay=true)
price = (ticker == "EURUSD" ? 1.1600 : 1.1500)
hline(price, title='Pi', color=blue, linestyle=dotted, linewidth=2)
plot(price)

唯一的区别是使用变量作为 hline 参数。

【问题讨论】:

    标签: pine-script


    【解决方案1】:

    嗯,hline() 的想法是在 固定 价格处有一条水平线。如果您对price 参数使用变量,则它不再固定”了。因为变量在运行时可以有不同的值。因此,您不能使用变量。

    【讨论】:

    • 这个答案已经足够接近了。但真正的问题似乎是 pine-script 是如何被削弱为仅将(向量)系列用于变量。因此hline() 不高兴看到一系列而不是单个值。
    • 交易视图中的 hline() 很糟糕。这还不足以提供一个工具来根据开发人员的需要对图表进行注释。
    • 那么在可变价格水平绘制水平线的解决方法是什么?或者也许有一种方法可以将变量作为常量传递给函数?
    • 您可以通过创建启用扩展的行来解决此问题,请参阅下面的答案
    【解决方案2】:

    解决方法

    line hLine = line.new(
          x1     = bar_index-1, 
          y1     = price,
          x2     = bar_index,
          y2     = price,
          xloc   = xloc.bar_index,
          color  = color.blue,
          extend = extend.both,
          style  = line.style_dotted,
          width  = 2)
    line.delete(hLine[1])
    

    【讨论】:

      猜你喜欢
      • 2020-09-10
      • 2013-12-23
      • 2014-12-09
      • 2016-01-13
      • 2020-09-21
      • 2011-08-17
      • 2012-04-29
      • 2021-08-12
      • 2019-02-04
      相关资源
      最近更新 更多