帮我检查一下ADX指标问题出在哪里

//------------------------------------------------------------------------// 简称: ADX_Indicator// 名称: ADX指标(平均趋向指数)// 类别: 公式应用// 类型: 内建应用//------------------------------------------------------------------------Params Numeric Length(14); // ADX计算周期 Numeric Smooth(14); // ADX平滑周期 Numeric ADX_Level(25); // ADX强弱分界线Vars Series<Numeric> TR; // 真实波幅 Series<Numeric> PlusDM; // +DM Series<Numeric> MinusDM; // -DM Series<Numeric> PlusDI; // +DI Series<Numeric> MinusDI; // -DI Series<Numeric> DX; // 趋向指数 Series<Numeric> ADX; // 平均趋向指数 Series<Numeric> SmoothedTR; Series<Numeric> SmoothedPlusDM; Series<Numeric> SmoothedMinusDM;Events OnReady() { // 完全模仿KDJ的设置 SetBackBarMaxCount(1 + Max(Length, Smooth)); } OnBar(ArrayRef<Integer> indexs) { Range[0:DataSourceSize() - 1] { // ========== 1. 计算TR ========== Numeric HL = High - Low; Numeric HC = Abs(High - Close[1]); Numeric LC = Abs(Low - Close[1]); TR = Max(HL, Max(HC, LC)); // ========== 2. 计算DM ========== Numeric upMove = High - High[1]; Numeric downMove = Low[1] - Low; if(upMove > downMove && upMove > 0) { PlusDM = upMove; MinusDM = 0; } else if(downMove > upMove && downMove > 0) { PlusDM = 0; MinusDM = downMove; } else { PlusDM = 0; MinusDI = 0; } // ========== 3. 平滑TR和DM ========== if(CurrentBar == 0) { SmoothedTR = TR; SmoothedPlusDM = PlusDM; SmoothedMinusDM = MinusDM; } else { SmoothedTR = SmoothedTR[1] * (Length - 1) / Length + TR; SmoothedPlusDM = SmoothedPlusDM[1] * (Length - 1) / Length + PlusDM; SmoothedMinusDM = SmoothedMinusDM[1] * (Length - 1) / Length + MinusDM; } // ========== 4. 计算DI ========== if(SmoothedTR > 0) { PlusDI = 100 * SmoothedPlusDM / SmoothedTR; MinusDI = 100 * SmoothedMinusDM / SmoothedTR; } else { PlusDI = 0; MinusDI = 0; } // ========== 5. 计算DX和ADX ========== Numeric DI_Sum = PlusDI + MinusDI; Numeric DI_Diff = Abs(PlusDI - MinusDI); if(DI_Sum > 0) { DX = 100 * DI_Diff / DI_Sum; } else { DX = 0; } // 计算ADX if(CurrentBar < Smooth) { ADX = Average(DX, CurrentBar + 1); } else { ADX = (ADX[1] * (Smooth - 1) + DX) / Smooth; } // ========== 6. 绘图(完全模仿KDJ) ========== // 只绘制有效的值 if(ADX <> InvalidNumeric) { PlotNumeric("ADX", ADX); } if(PlusDI <> InvalidNumeric) { PlotNumeric("+DI", PlusDI); } if(MinusDI <> InvalidNumeric) { PlotNumeric("-DI", MinusDI); } // 水平参考线 PlotNumeric("Ref1", 20); PlotNumeric("Ref2", 80); } }ADX变成一条线,K线也变小了,帮我看看问题出在哪里

设置成副图, 在公式编辑界面的左下角下来菜单,把主图改成副图