取自定的值前10000以内的最大值和最小值取不对

Params Numeric FastLength(5); Numeric SlowLength(60); Numeric SlowLength2(150); Numeric SlowLength3(300); enum<String> sym(["br888.SHFE","ni888.SHFE","jm888.DCE","nr888.INE","si888.GFEX", "ag888.SHFE","ru888.SHFE","rb888.SHFE","eb888.DCE"]); //br合成橡胶,ni镍 ,jm 焦炭,nr20号胶 ag银 ru橡胶 rb螺纹eb苯乙烯 enum<String> freq1(["1m","5m","15m","30m","1h","2h","4h","1d"]); //数据源周期1 enum<String> freq2(["1m","5m","15m","30m","1h","2h","4h","1d"]); //数据源周期2 Numeric beginTime(20251007.000000);//数据开始时间Vars Series<Numeric> AvgValue1; Series<Numeric> AvgValue2; Series<Numeric> AvgValue3; Series<Numeric> AvgValue4; Global Integer layer1; Global Integer layer2; Series<Numeric> Avg_kaofuma; Series<Numeric> VarSum; Series<Numeric> Highestvar; Series<Numeric> lowline; Series<Numeric> pinjun; Series<Numeric> CrossStdDev; Plot plt3;//画图窗口 Plot plt4;//画图窗口 Series<Numeric> Area_100; // 关键:面积必须是序列 Series<Numeric> Area_100_CrossLow; Bool AlreadyBought(False); // 新增:本K线是否已开多 Bool AlreadySold(False); // 新增:本K线是否已开空 Events OnInit() { SetBackBarMaxCount(1+Max(FastLength,SlowLength3)); layer1 = subscribebar(sym, freq1, beginTime, 0, Enum_Data_RolloverForWard() + Enum_Data_ActivePeriod()); layer2 = subscribebar(sym, freq2, beginTime, 0, Enum_Data_RolloverForWard() + Enum_Data_ActivePeriod()); plt3.figure(0); plt4.figure(0); } OnBar(ArrayRef<Integer> indexs) { Range[0: DataSourceSize() - 1] { AvgValue1 = AverageFC(Close, FastLength); AvgValue2 = AverageFC(Close, SlowLength); AvgValue3 = AverageFC(Close, SlowLength2); AvgValue4 = AverageFC(Close, SlowLength3); } PlotNumeric("MA1", AvgValue1); PlotNumeric("MA2", AvgValue2); PlotNumeric("MA3", Data[layer2].AvgValue3); PlotNumeric("MA4", Data[layer2].AvgValue4); Avg_kaofuma = (Data[layer1].AvgValue1 + Data[layer1].AvgValue2 + Data[layer2].AvgValue3 + Data[layer2].AvgValue4) / 4; //方差 VarSum = (Sqr(Data[layer1].AvgValue1 - Avg_kaofuma) + Sqr(Data[layer1].AvgValue2 - Avg_kaofuma) + Sqr(Data[layer2].AvgValue3 - Avg_kaofuma) + Sqr(Data[layer2].AvgValue4 - Avg_kaofuma) ) / 4; //标准差 CrossStdDev = Sqrt(VarSum) ; //data[layer1].plt3.line("VarSum", VarSum); plt3.line("CrossStdDev", CrossStdDev); Highestvar = Highest(CrossStdDev[1], 10000); lowline = Lowest(CrossStdDev[1], 10000); pinjun = (lowline + Highestvar) / 2; plt3.line("Highestvar", Highestvar); plt3.line("lowline", lowline); plt3.line("pinjun", pinjun); AlreadyBought = False; AlreadySold = False; // If( Data[layer2].AvgValue3 > Data[layer2].AvgValue4) { If (MarketPosition > 0 && CrossUnder(CrossStdDev , pinjun)) Sell(1, Open); If (!AlreadyBought && MarketPosition < 1 and CrossOver(CrossStdDev , pinjun )) Buy(1, Open); AlreadyBought = True; } //If( Data[layer2].AvgValue3 < Data[layer2].AvgValue4) { If (MarketPosition < 0 && CrossOver(CrossStdDev , pinjun ) ) BuyToCover(1, Open ); If (!AlreadySold && MarketPosition > -1 And CrossUnder(CrossStdDev , pinjun) ) SellShort(1, Open); AlreadySold = True; } }取出来的值和想取的值不一样,麻烦大佬们给看一下,目的是想用 Highestvar = Highest(CrossStdDev[1], 10000); lowline = Lowest(CrossStdDev[1], 10000);取10000以内的最大值和最小值,或还有其他函数或方法麻烦介绍一下,谢谢

策略单元设置最大回溯范围调整下,比10000大