如何仅在 x 条柱数定义的范围内绘图?

How to plot only within a range defined by x number of bars?

我知道我可以使用日期和时间值的范围在图表上绘制图表。

但是,我希望能够使用 特定数量的烛台 .

进行绘图

例如,我希望能够说出类似

的内容
// Within the most recent 10 bars
// If close[0] > close[1]
// plotshape()

我尝试使用 barstate.isrealtimebarstate.islast 实现多种变体,但我将 运行 限制在限制范围内。

一个主要问题是,尽管 bar_index[#] 通过从 最近的柱线 向后索引来工作,bar_index[10] 的值不是 10,而是一些以千为单位的数字(取决于图表的时间范围——对我来说,它的每日 = 2,616 根蜡烛,1 小时 = 6,217 根蜡烛,15 米 = 5,222 根蜡烛,等等)。换句话说,它计算 最旧的柱 可用的柱的数量。

由于条形图的引用(从最近的开始)和索引值(从最旧的开始)是冲突的——由于从相反的两端计数——我不确定如何指定:plotshape() for最近的 10 个柱。

我也 运行 遇到了麻烦,因为 bar_index[0] 发生在图表时间范围的每一次迭代中——所以我在尝试 [=16] 时陷入了递归计算=].

看来我需要的是bar_index.islast[10]

我想根据 指定蜡烛数 因为 x date/time[=65 调用 plotshape() 的原因=](或 在日期范围 (x,y) 内),是因为无论我的图表显示哪个时间范围,我都希望我的指标正常运行:

如果我要显示月度图表,我想绘制最近 10 个月度柱状图;如果我要显示日线图,我想绘制最近 10 个日线图;等等

如果我被迫使用日期范围,那么这个功能就会失效,因为我会看到越来越多的柱形图用于更小的时间范围。

警告** 我能够 kinda 通过指定最旧烛台的柱数来完成这项工作,方法如下:

bar_index > 2600 ? color=color.black : na

但是,考虑到每个时间框架显示的柱数不同,这对我来说不是一个可行的解决方案。

感谢任何建议。

更新 我一直在寻找,发现我想要的功能已经内置到各种 plot() 函数的 show_last 参数中。

我会留下我的问题,以防对其他人有所帮助。

UPDATE 我一直在寻找,发现我想要的功能已经内置到各种 plot() 函数的 show_last = int 参数中。

我会留下我的问题,以防对其他人有所帮助。