为什么我代码写的很清楚开盘价在上轨上或下轨下禁止开仓 加载策略却屡次在布林带轨道外开仓呢?

为什么我代码写的很清楚开盘价在上轨上或下轨下禁止开仓  加载策略却屡次在布林带轨道外开仓呢?这个问题怎么解决 请老师指教


Range [0:0]

{

    //计算均线

            If(Length1 > 0) MA5 = AverageFC(Close, Length1);    

            If(Length2 > 0) MA10 = AverageFC(Close, Length2);  

           

            PlotNumeric("MA5", MA5);

            PlotNumeric("MA10", MA10);

           

            // 计算布林带(简单移动平均)

            MiddleBand = Average(Close, Length);

            StdDev = StandardDev(Close, Length, 2);// 计算标准差            

            UpperBand = MiddleBand + Width * StdDev;// 计算布林上轨

            LowerBand = MiddleBand - Width * StdDev;// 计算布林下轨

           

            PlotNumeric("data[0].MiddleBand", data[0].MiddleBand);

            PlotNumeric("data[0].UpperBand", data[0].UpperBand);

            PlotNumeric("data[0].LowerBand", data[0].LowerBand);                


           data[0].bld1sk = data[0].MA5[1]>data[0].MA5[2] and data[0].Open<data[0].UpperBand;

           data[0].bld1xk = data[0].MA5[1]<data[0].MA5[2] and data[0].Open>data[0].LowerBand;                              

                                                                                         

           finalCondB = data[0].bld1sk and data[1].bldsk;

           finalCondS = data[0].bld1xk and data[1].bldxk;      

       

               

       // ============ ============ ============  开多仓& 开空仓 ============ ============ ============

       

         If(MarketPosition == 0 and finalCondB)

            {

                Buy(Lots, Open);

                my_lentry_price = Open;

            }

          Else If(MarketPosition == 0 and finalCondS)

            {

               SellShort(Lots, Open);

               my_sentry_price = Open;

            }                                                      

  }

//5分钟图层

Range [1:1]

{

    //计算均线

            If(Length1 > 0) data[1].MA5 = AverageFC(Close, Length1);    

            If(Length2 > 0) data[1].MA10 = AverageFC(Close, Length2);    

           

            // 计算布林带(简单移动平均)

            data[1].MiddleBand = Average(Close, Length);

            data[1].StdDev = StandardDev(Close, Length, 2);// 计算标准差            

            data[1].UpperBand = data[1].MiddleBand + Width * data[1].StdDev;// 计算布林上轨

            data[1].LowerBand = data[1].MiddleBand - Width * data[1].StdDev;// 计算布林下轨

           

            PlotNumeric("data[1].MiddleBand", data[1].MiddleBand);

            PlotNumeric("data[1].UpperBand", data[1].UpperBand);

            PlotNumeric("data[1].LowerBand", data[1].LowerBand);


            data[1].bldsk = data[1].MA5[1]>data[1].MA5[2] and data[1].Open<data[1].Upperband;

            data[1].bldxk = data[1].MA5[1]<data[1].MA5[2] and data[1].Open>data[1].Lowerband;

           }

在5根K线内下破过布林下轨(上破布林上轨)如何表达
模式策略如何禁止反向开仓
请教各位大神,我的策略在模拟盘里能够开仓平仓,但是在实盘不会开仓,怎么回事?
分享:TBQ3均值回归策略(布林带边界突破、RSI超买超卖和成交量确认三重过滤)
为什么智大领峰大参数的布林带指标计算画线结果如此奇怪
上下轨标记赋值
必须重启一下才开仓
怎么样才能:在均线金叉的时候订按布林线下轨作基准价订阅对应的期权
建议给各种运行状态加上在轨数量显示
为什么开没有触发下轨就开仓了