Data1.VarB = Data1.MA(Close[1], 5) ^ 2 + Data1.MA(Close[1], 5);
Data1.VarC = Data1.MA(Low[1], 5) ^ 2 + Data1.MA(Low[1], 5);
Data1.VarD = Data1.MA(High[1], 5) ^ 2 + Data1.MA(High[1], 5);
Data1.VarE = (Data1.VarB - Data1.Lowest(VarC, 64))/ (Data1.Highest(VarD, 64) - Data1.Lowest(VarC, 64)) *150 + 65 - 10;
Data1.VarF = Data1.SMA(VarE,3,1) * 1.5 - 100;
Commentary("结果三"+text(Data1.VarF));
为什么我输出的Data1.VarF 是空值,如下图所示,是哪里出了问题呢?而且是所有的数值到VarE都是正常输出的,只有VarF输出是空值,而且是每根K线的VarF输出都为空值,不只此根
然后我发现,如果把Data1.VarF = Data1.SMA(VarE,1,1) * 1.5 - 100;
也就是周期改成1之后,数值又正常输出了,说明是正常取值的,那么为什么周期为3却是空值呢?
但是我如下相似代码:
Data1.Var2 = (Data1.Close[1] - Data1.Lowest(Low[1],80))/(Data1.Highest(High[1],80)-Data1.Lowest(Low[1],80))*200;
Data1.Var3 = Data1.SMA(Var2,3,1);
输出Data1.Var3是正常的输出的,请老师指教哈
检查过了,分母不会是0,所以请老师再帮忙看看是其他什么原因
你有完整可运行的代码吗? 这种跑一下就知道了