开拓者期货期权程序化系统交易论坛

标题: 关于FOR语句的基本用法求教 [打印本页]

作者: lanhai123    时间: 2012-5-5 18:17:06     标题: 关于FOR语句的基本用法求教


为了学习FOR语句的编写,试着编了下面的指标,不知为何VAR1和VAR2的输出值差别很大,什么地方不对?敬请大侠指教,谢谢!

Params
        Numeric N(3);
       
Vars
    Numeric i;
        Numeric sumvalue(0);
        Numeric var1;
        Numeric var2;
        NumericSeries hhv;
        NumericSeries llv;
        Numeric Value1;
Begin
       
        hhv=Highest(High,10);
        llv=Lowest(Low,10);
   
        var1=((hhv-llv)+(hhv[1]-llv[1])+ (hhv[2]-llv[2]))/3;
       
         sumvalue =0;
          For i = 0 To n-1
        {   
                        value1 =(hhv[i]-llv[i]);
                       
                                  sumvalue = sumvalue + value1;          }       
              
       var2 =sumvalue/3;       

        PlotNumeric(" atr相加=", var1);
        PlotNumeric(" atr循环=", var2);
End
作者: lanhai123    时间: 2012-5-8 07:51:30

几天了,请管理员给解答一下吧!
作者: lanhai123    时间: 2012-5-9 06:37:37

这个问题是不是很难?
作者: lanhai123    时间: 2012-5-9 14:14:17

求教几天后,终于找到一个FOR语句的例子,学习之后,模仿求和公式的写法,加入if 语句排除无效值和死循环的可能性以后,公式终于有了正确一致的显示了!
学习TB又前进了一步!
作者: lanhai123    时间: 2012-5-9 14:17:07

为了感谢各位的帮助,现将改好后的公式贴出来(本人对编程绝对是外行,高手别见笑):


Params
        Numeric N(3);
       
Vars
    Numeric i;
        Numeric j;
        Numeric sumvalue(0);
        Numeric var1;
        Numeric var2;
        NumericSeries hhv;
       
Begin
       
        hhv=Highest(High,10);
        var1=((hhv[1])+ (hhv[2])+ (hhv[0]))/3;
                  
          sumvalue =0;
          j=0;
          For i = 1 To n
        {   
                          If (hhv[j] <> InvalidNumeric){
                       
                                  sumvalue = sumvalue + hhv[j] ;
                                  
                                  j = j + 1;          }                                                  
                                          
               else Break;}
       var2 =sumvalue/3;       

        PlotNumeric(" atr相加=", var1);
        PlotNumeric(" atr循环=", var2);
End

作者: walker2020    时间: 2012-6-27 01:45:11

hhv 和 hhv[0] 可能不一样




欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/) Powered by Discuz! X2