A:=L>=REF(L,1)&&H>REF(H,1);
//A赋值:最低价>=1日前的最低价并且最高价>1日前的最高价
B:=H<=REF(H,1)&&L< REF(L,1);
//B赋值:最高价<=1日前的最高价并且最低价<1日前的最低价
J:=COUNT(A,BARSLAST(B)+1)=1&&A,ICON(1,’ICO1′);
//J赋值:统计上次B距今天数+1日中满足A的天数=1并且A,ICON(1,’ICO1′)
S:=COUNT(B,BARSLAST(A)+1)=1&&B,ICON(1,’ICO2′);
//S赋值:统计上次A距今天数+1日中满足B的天数=1并且B,ICON(1,’ICO2′)
HH1:=BACKSET((REFX(S,1)||ISLASTBAR&&BARSLAST(J)< BARSLAST(S))&&HHV(H,BARSLAST(J)+1)=VALUEWHEN(J,H),BARSLAST(J)+1),NODRAW;
//HH1赋值:若(1日后的S或者是否最后一个周期并且上次J距今天数<上次S距今天数)并且上次J距今天数+1日内最高价的最高值=如果J,返回最高价,否则返回上个输出值则将最近上次J距今天数+1周期置为1,不画该线
LL1:=BACKSET((REFX(J,1)||ISLASTBAR&&BARSLAST(J)>BARSLAST(S))&&LLV(L,BARSLAST(S)+1)=VALUEWHEN(S,L),BARSLAST(S)+1),NODRAW;
//LL1赋值:若(1日后的J或者是否最后一个周期并且上次J距今天数>上次S距今天数)并且上次S距今天数+1日内最低价的最低值=如果S,返回最低价,否则返回上个输出值则将最近上次S距今天数+1周期置为1,不画该线
HH2:=BACKSET((REFX(S,1)||ISLASTBAR&&BARSLAST(J)< BARSLAST(S))&&HHV(H,BARSLAST(J)+1)< >VALUEWHEN(J,H),BARSLAST(H>HV(H,BARSLAST(J))) +1),NODRAW;
//HH2赋值:若(1日后的S或者是否最后一个周期并且上次J距今天数<上次S距今天数)并且上次J距今天数+1日内最高价的最高值不等于如果J,返回最高价,否则返回上个输出值则将最近上次最高价>HV(最高价,上次J距今天数)距今天数+1周期置为1,不画该线
LL2:=BACKSET((REFX(J,1)||ISLASTBAR&&BARSLAST(J)>BARSLAST(S))&&LLV(L,BARSLAST(S)+1)< >VALUEWHEN(S,L),BARSLAST(L< LV(L,BARSLAST(S)))+1),NODRAW;
//LL2赋值:若(1日后的J或者是否最后一个周期并且上次J距今天数>上次S距今天数)并且上次S距今天数+1日内最低价的最低值不等于如果S,返回最低价,否则返回上个输出值则将最近上次最低价<LV(最低价,上次S距今天数)距今天数+1周期置为1,不画该线
HH:=CROSS(HH1=1,0.5)||CROSS(HH2=1,0.5),ICON(1,’ICO16′);
//HH赋值:HH1=1上穿0.5或者HH2=1上穿0.5,ICON(1,’ICO16′)
LL:=CROSS(LL1=1,0.5)||CROSS(LL2=1,0.5),ICON(1,’ICO17′);
//LL赋值:LL1=1上穿0.5或者LL2=1上穿0.5,ICON(1,’ICO17′)
DRAWLINE1(HH,H,LL,L,0),COLORYELLOW,LINETHICK1;
//DRAWLINE1(HH,最高价,LL,最低价,0),画黄色,线宽为1
DRAWLINE1(LL,L,HH,H,0),COLORYELLOW,LINETHICK1;
//DRAWLINE1(LL,最低价,HH,最高价,0),画黄色,线宽为1
DRAWNUMBER1(HH&&COUNT(HH,BARSLAST(LL)+1),H,H,0);
//DRAWNUMBER1(HH并且统计上次LL距今天数+1日中满足HH的天数,最高价,最高价,0)
DRAWNUMBER1(LL&&COUNT(LL,BARSLAST(HH)+1),L,L,0),VALIGN0;
//DRAWNUMBER1(LL并且统计上次HH距今天数+1日中满足LL的天数,最低价,最低价,0),VALIGN0