请问以下代码编译提示存在潜在的逻辑错误?

Params Enum<String> AvgType(["1","2"]); Numeric AvgLength0(5); Numeric AvgLength1(10); Vars Series<Numeric> AvgVal0; Series<Numeric> AvgVal1; Events OnBar(ArrayRef<Integer> indexs) { If(AvgType == "1") { AvgVal0 = AverageFC(Close,AvgLength0); AvgVal1 = AverageFC(Close,AvgLength1); } Else { AvgVal0 = XAverage(Close,AvgLength0); AvgVal1 = XAverage(Close,AvgLength1); } }

Params Bool AvgType(True); Numeric AvgLength(5); Vars Numeric AvgVal; Numeric AverageFC_value; Numeric XAverage_value; Events OnBar(ArrayRef<Integer> indexs) { AverageFC_value=AverageFC(Close,AvgLength); XAverage_value=XAverage(Close,AvgLength); If(AvgType) { AvgVal = AverageFC_value; } Else { AvgVal = XAverage_value; } }

Params Bool AvgType(True); Numeric AvgLength(5); Vars Numeric AvgVal; Events OnBar(ArrayRef<Integer> indexs) { If(AvgType) { AvgVal = AverageFC(Close,AvgLength); } Else { AvgVal = XAverage(Close,AvgLength); } } 一样提示存在潜在的逻辑错误!