如何在pinescript中访问series[float]中的实际数字

似乎无法从Series对象获得实际值,color.red),color.green):study(“:max_lines_count=24):new_interval=change(time(Interval)):if new_interval。Line.new(x1=ll_index.Ll_indexhhh_indexll_index=bar_index
提问开始:

好的,所以我想要实现的听起来相当简单:回顾过去一周的高点和低点(所以每周日美国东部时间晚上8点),并用水平线绘制这些水平。我想在过去的12周左右这样做

但是,当我尝试这样做时,我似乎无法从series对象中获取实际的值。到目前为止,这是我的代码,尝试只绘制其中一个级别:

allLows = security(syminfo.tickerid, "W", low)
allHighs = security(syminfo.tickerid, "W", high)

h = allHighs[1]
l = allLows[1]

plot(h, "High (sell zone)", color.red)
plot(l, "Low (buy zone)", color.green)

这是我得到的图像:

下面是我真正想要的东西(手动绘制):

理想情况下,我希望只获取allHighsallLows系列中的实际值,并绘制这些值,但对于我来说,我无法弄清楚如何

回答开始:得票数 1
//@version=4
study("", overlay = true, max_lines_count = 24)

interval = input("W")

new_interval = change(time(interval)) != 0

var float hh = na
var int hh_index = na
var float ll = na
var int ll_index = na

if new_interval
    line.new(x1 = hh_index, y1 = hh, x2 = hh_index + 1, y2 = hh, color = color.red, extend = extend.right)
    line.new(x1 = ll_index, y1 = ll, x2 = ll_index + 1, y2 = ll, color = color.green, extend = extend.right)
    hh := high
    ll := low
    hh_index := bar_index
    ll_index := bar_index
else
    if high > hh
        hh := high
        hh_index := bar_index
    if low < ll
        ll := low
        ll_index := bar_index

请注意max_lines_count。它将限制历史行数。有许多其他的方法可以做到这一点。为了更容易地引用值或更好地控制行,请使用var数组来存储值以及var行数组。

总结

以上是真正的电脑专家为你收集整理的如何在pinescript中访问series[float]中的实际数字的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得真正的电脑专家网站内容还不错,欢迎将真正的电脑专家推荐给好友。

你可能想看:
分享给朋友: