各位老师帮看下,我的代码写完后,主副在一起,是错在哪里了

Params

  Numeric Length(20);        //周期        

   Numeric Offset(2);

   Numeric Length1(5);

   Numeric Length2(10);

   Numeric Length3(53);

   Numeric Lots(1);  

 Numeric FastLength(12);

   Numeric SlowLength(26);

   Numeric MACDLength(9);  //标准差倍数   //此处添加参数


Vars

   Numeric UpLine;        //上轨

   Numeric DownLine;        //下轨

   Series<Numeric> MidLine;    //中间线

   Numeric Band;

   series<Numeric> ma1;

   series<Numeric> ma2;

   series<Numeric> ma3;

   series<Bool> CrossUp;

   series<Bool> CrossDown;

   series<Bool> CrossUp1;

   series<Bool> CrossDown1;

  Numeric MACDDiff;

   Numeric AvgMACD;

   Numeric MACDValue; //此处添加变量

//此处添加变量


Defs

   //此处添加策略函数

   

Events

   OnReady()

   {

       Range[0:DataSourceSize() - 1]

       {

           setPlotOption("MACDDiff", "begin-bar", SlowLength);

           setPlotOption("MACDDEA", "begin-bar", SlowLength + MACDLength);

           setPlotOption("MACD", "begin-bar", SlowLength + MACDLength);

       }

   }//此处实现事件函数

   

   //初始化事件函数,策略运行期间,首先运行且只有一次

   OnInit()

   {SetBackBarMaxCount(1+Length);

       Range[0:DataSourceSize() - 1]

       {

           setPlotOption("MidLine", "begin-bar", Length);

           setPlotOption("UpLine", "begin-bar", Length);

           setPlotOption("DownLine", "begin-bar", Length);

       }

       

   }

     


   //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组

   OnBar(ArrayRef<Integer> indexs)

   {Range[0:DataSourceSize() - 1]

     

       {

           MidLine = AverageFC(Close, Length);

           Band = StandardDev(Close, Length, 2);

           UpLine = MidLine + Offset * Band;

           DownLine = MidLine - Offset * Band;

           PlotNumeric("UpLine", UpLine);

           PlotNumeric("DownLine", DownLine);

           PlotNumeric("MidLine", MidLine);

       }

       ma1=Average(Close,length1);

       ma2=Average(Close,length2);

       ma3=Average(Close,length3);

       PlotNumeric("ma1", ma1);

       PlotNumeric("ma2", ma2);

       PlotNumeric("ma3", ma3);

       CrossUp = CrossOver(ma1[1],MidLine[1]) ;

   CrossUp1 = CrossOver(ma1[1],MidLine[1]) ;    

   CrossDown = CrossUnder(ma1[1],MidLine[1]) ;

   CrossDown1 = CrossUnder(ma1[1],MidLine[1]) ;

   Range[0:DataSourceSize() - 1]

       {

           MACDDiff = XAverage( Close, FastLength ) - XAverage( Close, SlowLength ) ;    

           AvgMACD = XAverage(MACDDiff,MACDLength);

           MACDValue = 2 * (MACDDiff - AvgMACD);

           PlotNumeric("MACDDiff",MACDDiff);

           PlotNumeric("MACDDEA",AvgMACD);

           If (MACDValue >= 0)    

               PlotAuto("MACD",MACDValue,0,Color9(),Enum_Bar);

           Else

               PlotAuto("MACD",MACDValue,0,Color10(),Enum_Bar);

           PlotNumeric("零线",0);      

       }

   If(CrossUp And MarketPosition<>1  And ma2[1]>=ma3[1] )

       {

          Buy(Lots,Open);

       }

   If( CrossDown1 And MarketPosition==1 )

       Sell(0,Open);

       

    If(CrossDown And MarketPosition<>-1  And ma2[1]<=ma3[1] )

       

       SellShort(Lots,open);

       

   If(CrossUp1 And MarketPosition==-1 )

       

      BuyToCover(0,Open);  

       

   }

   

主副图上画线等问题
设置主图指标,为什么显示在副图
同时显示在主图和副图?
主图与副图
代码错在哪里?StandardDev和SMA函数。
求帮看下,信号消失是哪里出问题了
我这个commentary代码错在哪里?编译一直无法通过,提示“无法识别的字符串commentary”
我的程序错在什么地方?
信号闪烁 老师帮看下问题在哪里
请老师帮忙看下,代码问题出在哪里哦

定义画笔。

可以看一下视频:https://video.tbquant.net/video?id=video408

厉害

谢谢 看完你推荐的视频,已解决问题