源码
DRAWGBK(1, COLORRGB(100,100,100),COLORRGB(50,50,50),0);
{-----------------------☆功能开关------------------------}
{箱体部分}
cc:=c;
oo:=o;
hh:=h;
ll:=l;
top:=h;
bot:=l;
xx[1]:=1;
kk:=1;
for i=1 to datacount do begin
if xx[i]=1 then begin
top[i]:=hh[i];
end;
if xx[i-1]=1 then begin
if hh[i]>top[i-1] then begin
top[i]:=hh[i];
xx[i]:=1;
end;else begin
top[i]:=top[i-1];
xx[i]:=2;
end;
end;
if xx[i-1]=2 then begin
if hh[i]>top[i-1] then begin
top[i]:=hh[i];
xx[i]:=1;
end;else begin
top[i]:=top[i-1];
bot[i]:=ll[i];
xx[i]:=3;
end;
end;
if xx[i-1]=3 then begin
top[i]:=top[i-1];
if ll[i]<bot[i-1] then begin
bot[i]:=ll[i];
xx[i]:=3;
end;else begin
bot[i]:=bot[i-1];
xx[i]:=4;
end;
end;
if xx[i-1]=4 then begin
top[i]:=top[i-1];
if ll[i]<bot[i-1] then begin
bot[i]:=ll[i];
xx[i]:=3;
end;else begin
bot[i]:=bot[i-1];
xx[i]:=5;
end;
end;
if xx[i-1]=5 then begin
if ll[i]<bot[i-1] or hh[i]>top[i-1] then begin
top[i]:=hh[i];
bot[i]:=hh[i];
xx[i]:=1;
end;else begin
bot[i]:=bot[i-1];
top[i]:=top[i-1];
xx[i]:=5;
end;
end;
end;
for j=1 to datacount do begin
if xx[j]=5 and xx[j-1]=4 then begin
for k=j-1 downto j-kk do begin
top[k]:=top[j];
bot[k]:=bot[j];
end;
end;
if xx[j-1]=5 and xx[j]=1 then kk:=0;
kk:=kk+1;
end;
中位线:=(top+bot)/2;
{信号部分---参考}
买点:=FILTER((TROUGHBARS(3,15,1)<4)=1,3);
卖点:=FILTER((PEAKBARS(3,15,1)<4)=1,3);
{短波--未来}
F:=100*(C-REF(C,1))/REF(C,1);
p1:=IF(C<REF(O,1) AND f<0,1,0);
p3:=IF(C>REF(O,1) AND f>0,1,0);
p2:=IF(C<REF(O,2) AND f<0,1,0);
p4:=IF(C>REF(O,2) AND f>0,1,0);
买D5:=P1=0 AND REF(P1,1)=1 AND P2=0 AND REF(P2,1)=1;
卖D6:=P3=0 AND REF(P3,1)=1 AND P4=0 AND REF(P4,1)=1;
FZ:=PEAK(3,5,1);
FW:=PEAKBARS(3,5,1);
GZ:=TROUGH(3,5,1);
GW:=TROUGHBARS(3,5,1);
AS:=ZIG(3,3);
涨AL:=CROSS(AS,REF(AS,1));
跌AG:=CROSS(REF(AS,1),AS);
Ss1:=IF(FW>GW,FW,0);
Ss2:=IF(FW<GW,GW,0);
Ss3:=BARSLAST(Ss1);
Ss4:=BARSLAST(Ss2);
{-----------------【图解模板】---------------------};
{箱体部分}
PARTLINE(top=ref(top,1),top),Color008293;//箱顶
PARTLINE(bot=ref(bot,1),bot),Color008293;//箱底
STICKLINE((top<>ref(top,1) or bot<>ref(bot,1)) and xx=1 and ref(xx,1)=5,top,bot,1,0),Color008293;//左侧竖线
STICKLINE((top<>refx(top,1) or bot<>refx(bot,1)) and xx=5 and refx(xx,1)=1,top,bot,1,0),Color008293;//右侧竖线
{K线}
STICKLINE(cc>oo,cc,oo,8,1),color5454ff;
STICKLINE(cc>oo,ll,oo,0.9,1),color5454ff;
STICKLINE(cc>oo,hh,cc,0.9,1),color5454ff;
STICKLINE(cc<oo,cc,oo,8,0.5),ColorFFA800;
STICKLINE(cc<oo,hh,ll,0.9,0.5),ColorFFA800;
{信号部分---参考}
{未来}
STICKLINE(买点,L,(O+C)/2,0,0),COLORWHITE; {未来买点}
STICKLINE(买点,C,(O+C)/2,5,0),COLORWHITE; {未来买点}
STICKLINE(卖点,H,(O+C)/2,0,0),COLORYELLOW;{未来卖点}
STICKLINE(卖点,C,(O+C)/2,5,0),COLORYELLOW;{未来卖点}
{短波--未来}
STICKLINE(买D5 and 涨AL,L,(O+C)/2,0,0),COLORWHITE; {未来买}
STICKLINE(买D5 and 涨AL,O,(O+C)/2,5,0),COLORWHITE; {未来买}
STICKLINE(卖D6 and 跌AG,L,(O+C)/2,0,0),Color3EA63E;{未来卖}
STICKLINE(卖D6 and 跌AG,O,(O+C)/2,5,0),Color3EA63E;{未来卖}
{短波--未来--画线写字}
DRAWLINE(FW=0,FZ,GW=0 or ISLASTBAR,REF(FZ,FW),0),Color02A800; //未来--转跌
DRAWLINE(GW=0,GZ,FW=0 or ISLASTBAR,REF(GZ,GW),0),COLORMAGENTA; //未来--转涨
DRAWTEXT(BARPOS=SYSPARAM(2),h,'■上涨第'+NUMTOSTR(Ss4[SYSPARAM(1)],0)+'天'),align4,COLORMAGENTA;//未来
DRAWTEXT(BARPOS=SYSPARAM(2),h,' \n■下跌第'+NUMTOSTR(Ss3[SYSPARAM(1)],0)+'天'),align4,COLORCYAN;//未来
{箱体部分}
PARTLINE(top=ref(top,1),中位线),LINEDOT,Color008293;//中位线