DRAWLINE1(FG01,H,FD01, L,0),COLORGREEN;
参考:
AA:=BACKSET(ISLASTBAR,FD01);
BB:=BACKSET(ISLASTBAR,FG01);
DRAWLINE1(FD01&&AA,L,FG01&&BB, H,0),COLORRED;
DRAWLINE1(FG01&&BB,H,FD01&&AA, L,0),COLORGREEN;
如下修改试试
AA:=BACKSET(ISLASTBAR,FD01);
BB:=BACKSET(ISLASTBAR,FG01);
N:=BARSLAST(CROSS(AA,0.5))+1;
M:=BARSLAST(CROSS(BB,0.5))+1;
DRAWLINE1(FD01&&N>M,L,FG01&&N>M, H,0),COLORRED;
DRAWLINE1(FG01&&N<M,H,FD01&&N<M, L,0),COLORGREEN;
请上传下完整源码,我们针对修改下

G:=MA(C,5);
D:=MA(C,10);
HH:=REF(H,2)=HHV(H,11);
LL:=REF(L,2)=LLV(L,11);
FG01:=BACKSET(HH,6)>BACKSET(HH,5) ;
FD01:=BACKSET(LL,6)>BACKSET(LL,5) ;
FG02:=IF(BARSLAST(FG01)=BARSLAST(FD01) AND G>D,FG01,IF(BARSLAST(FD01)>BARSLAST(FG01),FG01,0));
FD02:=IF(BARSLAST(FG01)=BARSLAST(FD01) AND D>G,FD01,IF(BARSLAST(FG01)>BARSLAST(FD01),FD01,0));
FG09:=FG02 AND H=HHV(H,BARSLAST(FD02));
FD09:=FD02 AND L=LLV(L,BARSLAST(FG02));
GQ:=L>REF(H,1) AND DAY<>REF(DAY,1);
DQ:=HREF(DAY,1);
GQL:=REF(L,BARSLAST(GQ));
DQH:=REF(H,BARSLAST(DQ));
FGH9:=REF(H,BARSLAST(FG09));
FGL9:=REF(L,BARSLAST(FG09));
FGH1:=REF(H,BARSLAST(FG09)+1);
FGL1:=REF(L,BARSLAST(FG09)+1);
FGH2:=REF(H,BARSLAST(FG09)+2);
FGL22:=REF(L,BARSLAST(FG09)+2);
FDH9:=REF(H,BARSLAST(FD09));
FDL9:=REF(L,BARSLAST(FD09));
FDH1:=REF(H,BARSLAST(FD09)+1);
FDL1:=REF(L,BARSLAST(FD09)+1);
FDH2:=REF(H,BARSLAST(FD09)+2);
FDL2:=REF(L,BARSLAST(FD09)+2);
FGZH:=IF(FGL9<=FGL1,FGH2,FGH1);
FGZL:=IF(FGH1
FDZL:=IF(FDH9>=FDH1,FDL2,FDL1);
FG19:=FGH9>FDZH AND FG09;
FD19:=FDL9
FD:=FD19 AND FDL9
BHG:=COUNT(BH0,BARSLAST(FD09));
BHD:=COUNT(BH0,BARSLAST(FG09));
BGQ:=COUNT(GQ,BARSLAST(FD09));
BDQ:=COUNT(DQ,BARSLAST(FG09));
BK0:=IF(BHG>0,BHG+2+老笔,IF(BHD,BHD+2+老笔,3));
BKK9:=IF(BGQ,BK0-BGQ,IF(BDQ,BK0-BDQ,BK0));
G1X:=(FG AND BARSLAST(FD)>BKK9);
D1X:=(FD AND BARSLAST(FG)>BKK9);
G1:=(FG09 AND REF(H,BARSLAST(FG09))>=REF(H,BARSLAST(G1X)) AND BARSLAST(D1X)>BARSLAST(G1X))
OR (FG19 AND COUNT(GQ,BARSLAST(FD19))>0 AND REF(H,BARSLAST(FG19))>REF(H,BARSLAST(G1X)));
D1:=(FD09 AND REF(L,BARSLAST(FD09))<=REF(L,BARSLAST(D1X)) AND BARSLAST(G1X)>BARSLAST(D1X))
OR (FD19 AND COUNT(DQ,BARSLAST(FG19))>0 AND REF(L,BARSLAST(FD19))G1H:=IF(BARSLAST(D1)>BARSLAST(G1),REF(H,BARSLAST(G1)),REF(H,BARSLAST(D1)));
D1L:=IF(BARSLAST(G1)>BARSLAST(D1),REF(L,BARSLAST(D1)),REF(L,BARSLAST(G1)));
G29:=G1 AND H=HHV(G1H,BARSLAST(D1)+1) AND H>REF(H,1) AND BARSLAST(D1)>BARSLAST(G1);
D29:=D1 AND L=LLV(D1L,BARSLAST(G1)+1) AND LBARSLAST(D1);
G3:=G29 OR (FG09 AND REF(H,BARSLAST(FG09))>REF(H,BARSLAST(G29)) AND BARSLAST(D29)>BARSLAST(G29));
D3:=D29 OR (FD09 AND REF(L,BARSLAST(FD09))BARSLAST(D29));
//{画线}
GP:IF(FG09,H,NODRAW),CIRCLEDOT,NOTEXT,COLORCYAN;
DP:IF(FD09,L,NODRAW),CIRCLEDOT,NOTEXT,COLORCYAN;
GPB:IF(G1X,H,NODRAW),CIRCLEDOT,NOTEXT,COLORYELLOW;
参考:
老笔:=1;
G:=MA(C,5);
D:=MA(C,10);
HH:=REF(H,2)=HHV(H,11);
LL:=REF(L,2)=LLV(L,11);
FG01:=BACKSET(HH,6)>BACKSET(HH,5) ;
FD01:=BACKSET(LL,6)>BACKSET(LL,5) ;
FG02:=IF(BARSLAST(FG01)=BARSLAST(FD01) AND G>D,FG01,IF(BARSLAST(FD01)>BARSLAST(FG01),FG01,0));
FD02:=IF(BARSLAST(FG01)=BARSLAST(FD01) AND D>G,FD01,IF(BARSLAST(FG01)>BARSLAST(FD01),FD01,0));
FG09:=FG02 AND H=HHV(H,BARSLAST(FD02));
FD09:=FD02 AND L=LLV(L,BARSLAST(FG02));
GQ:=L>REF(H,1) AND DAY<>REF(DAY,1);
DQ:=H<REF(L,1) AND DAY<>REF(DAY,1);
GQL:=REF(L,BARSLAST(GQ));
DQH:=REF(H,BARSLAST(DQ));
FGH9:=REF(H,BARSLAST(FG09));
FGL9:=REF(L,BARSLAST(FG09));
FGH1:=REF(H,BARSLAST(FG09)+1);
FGL1:=REF(L,BARSLAST(FG09)+1);
FGH2:=REF(H,BARSLAST(FG09)+2);
FGL22:=REF(L,BARSLAST(FG09)+2);
FDH9:=REF(H,BARSLAST(FD09));
FDL9:=REF(L,BARSLAST(FD09));
FDH1:=REF(H,BARSLAST(FD09)+1);
FDL1:=REF(L,BARSLAST(FD09)+1);
FDH2:=REF(H,BARSLAST(FD09)+2);
FDL2:=REF(L,BARSLAST(FD09)+2);
FGZH:=IF(FGL9<=FGL1,FGH2,FGH1);
FGZL:=IF(FGH1<FGL9,FGL9,IF(FGL9<=FGL1,FGL22,FGL1));
FDZH:=IF(FDL1>FDH9,FDH9,IF(FDH9>=FDH1,FDH2,FDH1));
FDZL:=IF(FDH9>=FDH1,FDL2,FDL1);
FG19:=FGH9>FDZH AND FG09;
FD19:=FDL9<FGZL AND FD09;
FG:=FG19 AND FGH9>FDH9 AND FGL9>FDL9 AND FGL1>FDL9;
FD:=FD19 AND FDL9<FGL9 AND FDH9<FGH9 AND FDH1<FGH9;
BH0:=(H<=REF(H,1) AND L>=REF(L,1)) OR (H>=REF(H,1) AND L<=REF(L,1));
BHG:=COUNT(BH0,BARSLAST(FD09));
BHD:=COUNT(BH0,BARSLAST(FG09));
BGQ:=COUNT(GQ,BARSLAST(FD09));
BDQ:=COUNT(DQ,BARSLAST(FG09));
BK0:=IF(BHG>0,BHG+2+老笔,IF(BHD,BHD+2+老笔,3));
BKK9:=IF(BGQ,BK0-BGQ,IF(BDQ,BK0-BDQ,BK0));
G1X:=(FG AND BARSLAST(FD)>BKK9);
D1X:=(FD AND BARSLAST(FG)>BKK9);
G1:=(FG09 AND REF(H,BARSLAST(FG09))>=REF(H,BARSLAST(G1X)) AND BARSLAST(D1X)>BARSLAST(G1X))
OR (FG19 AND COUNT(GQ,BARSLAST(FD19))>0 AND REF(H,BARSLAST(FG19))>REF(H,BARSLAST(G1X)));
D1:=(FD09 AND REF(L,BARSLAST(FD09))<=REF(L,BARSLAST(D1X)) AND BARSLAST(G1X)>BARSLAST(D1X))
OR (FD19 AND COUNT(DQ,BARSLAST(FG19))>0 AND REF(L,BARSLAST(FD19))<REF(H,BARSLAST(D1X)));
G1H:=IF(BARSLAST(D1)>BARSLAST(G1),REF(H,BARSLAST(G1)),REF(H,BARSLAST(D1)));
D1L:=IF(BARSLAST(G1)>BARSLAST(D1),REF(L,BARSLAST(D1)),REF(L,BARSLAST(G1)));
G29:=G1 AND H=HHV(G1H,BARSLAST(D1)+1) AND H>REF(H,1) AND BARSLAST(D1)>BARSLAST(G1);
D29:=D1 AND L=LLV(D1L,BARSLAST(G1)+1) AND L<REF(L,1) AND BARSLAST(G1)>BARSLAST(D1);
G3:=G29 OR (FG09 AND REF(H,BARSLAST(FG09))>REF(H,BARSLAST(G29)) AND BARSLAST(D29)>BARSLAST(G29));
D3:=D29 OR (FD09 AND REF(L,BARSLAST(FD09))<REF(L,BARSLAST(D29)) AND BARSLAST(G29)>BARSLAST(D29));
//{画线}
GP:IF(FG09,H,NODRAW),CIRCLEDOT,NOTEXT,COLORCYAN;
DP:IF(FD09,L,NODRAW),CIRCLEDOT,NOTEXT,COLORCYAN;
GPB:IF(G1X,H,NODRAW),CIRCLEDOT,NOTEXT,COLORYELLOW;
DPB:IF(D1X,L,NODRAW),CIRCLEDOT,NOTEXT,COLORYELLOW;
N:=BARSLAST(CROSS(FG01,0.5))+1;
M:=BARSLAST(CROSS(FD01,0.5))+1;
AA:=BACKSET(ISLASTBAR,N);
BB:=BACKSET(ISLASTBAR,M);
N1:BARSLAST(CROSS(AA,0.5))+1;
M1:BARSLAST(CROSS(BB,0.5))+1;
DRAWLINE1(N1=1&&FG01,L,FD01&&M1=1, H,0),COLORRED;
DRAWLINE1(FD01&&M1=1,H,N1=1&&FG01, L,0),COLORGREEN;
DP:IF(FD09,L,NODRAW),CIRCLEDOT,NOTEXT,COLORCYAN;
GPB:IF(G1X,H,NODRAW),CIRCLEDOT,NOTEXT,COLORYELLOW;
DPB:IF(D1X,L,NODRAW),CIRCLEDOT,NOTEXT,COLORYELLOW;
射线可以自动延长,编写实现不了延长3倍的,如下参考:
老笔:=1;
G:=MA(C,5);
D:=MA(C,10);
HH:=REF(H,2)=HHV(H,11);
LL:=REF(L,2)=LLV(L,11);
FG01:=BACKSET(HH,6)>BACKSET(HH,5) ;
FD01:=BACKSET(LL,6)>BACKSET(LL,5) ;
FG02:=IF(BARSLAST(FG01)=BARSLAST(FD01) AND G>D,FG01,IF(BARSLAST(FD01)>BARSLAST(FG01),FG01,0));
FD02:=IF(BARSLAST(FG01)=BARSLAST(FD01) AND D>G,FD01,IF(BARSLAST(FG01)>BARSLAST(FD01),FD01,0));
FG09:=FG02 AND H=HHV(H,BARSLAST(FD02));
FD09:=FD02 AND L=LLV(L,BARSLAST(FG02));
GQ:=L>REF(H,1) AND DAY<>REF(DAY,1);
DQ:=H<REF(L,1) AND DAY<>REF(DAY,1);
GQL:=REF(L,BARSLAST(GQ));
DQH:=REF(H,BARSLAST(DQ));
FGH9:=REF(H,BARSLAST(FG09));
FGL9:=REF(L,BARSLAST(FG09));
FGH1:=REF(H,BARSLAST(FG09)+1);
FGL1:=REF(L,BARSLAST(FG09)+1);
FGH2:=REF(H,BARSLAST(FG09)+2);
FGL22:=REF(L,BARSLAST(FG09)+2);
FDH9:=REF(H,BARSLAST(FD09));
FDL9:=REF(L,BARSLAST(FD09));
FDH1:=REF(H,BARSLAST(FD09)+1);
FDL1:=REF(L,BARSLAST(FD09)+1);
FDH2:=REF(H,BARSLAST(FD09)+2);
FDL2:=REF(L,BARSLAST(FD09)+2);
FGZH:=IF(FGL9<=FGL1,FGH2,FGH1);
FGZL:=IF(FGH1<FGL9,FGL9,IF(FGL9<=FGL1,FGL22,FGL1));
FDZH:=IF(FDL1>FDH9,FDH9,IF(FDH9>=FDH1,FDH2,FDH1));
FDZL:=IF(FDH9>=FDH1,FDL2,FDL1);
FG19:=FGH9>FDZH AND FG09;
FD19:=FDL9<FGZL AND FD09;
FG:=FG19 AND FGH9>FDH9 AND FGL9>FDL9 AND FGL1>FDL9;
FD:=FD19 AND FDL9<FGL9 AND FDH9<FGH9 AND FDH1<FGH9;
BH0:=(H<=REF(H,1) AND L>=REF(L,1)) OR (H>=REF(H,1) AND L<=REF(L,1));
BHG:=COUNT(BH0,BARSLAST(FD09));
BHD:=COUNT(BH0,BARSLAST(FG09));
BGQ:=COUNT(GQ,BARSLAST(FD09));
BDQ:=COUNT(DQ,BARSLAST(FG09));
BK0:=IF(BHG>0,BHG+2+老笔,IF(BHD,BHD+2+老笔,3));
BKK9:=IF(BGQ,BK0-BGQ,IF(BDQ,BK0-BDQ,BK0));
G1X:=(FG AND BARSLAST(FD)>BKK9);
D1X:=(FD AND BARSLAST(FG)>BKK9);
G1:=(FG09 AND REF(H,BARSLAST(FG09))>=REF(H,BARSLAST(G1X)) AND BARSLAST(D1X)>BARSLAST(G1X))
OR (FG19 AND COUNT(GQ,BARSLAST(FD19))>0 AND REF(H,BARSLAST(FG19))>REF(H,BARSLAST(G1X)));
D1:=(FD09 AND REF(L,BARSLAST(FD09))<=REF(L,BARSLAST(D1X)) AND BARSLAST(G1X)>BARSLAST(D1X))
OR (FD19 AND COUNT(DQ,BARSLAST(FG19))>0 AND REF(L,BARSLAST(FD19))<REF(H,BARSLAST(D1X)));
G1H:=IF(BARSLAST(D1)>BARSLAST(G1),REF(H,BARSLAST(G1)),REF(H,BARSLAST(D1)));
D1L:=IF(BARSLAST(G1)>BARSLAST(D1),REF(L,BARSLAST(D1)),REF(L,BARSLAST(G1)));
G29:=G1 AND H=HHV(G1H,BARSLAST(D1)+1) AND H>REF(H,1) AND BARSLAST(D1)>BARSLAST(G1);
D29:=D1 AND L=LLV(D1L,BARSLAST(G1)+1) AND L<REF(L,1) AND BARSLAST(G1)>BARSLAST(D1);
G3:=G29 OR (FG09 AND REF(H,BARSLAST(FG09))>REF(H,BARSLAST(G29)) AND BARSLAST(D29)>BARSLAST(G29));
D3:=D29 OR (FD09 AND REF(L,BARSLAST(FD09))<REF(L,BARSLAST(D29)) AND BARSLAST(G29)>BARSLAST(D29));
//{画线}
GP:IF(FG09,H,NODRAW),CIRCLEDOT,NOTEXT,COLORCYAN;
DP:IF(FD09,L,NODRAW),CIRCLEDOT,NOTEXT,COLORCYAN;
GPB:IF(G1X,H,NODRAW),CIRCLEDOT,NOTEXT,COLORYELLOW;
DPB:IF(D1X,L,NODRAW),CIRCLEDOT,NOTEXT,COLORYELLOW;
N:=BARSLAST(CROSS(FG01,0.5))+1;
M:=BARSLAST(CROSS(FD01,0.5))+1;
AA:=BACKSET(ISLASTBAR,N);
BB:=BACKSET(ISLASTBAR,M);
N1:BARSLAST(CROSS(AA,0.5))+1;
M1:BARSLAST(CROSS(BB,0.5))+1;
DRAWLINE1(N1=1&&FG01,L,FD01&&M1=1, H,1),COLORRED;
DRAWLINE1(FD01&&M1=1,H,N1=1&&FG01, L,1),COLORGREEN;