如下图所示,当收盘价小于均线时才会产生做空信号,但此时均线尚未形成,均线值为:N/A,还是会判定成小于0。
代码:
Vars
    Numeric accvol;
    Series<Numeric> MALine;
Events
    OnBar(ArrayRef<Integer> indexs)
    {
        MALine = Ma(Close(), 30);
        accvol = CurrentContracts();
        If (accvol != 0)
        {
            If (MarketPosition() == -1)
            {
                If (Close() > MALine) BuyToCover(1, 0);
            }
        }
        If (accvol == 0)
        {
            If (Close() < MALine) SellShort(1, 0);
        }
        PlotNumeric("MA", MALine);
        Commentary("MALine: " + Text(MALine));
    }
信号图:

补充:请问是否有函数判断均线值是否为有效范围?
有InvalidNumeric 值判断