指标编写学习论坛

标题: 这公式无法适用于指数怎么改? [打印本页]

作者: admin    时间: 2016-5-7 12:29
标题: 这公式无法适用于指数怎么改?
hsl:=if(capital=0,VOL/sum(VOL,100),VOL/capital);{换手率}
     if capital=0 then begin
     hsl:=VOL/sum(VOL,100);
     a:=setlbound(hsl,1);
     for i=1 to min(100-1,datacount) do hsl:=0;
    end;
     ljhs3[1]:=hsl[1];
     cyc3[1]:=mid[1];
     dd:=mid[1]*(barpos<100);
     for i=lbound(hsl)+1 to datacount do begin
        ljhs3:=ljhs3[i-1]*(1-hsl)*(34-1)/34+hsl;
        cyc3mid*hsl+cyc3[i-1]*ljhs3[i-1]*(1-hsl)*(34-1)/34)/ljhs3+dd;
     end;
正确答案:
       可以这样代入原公式
       mid:=( "1a0001$open"+"1a0001$CLOSE")/2; {均价}
       vola:= "1a0001$vol";
       VOL - - - >vola
         但是指数无capital值,所这公式无法适用于指数
正确答案:
         这样或许好些
        mid:=(o+C)/2; {均价}
        t:=if(BARPOS<100,BARPOS,100);
        hsl:=if(capital=0,V/sum(V,t),V/capital);{换手率}
           if capital=0 then begin
           hsl:=V/sum(V,t);
           for i=1 to min(100-1,SYSPARAM(3)) do hsl:=0;
         end;
         ljhs3[1]:=hsl[1];
         cyc3[1]:=mid[1];
         dd:=mid[1]*(barpos<2);
         for i=2 to datacount do begin
           ljhs3:=ljhs3[i-1]*(1-hsl)*(34-1)/34+hsl;
           cyc3mid*hsl+cyc3[i-1]*ljhs3[i-1]*(1-hsl)*(34-1)/34)/ljhs3+d;
         end;

         另建公式
         STKINDI('1A0001','cyc.cyc3',0,6);






欢迎光临 指标编写学习论坛 (http://www.shgm.net/) Powered by Discuz! X3.2