|
|
【飞狐】缺口跟踪
fh:=h;fl:=l;
( V5 B* f+ }& R$ _% i$ U# o& I3 Yfor p=datacount-1 downto 1 do begin
1 y# \& P" V9 K: Z) V/ j8 Q if fh[p]<fh[p+1] then: ]' \2 Y: g5 F; e0 @3 U" X
fh[p]:=fh[p+1];% ?) B/ _) j/ Y
if fl[p]>fl[p+1] then- t( P" u8 d2 J* I$ R+ U! i
fl[p]:=fl[p+1];$ b) F* X* e( A, O! i! I& `- }7 R
end;
1 Y4 U1 A) W# P( |; M- Nqk:=l>ref(h,1)OR H<ref(L,1);! I% B9 h' z* F. l$ o9 y5 k
G:=IF(l>ref(h,1),L,IF(H<ref(L,1),ref(L,1),0));
" ~ X4 c( w6 FD:=IF(l>ref(h,1),ref(H,1),IF(H<ref(L,1),H,0));
& U$ k$ B& o! |: yS:=IF(l>ref(h,1),2,IF(H<ref(L,1),1,0));
" v4 v( \% P+ _, j ~tj:=s=2 and fL<=G AND fL>=D OR s=1 and fH<G AND fH>=D ;
7 t! v3 H5 A$ w: t) Mw:=BARSSINCE(BACKSET(BARSTATUS=2,BARSLAST(TJ*BARPOS=BARPOS)+1))+1;
" K- e! j1 ^* y+ A9 ~. j5 y/ j8 u0 hDD:=DATE;: p1 ^6 |) ?& l& N: O2 l
最近缺口日:REF(DD,W-1)+19000000,LINETHICK0,COLORAAFF33;" Q( k+ i2 z* l) K- j8 `; g e2 D( ~: J
S1:=IF(ref(S,W-1)=2,ref(fL,w-1),IF(ref(S,W-1)=1,ref(fH,w-1),0));
3 ?( F; V1 r" [* F4 rS2:=IF(ref(S,W-1)=2,ref(D,w-1),IF(ref(S,W-1)=1,ref(G,w-1),0));
7 n9 n% O) D: F( t- L, z' sA:=MAX(S1,S2);
( a/ h2 r4 V4 X" N( _0 JB:=MIN(S1,S2);# p4 }$ H3 q3 [4 D$ C% W
缺口:B[datacount],COLORWHITE,LINETHICK,,PRECISION2;
" r' L( ?; {+ m→:A[datacount],COLORWHITE,LINETHICK,PRECISION2;8 q. ^% |( r9 B
STICKLINE(w,S1,S2,15,0),COLORGRAY;6 y9 {! v! o# V# C$ }# D/ u
DRAWTEXT(BARSTATUS=2,A,NUMTOSTR(B,2)+'-'+NUMTOSTR(A,2)),COLOR0099CC,ALIGN2;{显示缺口数字 可删除}
, W7 ]# Y; ~ D$ k* W$ S) ?hh:=h;LL:=L;DD:=DATE;
0 i: K) [, X0 V+ C) s2 a6 |gb:=SYSPARAM(1);5 T: I5 n: f' I" v6 {
上突缺口:=LOW>REF(HIGH,1),COLOR00EEFF,LINETHICK0;
9 d" Q- Q5 v2 p下突缺口:=HIGH<REF(LOW,1),COLOREE9933,LINETHICK0;
( b( J" D4 R( m. eXQS:=ubound(下突缺口),LINETHICK0;
! U& E6 O' Z2 }6 y0 k, ]s1:=SUMBARS(上突缺口,1);+ \' j& {0 B9 \6 O
s2:=SUMBARS(上突缺口,2);1 L/ I) L5 H/ s! y3 `7 |3 m
x1:=SUMBARS(下突缺口,1);
% C. H+ h+ ` U0 R bx2:=SUMBARS(下突缺口,2);9 g, O( h3 X: u; R. W
上突位置1:=gb-s1[gb]+1,LINETHICK0;
; m6 M6 F/ P9 U: l8 r' g. I下突位置1:=gb-x1[gb]+1,LINETHICK0;
) M' X: v6 b gDRAWTEXT(下突缺口,h,'△'),COLOREE9933,PXUP15,ALIGN0;' }* d9 c+ V) G% a& W1 l( A4 f9 N
DRAWTEXT(下突缺口,ref(l,1),'▽'),COLOREE9933,ALIGN0;
! j. B3 H% _, K8 T- h r; W/ qDRAWTEXT(上突缺口,l,'▽'),COLOR00EEFF,ALIGN0;
9 A h3 L" r R YDRAWTEXT(上突缺口,ref(h,1),'△'),COLOR00EEFF,PXUP15,ALIGN0;
7 q. D) O0 c, GXQ1:=LL[下突位置1-1];
; X" @+ g4 j; W `XQD:=DD[下突位置1];/ q1 Y5 d* i" D
BXQ:=COUNT(RANGE(BARPOS,下突位置1,XQS) AND HH>XQ1,XQS-下突位置1)=1;
) l: E. z) R* r. i$ L* c1 w: UBXQ:=FILTER(BXQ,XQS-下突位置1);/ B. Z% f$ d: Z! ^# p) F+ K2 S- l
SQ1:=HH[上突位置1-1];3 b% B! x: M2 b+ }
SQD:=DD[上突位置1];
2 d" h4 c$ K& q2 q) h( a上缺日:IF(XQD<SQD,SQD+19000000,0),LINETHICK0,COLOR00EEFF; b+ [( W( f* o8 N
下缺日:IF(SQD<XQD,XQD+19000000,0),LINETHICK0,COLOREE9933;
! k! ]( R3 `% _* _$ oBSQ:=COUNT(RANGE(BARPOS,上突位置1,XQS) AND LL<SQ1,XQS-上突位置1)=1;BSQ:=FILTER(BSQ,XQS-上突位置1);7 m, P4 F3 l! N: K
DRAWTEXT(BSQ,(o+c)/2,' \n 补'+STRRIGHT(NUMTOSTR(SQD,0),6)+'\n 上突缺口\n '+numtostr(SQ1,2)),COLORFF99FF;
: k9 t+ [* O6 q1 a* H% fDRAWTEXT(BSQ,SQ1,'←'),ALIGN0,COLOR00EEEE;
* x' P7 q: A+ ^" VDRAWTEXT(BXQ,(o+c)/2,' \n 补'+STRRIGHT(NUMTOSTR(XQD,0),6)+'\n 下突缺口\n '+numtostr(XQ1,2)),COLOREEEE66;
3 D `' ~- p" C8 `! \DRAWTEXT(BXQ,XQ1,'←'),ALIGN0,COLOR00EEEE;$ C2 e& V1 v1 y# m( g+ j3 v
// |
评分
-
1
查看全部评分
-
|