【问题标题】:interpret tradingview pine-script self-referencing variable value解释 tradingview 松脚本自引用变量值
【发布时间】:2020-09-10 09:23:08
【问题描述】:

我需要有人将这行 pine-script 代码解释或转换为任何其他语言:

TrendUp = close[1] > TrendUp[1] ? max(100, TrendUp[1]) : 100

其实奇怪的是TrendUp[1]。它是如何评估的,它的价值是什么?

完整代码为:

Up = hl2 - atr(1)
Dn = hl2 + atr(1)

TrendUp = close[1] > TrendUp[1] ? max(Up, TrendUp[1]) : Up
TrendDown = close[1] < TrendDown[1] ? min(Dn, TrendDown[1]) : Dn
Trend = close > TrendDown[1] ? 1 : close < TrendUp[1] ? -1 : nz(Trend[1], 0)

plotarrow(Trend == 1 and Trend[1] == -1 ? Trend : na, title="Up Entry Arrow", colorup=lime, maxheight=1000, minheight=50, transp=85)
plotarrow(Trend == -1 and Trend[1] == 1 ? Trend : na, title="Down Entry Arrow", colordown=red, maxheight=1000, minheight=50, transp=85)  

图表上的结果是那些长长的红色/绿色垂直箭头:

提前致谢。

【问题讨论】:

    标签: pine-script trading indicator


    【解决方案1】:

    [] 在 pinescript 中称为 History Reference Operator。您可以使用此运算符来访问变量的历史值。

    例如,close[3] 将返回三个柱前的收盘价。请注意,历史参考运算符将为图表的第一个柱返回 n/a

    阅读我提供的链接后,为了理解下面的代码,我建议您绘制其中的一些变量。

    TrendUp = close[1] &gt; TrendUp[1] ? max(Up, TrendUp[1]) : Up

    您应该看看close[1]TrendUp[1]Up 具有哪些值。最简单的方法是使用overlay=false 创建一个新指标并删除所有绘图语句。然后将以下代码添加到脚本的最后。

    plot(series=TrendUp, color=green)
    plot(series=TrendUp[1], color=red)
    plot(series=close[1], color=orange)
    plot(series=Up, color=white)
    

    下图是图表第一栏的屏幕截图。正如我所说,TrendUp[1]close[1] 的值是n/a。因此,close[1] &gt; TrendUp[1] 的计算结果为 falseUpTrend 得到 Up 的值,当时为 85.1

    所以,这就是你的开始。然后将鼠标悬停在下一个栏上并继续查看值。您还可以绘制close 价格以更好地了解。

    记住,TrendUp[1] 指的是前一栏的TrendUp 的值。因此,红色和绿色图之间有一个条形延迟。

    【讨论】:

      猜你喜欢
      • 2020-11-14
      • 2021-08-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-18
      • 1970-01-01
      • 2018-05-16
      • 1970-01-01
      • 2020-12-21
      相关资源
      最近更新 更多