|
|
【飞狐】缺口跟踪
fh:=h;fl:=l;9 H4 y( M2 f: u H7 c o3 }' E
for p=datacount-1 downto 1 do begin
& K1 ~3 U# U; h ~ if fh[p]<fh[p+1] then' c: f2 u8 }% o
fh[p]:=fh[p+1];
* S6 ]& z* r/ ~8 Z Y& d; D if fl[p]>fl[p+1] then
8 Z6 c$ @! }! Q5 ~, Z* T6 z) s9 } fl[p]:=fl[p+1];
8 T0 l: `# }) m7 [9 V4 `% Bend;8 b8 h. @+ l1 q7 T1 I
qk:=l>ref(h,1)OR H<ref(L,1);
1 |0 y; U) W7 w' U% b# _G:=IF(l>ref(h,1),L,IF(H<ref(L,1),ref(L,1),0));* y2 L; s- q: `: R. ~& f
D:=IF(l>ref(h,1),ref(H,1),IF(H<ref(L,1),H,0));
! M: Q7 o9 d* G& A- nS:=IF(l>ref(h,1),2,IF(H<ref(L,1),1,0));# B3 T; a+ @0 v7 S- v( n0 @
tj:=s=2 and fL<=G AND fL>=D OR s=1 and fH<G AND fH>=D ;3 S4 B% `4 J4 q, s+ W, Z
w:=BARSSINCE(BACKSET(BARSTATUS=2,BARSLAST(TJ*BARPOS=BARPOS)+1))+1;
7 h2 ? P! s: A0 C: m( _DD:=DATE;7 A% z3 R- W$ U+ k" X: ]
最近缺口日:REF(DD,W-1)+19000000,LINETHICK0,COLORAAFF33;
5 k* K! `- Y" O/ jS1:=IF(ref(S,W-1)=2,ref(fL,w-1),IF(ref(S,W-1)=1,ref(fH,w-1),0));
. Z; a a* @6 S/ `* n9 IS2:=IF(ref(S,W-1)=2,ref(D,w-1),IF(ref(S,W-1)=1,ref(G,w-1),0));0 K; R& ?- n* U* i
A:=MAX(S1,S2);' b% g0 r& @9 j$ E, t1 a
B:=MIN(S1,S2);3 b, R9 _ O) B* R0 b! N/ l K
缺口:B[datacount],COLORWHITE,LINETHICK,,PRECISION2;5 ^* G1 @ g9 x4 j/ u
→:A[datacount],COLORWHITE,LINETHICK,PRECISION2;, C ^8 H( k* Q& k' U! T# d" c
STICKLINE(w,S1,S2,15,0),COLORGRAY;
~% ]8 E8 l8 o; C# M" h. K) nDRAWTEXT(BARSTATUS=2,A,NUMTOSTR(B,2)+'-'+NUMTOSTR(A,2)),COLOR0099CC,ALIGN2;{显示缺口数字 可删除}
: l d X* h0 Q. ahh:=h;LL:=L;DD:=DATE;
" m0 D1 G. h( s) o2 \0 Wgb:=SYSPARAM(1);. Q0 k( B2 s* _4 L5 B! @
上突缺口:=LOW>REF(HIGH,1),COLOR00EEFF,LINETHICK0;6 S! u4 ~( L) j- l
下突缺口:=HIGH<REF(LOW,1),COLOREE9933,LINETHICK0;& a! r6 ]" p4 ^: U
XQS:=ubound(下突缺口),LINETHICK0;4 h( H( o" l! `4 Z5 u- V% R
s1:=SUMBARS(上突缺口,1);
! h5 ~4 ] G" Q0 u: v. rs2:=SUMBARS(上突缺口,2);4 M ]6 c$ b8 z5 @8 K T9 a
x1:=SUMBARS(下突缺口,1);
- S8 j/ g/ ?! q9 C4 O. fx2:=SUMBARS(下突缺口,2);& I9 s) x$ Y2 n4 E8 X4 N, f; c4 u
上突位置1:=gb-s1[gb]+1,LINETHICK0;" _ X, w/ P+ `: a. }$ B9 _ p
下突位置1:=gb-x1[gb]+1,LINETHICK0;
: S& [6 Y$ J. M! J* jDRAWTEXT(下突缺口,h,'△'),COLOREE9933,PXUP15,ALIGN0;
& U7 v! `7 ]/ @( K# qDRAWTEXT(下突缺口,ref(l,1),'▽'),COLOREE9933,ALIGN0;
" |2 p4 H8 x" Z; L! _/ T) N; }* q {( fDRAWTEXT(上突缺口,l,'▽'),COLOR00EEFF,ALIGN0; B6 }: l# K' |( J
DRAWTEXT(上突缺口,ref(h,1),'△'),COLOR00EEFF,PXUP15,ALIGN0;+ U' O, H* z7 B
XQ1:=LL[下突位置1-1];9 B& f) R: x, o. l' F: K: w* X# l
XQD:=DD[下突位置1];( X% i2 W c. c/ `
BXQ:=COUNT(RANGE(BARPOS,下突位置1,XQS) AND HH>XQ1,XQS-下突位置1)=1;/ T. [3 O- F% w- D) r% M! k
BXQ:=FILTER(BXQ,XQS-下突位置1);
* p7 j- ?# `. V: `4 rSQ1:=HH[上突位置1-1];
& Q( i; B& x5 nSQD:=DD[上突位置1];
" F" f& \+ O+ t2 j8 ~6 a上缺日:IF(XQD<SQD,SQD+19000000,0),LINETHICK0,COLOR00EEFF;9 n, I: I3 G" W0 J4 G* S
下缺日:IF(SQD<XQD,XQD+19000000,0),LINETHICK0,COLOREE9933;* Z: ~: @9 z( n+ b+ u1 Z
BSQ:=COUNT(RANGE(BARPOS,上突位置1,XQS) AND LL<SQ1,XQS-上突位置1)=1;BSQ:=FILTER(BSQ,XQS-上突位置1);
% N5 h4 ?$ j8 Z( R7 qDRAWTEXT(BSQ,(o+c)/2,' \n 补'+STRRIGHT(NUMTOSTR(SQD,0),6)+'\n 上突缺口\n '+numtostr(SQ1,2)),COLORFF99FF;
* _" B) `+ k+ yDRAWTEXT(BSQ,SQ1,'←'),ALIGN0,COLOR00EEEE;
. F8 m i8 r0 N8 l9 YDRAWTEXT(BXQ,(o+c)/2,' \n 补'+STRRIGHT(NUMTOSTR(XQD,0),6)+'\n 下突缺口\n '+numtostr(XQ1,2)),COLOREEEE66;
- F6 c. t R, g! }DRAWTEXT(BXQ,XQ1,'←'),ALIGN0,COLOR00EEEE;
# B, v( f/ g8 T; ?$ F// |
评分
-
1
查看全部评分
-
|