【问题标题】:Pinescript array.get() function is not accessing data from my array?Pinescript array.get() 函数没有从我的数组中访问数据?
【发布时间】:2022-12-17 10:07:04
【问题描述】:

当情况为真时,我试图用元素填充数组。当我在 IF 语句之外使用 array.push() 并稍后使用 array.get() 时,我没有错误。但是,当我在 IF 语句中使用 array.push() 时,我得到一个错误,指出数组为空。当我在屏幕上打印标签以包含数组元素和数组大小时,它会显示数据并告诉我大小。为什么 array.get() 函数看不到相同的数据?我想稍后使用这些元素进行比较分析,但无法检索它们。

myEma = ema(close,14)
var myArray = array.new_float(0)

if close > myEma
    array.push(myArray,close)

lb1 = label.new(bar_index, high, text=tostring(myArray) + " Array size: " + tostring(array.size(myArray),textcolor=color.black),label.delete(lb1[1])

plot(array.get(myArray,0))

提前感谢您的帮助!

【问题讨论】:

    标签: pine-script


    【解决方案1】:

    这是因为在图表的第一个柱上,数组中还没有任何元素,但您仍在尝试从数组中获取 plot 元素。

    你可以在使用plot之前检查数组的大小:

    plot(array.size(myArray) > 0 ? array.get(myArray,0) : na)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-22
      • 1970-01-01
      • 2011-09-06
      • 2010-11-11
      • 2012-07-17
      • 2015-03-18
      • 2015-04-01
      • 1970-01-01
      相关资源
      最近更新 更多