仅显示最后10支蜡烛的标签



我正试图找到最高的高度,并仅显示最后10支蜡烛的标签。

这是到目前为止所做的,但我不能让它只显示最后10支蜡烛的标签,要么全部,要么没有。

highestHigh = highest(high, 20)
is_high = high >= highestHigh
Lookback = bar_index - 10
if is_high and bar_index > Lookback and barstate.islast
label.new(bar_index, na, "HH: n" + tostring(highestHigh), color=color.green, textcolor=color.black, style=label.style_label_down, yloc=yloc.abovebar)

是否有一种工作可以让这个工作?

谢谢。

将标签存储在数组中,然后循环遍历数组并将标签的x位置与当前栏索引进行比较。如果差异大于您的回溯变量,则删除标签。

一个例子:

//@version=5
indicator("My script", overlay=true)
f_remove_labels(lbl_arr, lb) =>
temp_arr = array.new_label()
len = array.size(lbl_arr)
if (len > 0)
for i=0 to len-1
lbl = array.get(lbl_arr, i)
idx = label.get_x(lbl)
if ((bar_index - idx) >= lb)
label.delete(lbl)
else
array.push(temp_arr, lbl)
temp_arr
var label_arr = array.new_label()
lookback = 10
if (close > open)
lbl = label.new(bar_index, high, "Green")
array.push(label_arr, lbl)
label_arr := f_remove_labels(label_arr, lookback)

最新更新