如何使用松树识别信号趋势

how to recognize a signal trend using pine

我正在使用此代码在最后一个蜡烛收盘时间查找 SMI。

a = input(10, "Percent K Length")
b = input(3, "Percent D Length")
ob = input(40, "Overbought")
os = input(-40, "Oversold")
// Range Calculation
ll = lowest (low, a)
hh = highest (high, a)
diff = hh - ll
rdiff = close - (hh+ll)/2

avgrel = ema(ema(rdiff,b),b)
avgdiff = ema(ema(diff,b),b)

// SMI calculations
SMI = avgdiff != 0 ? (avgrel/(avgdiff/2)*100) : 0

SMIsignal = ema(SMI,b)
emasignal = ema(SMI, 10)

代码在关闭时为我提供了当前的 SMI 信号和 emasignal,它工作正常。

是否有可能仅当当前 SMI 信号在最后 3 个(例如)蜡烛中下降时 如果 SMIsignal 在最后 3 个(例如)蜡烛中没有降低,则为空(零)SMIsignal 值?

SMItmp = float(na)
SMItmp := ema(SMI,b)
sig = SMItmp[3]<SMItmp[2] and SMItmp[2]<SMItmp[1] and SMItmp[1]<SMItmp[0]
SMIsignal = sig ? SMItmp : na