通达信的,不通达信有没有循环语句,能不能改成,无论能改不能改先谢看贴的朋友!
if datacount<3 then exit;
HH:=H;
LL:=L;
cc:=c;
pL:=LL[datacount];
pH:=HH[datacount]; // 我觉得应这样写,1楼原公式写的 是pH:=0。 你可以再改回来。
tk:=if(L>ref(c,1),1,if(h<ref(c,1),-1,0));
for i=datacount-1 downto 2 do begin
if LL[i ]<pL then pL:=LL [i ];
if HH[i ]>pH then pH:=hh [i ];
if tk[i ]=1 and pL<=cc[i-1] then tk [i ]:=0;
if tk[i ]=-1 and pH>=cc[i-1] then tk [i ]:=0;
end;
DRAWTEXT(tk=1,L-(L-ref(h,1))/2,' 未补'),linethick2,COLORmagenta,ALIGN1;
DRAWTEXT(tk=-1,h+(ref(L,1)-h)/2,'未补 '),COLORgreen,linethick2,ALIGN1 ;
DRAWSL(tk=1,REF(c,1),0,0,0)COLOR003c76;
DRAWSL(tk=1,L,0,0,0)COLOR003c76;
DRAWSL(tk=-1,REF(c,1),0,0,0)COLOR3F433E;
DRAWSL(tk=-1,h,0,0,0)COLOR3F433E;
BQ:=IF((SYSPARAM(1) = (BARSSINCE((C > 0)) + 1)),1,0);
BQ1:=(H<REF(c,1));BQ2:=(L>REF(c,1));
BQ3:=REF(c,1)-H; BQ4:=L-REF(c,1);
BQ5:=REF(c,1);
BQ7:=REF(c,1);
DRAWTEXT(((BQ > 0) AND Bq1),H,'↓缺口 '+'\n '+NUMTOSTR(BQ3[SYSPARAM(1)],2)+' '+'\n '+NUMTOSTR(BQ5[SYSPARAM(1)],2)+'-'+NUMTOSTR(hh[SYSPARAM(1)],2)+' '),colorred,pxdn10,ALIGN2;
DRAWTEXT(((BQ > 0) AND Bq2),L,'↑缺口 '+'\n '+NUMTOSTR(BQ4[SYSPARAM(1)],2)+' '+'\n '+NUMTOSTR(BQ7[SYSPARAM(1)],2)+'-'+NUMTOSTR(LL[SYSPARAM(1)],2)+' '),coloryellow,pxup20,ALIGN2;
以下是飞狐的缺口公式,哪位高手能改成楼主 |
2楼 |