您现在的位置:程序化交易>> 期货公式>> 交易开拓者(TB)>> 开拓者知识>>正文内容

大神帮我看看这段代码为什么曲线显示有问题 [开拓者 TB]

  • 咨询内容: 各位大侠,请帮忙看看我这段代码为什么三条曲线显示不正确,当注释掉第二段循环的时候,5分钟周期上曲线可以显示,其它周期上曲线显示不正确。当不注释掉第二段循环的时候,任何周期上曲线都显示不正确。当然我也通过逐段注释代码来找问题。基本定位到“If (Date==Date[i])”这句代码上,但是不明白问什么出错,请各位帮忙看看。

    Params
        Numeric numLength1(60);
            Numeric numLength2(15);
            Numeric numLength3(5);
           
    Vars
        NumericSeries nusMA1;
            NumericSeries nusMA2;
            NumericSeries nusMA3;
            Bool blnEndLoop(False);
            Numeric numCount(0);
            Numeric i(0);

    Begin
            numCount=BarCount();
           
            nusMA1 = AverageFC(Close,numLength1);
            nusMA2 = AverageFC(Close,numLength2);
            nusMA3 = AverageFC(Close,numLength3);
           
            PlotNumeric("MA60",nusMA1);
        PlotNumeric("MA15",nusMA2);
        PlotNumeric("MA5",nusMA3);
           
            If (MarketPosition==0)
            {
                    If (nusMA3[1]>nusMA2[1] And nusMA2[1]>nusMA1[1] And nusMA3[1]>nusMA1[1])
                    {
                            blnEndLoop=False;
                            i=0;
                            While (blnEndLoop==False)
                            {
                                    If (Date==Date[i])
                                    {
                                           
                                    }Else
                                    {
                                            blnEndLoop=True;
                                    }
                                    i=i+1;
                                    If (i>=numCount-1)
                                    {
                                            blnEndLoop=True;
                                    }
                            }
                    }

                    If (nusMA3[1]<nusMA2[1] And nusMA2[1]<nusMA1[1] And nusMA3[1]<nusMA1[1])
                    {
                            blnEndLoop=False;
                            i=0;
                            While (blnEndLoop==False)
                            {
                                    If (Date==Date[i])
                                    {
                                   
                                    }Else
                                    {
                                            blnEndLoop=True;
                                    }
                                    i=i+1;
                                    If (i>=numCount-1)
                                    {
                                            blnEndLoop=True;
                                    }
                            }
                    }
            }
    End

     

  • TB技术人员: 自己顶一下,高手能否帮忙解答一下

     

  • TB客服: 大侠都消失了?

     

  • 网友回复: 大神没来,我已修炼成神,已解决

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 1145508240  有需要帮忙请点击这里留言!!!进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容