连续判断是不是有什么缺陷错误

ParamsVars Plot plt_line5;   Series<Bool> dtpl;    Series<Bool> dtpl1;     Series<Bool> dtpl2;      Series<Bool> dtpl3;         Series<Bool>  ktpl;     Series<Bool>  ktpl1;       Series<Bool>  ktpl2;         Series<Bool>  ktpl3;   Defs   //此处添加策略函数 Events   //此处实现事件函数      //初始化事件函数,策略运行期间,首先运行且只有一次,应用在订阅数据等操作   OnInit()   {plt_line5.figure(0);   }     OnBar(ArrayRef<Integer> indexs){dtpl= ma(c,10)<ma(c,20) and   ma(c,5)<ma(c,10) and ma(c,20)<ma(c,30) ;       if(dtpl==True           )           { plt_line5.icon("多投下", 40, "ICO4");           }          if(  ma(c,5)<ma(c,10)        )           { plt_line5.icon("多投下1", 10, "you");           }           if( ma(c,10)<ma(c,20)  )           { plt_line5.icon("多投下2", 20, "you");           }             if(  ma(c,20)<ma(c,30)    )           { plt_line5.icon("多投下3", 30, "you");           }          ktpl1=ma(c,5)>ma(c,10);     ktpl2=ma(c,10)>ma(c,20) ;    ktpl3= ma(c,20)>ma(c,30);             ktpl= (ma(c,5)>ma(c,10) and ma(c,10)>ma(c,20)  and  ma(c,20)>ma(c,30) );         if(  ktpl1==True  and  ktpl2==true and   ktpl3==True           )              { plt_line5.icon("空投上", 70, "ICO5");    }                      if(   ma(c,5)>ma(c,10)               )              { plt_line5.icon("空投上1", 100, "youshou");    }          if(  ma(c,10)>ma(c,20)              )              { plt_line5.icon("空投上2", 90, "youshou");    }          if(  ma(c,20)>ma(c,30)         )              { plt_line5.icon("空投上3", 80, "youshou");    }   }Params Vars      Plot plt_line5;              Series<Bool> dtpl;     Series<Bool> dtpl1;      Series<Bool> dtpl2;       Series<Bool> dtpl3;            Series<Bool>  ktpl;      Series<Bool>  ktpl1;        Series<Bool>  ktpl2;          Series<Bool>  ktpl3;     Defs    //此处添加策略函数   Events    //此处实现事件函数        OnInit()    {plt_line5.figure(0);    }       OnBar(ArrayRef<Integer> indexs) { dtpl= ma(c,10)<ma(c,20) and   ma(c,5)<ma(c,10) and ma(c,20)<ma(c,30) ;        if(dtpl==True           )             { plt_line5.icon("多投下", 40, "ICO4");             }           if(  ma(c,5)<ma(c,10)        )             { plt_line5.icon("多投下1", 10, "you");             }            if( ma(c,10)<ma(c,20)  )             { plt_line5.icon("多投下2", 20, "you");             }              if(  ma(c,20)<ma(c,30)    )             { plt_line5.icon("多投下3", 30, "you");             }             ktpl1=ma(c,5)>ma(c,10);      ktpl2=ma(c,10)>ma(c,20) ;     ktpl3= ma(c,20)>ma(c,30);                 ktpl= (ma(c,5)>ma(c,10) and ma(c,10)>ma(c,20)  and  ma(c,20)>ma(c,30) );           if(  ktpl1==True  and  ktpl2==true and   ktpl3==True           )                { plt_line5.icon("空投上", 70, "ICO5");     }        if(   ma(c,5)>ma(c,10)               )                { plt_line5.icon("空投上1", 100, "youshou");     }           if(  ma(c,10)>ma(c,20)              )                { plt_line5.icon("空投上2", 90, "youshou");     }           if(  ma(c,20)>ma(c,30)         )                { plt_line5.icon("空投上3", 80, "youshou");     } }正确情况下 上面的要都都有图才会出现绿色箭头 下面的也是需要3层都有图才出现红色箭头  但是 上面有的不满足条件就出现绿色箭头 下面满足条件却没有出现红色箭头

您好,应该是序列函数问题。 Vars Plot plt_line5; Series<Bool> dtpl; Series<Bool> dtpl1; Series<Bool> dtpl2; Series<Bool> dtpl3; Series<Bool> ktpl; Series<Bool> ktpl1; Series<Bool> ktpl2; Series<Bool> ktpl3; Defs Events OnInit() { plt_line5.figure(0); } OnBar(ArrayRef<Integer> indexs) { Numeric ma5 = ma(c, 5); Numeric ma10 = ma(c, 10); Numeric ma20 = ma(c, 20); Numeric ma30 = ma(c, 30); dtpl = ma10 < ma20 and ma5 < ma10 and ma20 < ma30; if(dtpl == True) { plt_line5.icon("多投下", 40, "ICO4"); } if(ma5 < ma10) { plt_line5.icon("多投下1", 10, "you"); } if(ma10 < ma20) { plt_line5.icon("多投下2", 20, "you"); } if(ma20 < ma30) { plt_line5.icon("多投下3", 30, "you"); } ktpl1 = ma5 > ma10; ktpl2 = ma10 > ma20; ktpl3 = ma20 > ma30; ktpl = ma5 > ma10 and ma10 > ma20 and ma20 > ma30; if(ktpl1 and ktpl2 and ktpl3) { plt_line5.icon("空投上", 70, "ICO5"); } if(ma5 > ma10) { plt_line5.icon("空投上1", 100, "youshou"); } if(ma10 > ma20) { plt_line5.icon("空投上2", 90, "youshou"); } if(ma20 > ma30) { plt_line5.icon("空投上3", 80, "youshou"); } }

回复:好的谢谢