Pinescript 标记较低的低点

Pinescript mark lower lows

我正试图标记更低的低点。我的想法是使用内置的 ta.pivotlow 函数来识别第一个摆动低点,然后将该值存储在变量 lastswinglow 中(用值 na 初始化)。从左到右迭代,我将继续使用 ta.pivotlow 并且仅在 lastswinglow 小于或等于当前值时更新它。因此,绘制每个 lastswinglow 值应该标记所有有效的较低低点,但它没有按预期工作 - 它似乎只是标记每个 ta.pivotlow。 Pinescript如下:

//@version=5
indicator(shorttitle="MS", title="Swing Points", overlay=true)

// inputs
swinglenl = input.int(1, minval=1, title="Consecutive candles to the left of swing point")
swinglenr = input.int(1, minval=1, title="Consecutive candles to the right of swing point")

// vars
float lastswinglow = na
pvtlow = ta.pivotlow(low, swinglenl, swinglenr)

if na(lastswinglow) or lastswinglow > pvtlow
    lastswinglow := pvtlow


plot(lastswinglow, style=plot.style_cross, color=color.red, linewidth=3)

您需要使用 var 关键字,这样您的变量 lastswinglow 就不会在每个柱上重新初始化为 na。

var float lastswinglow = na