获取一段时间内移动平均交叉的总数,并在它出现的区域上绘制一个标签

Get the total number of moving average crosses over a period of time and plot a label on the area it occurs

(我是新手,很抱歉有狗屎代码。)

我正在尝试获取一段时间内发生的移动平均线交叉的总数,将该数字与用户定义的数字进行比较 'count',然后在该区域的图表上绘制一个标签那些十字架发生了。 (思路是'many crosses in a short period of time = sideways market')

这是我目前所知道的。提前感谢您的帮助!!

    testvar3 = input(title="CompareNum", type=input.integer, defval=2, group="TestGroup")// Compaire number
testvar0 = input(title="inputfunctestLONG", type=input.integer, defval=10, group="TestGroup") //Look back period
MehValue0 = longCross ? 1 : 0 //convert Bool to int
longCrosses = sum(MehValue0,testvar0) // Calculate the number of crosses over a given period
testvar1 = input(title="inputfunctestSHORT", type=input.integer, defval=10, group="TestGroup") //look back period
MehValue1 = shortCross ? 1 : 0 
shortCrosses = sum(MehValue1,testvar1)
shortLongSum = longCrosses + shortCrosses //total number of crosses

LabelCrossTest = if (longCross or shortCross and shortLongSum > testvar0)
    label.new(x=bar_index, y=na, yloc=yloc.abovebar, text="Sideways Detection Test", style=label.style_label_down, color=color.green, size=size.normal)

如果您只更改最后一部分,它应该会按预期工作

if (longCross or shortCross) and shortLongSum > testvar3
    label.new(x=bar_index, y=na, yloc=yloc.abovebar, text="Sideways Detection Test", style=label.style_label_down, color=color.green, size=size.normal)

最好为您的变量指定更具描述性的名称,以便更轻松地跟踪您正在做的事情。因此,而不是 testvar3thresholdminimumCrosses