|
|
【飞狐】缺口跟踪
fh:=h;fl:=l;
- J2 _$ c& R) h0 i/ t7 sfor p=datacount-1 downto 1 do begin
/ `5 D6 |5 B! T. C if fh[p]<fh[p+1] then
- g( k. t5 T, d3 p fh[p]:=fh[p+1];
2 n! E/ v2 R1 V3 m" ?" p if fl[p]>fl[p+1] then
( c( W. [- l; l7 ]' `3 e. X fl[p]:=fl[p+1];
; p0 k6 S5 I7 }6 l+ {; V3 yend;4 l. b# c9 i# Y0 x- I: ^
qk:=l>ref(h,1)OR H<ref(L,1);! p" S! @# X) G3 v) L
G:=IF(l>ref(h,1),L,IF(H<ref(L,1),ref(L,1),0));$ ]2 y- r0 V ]: y8 S# Y
D:=IF(l>ref(h,1),ref(H,1),IF(H<ref(L,1),H,0));5 @% X i/ B5 {7 k0 {7 |
S:=IF(l>ref(h,1),2,IF(H<ref(L,1),1,0));
) m2 i4 t! E( C6 [tj:=s=2 and fL<=G AND fL>=D OR s=1 and fH<G AND fH>=D ;; @) ] g* q; O8 S, }! x
w:=BARSSINCE(BACKSET(BARSTATUS=2,BARSLAST(TJ*BARPOS=BARPOS)+1))+1;9 s1 Q6 b# ?) g
DD:=DATE;
7 n, Y9 O" V# j2 T2 ]最近缺口日:REF(DD,W-1)+19000000,LINETHICK0,COLORAAFF33;
9 {8 J4 A7 M0 R4 F: IS1:=IF(ref(S,W-1)=2,ref(fL,w-1),IF(ref(S,W-1)=1,ref(fH,w-1),0));0 A7 Y5 o, R* ^. M3 l9 Q6 k7 f
S2:=IF(ref(S,W-1)=2,ref(D,w-1),IF(ref(S,W-1)=1,ref(G,w-1),0));( G5 v( B$ n; D! Z( h" P
A:=MAX(S1,S2);3 A s0 q7 B. ^4 w- q
B:=MIN(S1,S2);
, Y$ B) v c% \3 L+ B. Z. F* q* C缺口:B[datacount],COLORWHITE,LINETHICK,,PRECISION2;
, m r5 J8 s2 r; X/ f→:A[datacount],COLORWHITE,LINETHICK,PRECISION2;, z; L6 Y+ U! _* G3 l: M& J
STICKLINE(w,S1,S2,15,0),COLORGRAY;9 H0 F- p, a0 k2 C/ v" s; H
DRAWTEXT(BARSTATUS=2,A,NUMTOSTR(B,2)+'-'+NUMTOSTR(A,2)),COLOR0099CC,ALIGN2;{显示缺口数字 可删除}
* A+ ~) x/ B) P' L" Hhh:=h;LL:=L;DD:=DATE;& L8 u9 w u, V. E
gb:=SYSPARAM(1);1 P }8 x' Y8 L7 T1 P
上突缺口:=LOW>REF(HIGH,1),COLOR00EEFF,LINETHICK0;
' }2 U3 G, {1 M( n, N下突缺口:=HIGH<REF(LOW,1),COLOREE9933,LINETHICK0;. X3 u/ z" G8 G8 K8 O, i* G- m4 f
XQS:=ubound(下突缺口),LINETHICK0;
0 ?0 g. @2 ?: F. z) v: ss1:=SUMBARS(上突缺口,1);# L1 r M H% v8 }" L2 e' z
s2:=SUMBARS(上突缺口,2);- p" F# I3 e# n6 D. B S2 S
x1:=SUMBARS(下突缺口,1);" ~ T. t$ `; U6 `( j) w8 o
x2:=SUMBARS(下突缺口,2);' O7 v9 a' a$ F H; I( h! ?
上突位置1:=gb-s1[gb]+1,LINETHICK0;
& v2 ?* c2 m h' e% }7 i1 z; [ L下突位置1:=gb-x1[gb]+1,LINETHICK0;0 \6 b6 L4 C0 f; E+ N- J
DRAWTEXT(下突缺口,h,'△'),COLOREE9933,PXUP15,ALIGN0;
2 z/ Q! p3 f. ^, h) dDRAWTEXT(下突缺口,ref(l,1),'▽'),COLOREE9933,ALIGN0;
: c I& e: @5 l5 v8 s3 [! lDRAWTEXT(上突缺口,l,'▽'),COLOR00EEFF,ALIGN0;5 ?% x& E7 _' {7 P& o8 L2 d4 k; K
DRAWTEXT(上突缺口,ref(h,1),'△'),COLOR00EEFF,PXUP15,ALIGN0;; S" o3 F: a; a9 ^
XQ1:=LL[下突位置1-1];
4 }% Z2 [' w+ k# {XQD:=DD[下突位置1];
; F1 c) B4 }9 j% o0 f5 F2 pBXQ:=COUNT(RANGE(BARPOS,下突位置1,XQS) AND HH>XQ1,XQS-下突位置1)=1;3 F! b9 s$ Y# a- N+ o, I8 }& w
BXQ:=FILTER(BXQ,XQS-下突位置1);) n! I$ J/ Z3 g- f* G/ e/ S& m! ~+ x L9 i
SQ1:=HH[上突位置1-1];) U+ t* g( D& G# G
SQD:=DD[上突位置1];4 r) L2 d8 \; t) L1 c6 ~+ K3 l
上缺日:IF(XQD<SQD,SQD+19000000,0),LINETHICK0,COLOR00EEFF;/ P. e" p' q- N5 f4 y$ Q
下缺日:IF(SQD<XQD,XQD+19000000,0),LINETHICK0,COLOREE9933;% v; p# Y3 A) m; {$ Y5 _
BSQ:=COUNT(RANGE(BARPOS,上突位置1,XQS) AND LL<SQ1,XQS-上突位置1)=1;BSQ:=FILTER(BSQ,XQS-上突位置1);
9 m/ {$ T! ^- y( ~ Z) ODRAWTEXT(BSQ,(o+c)/2,' \n 补'+STRRIGHT(NUMTOSTR(SQD,0),6)+'\n 上突缺口\n '+numtostr(SQ1,2)),COLORFF99FF;1 P, ~3 I; R# A
DRAWTEXT(BSQ,SQ1,'←'),ALIGN0,COLOR00EEEE;, H& v' m0 t+ j2 Q0 c
DRAWTEXT(BXQ,(o+c)/2,' \n 补'+STRRIGHT(NUMTOSTR(XQD,0),6)+'\n 下突缺口\n '+numtostr(XQ1,2)),COLOREEEE66;
; `, Q, g- Y( D, C- N3 y& {/ tDRAWTEXT(BXQ,XQ1,'←'),ALIGN0,COLOR00EEEE;
( R# ^! g% C. J2 N// |
评分
-
1
查看全部评分
-
|