老师帮忙修改 (文华财经WH6赢顺V6.7)

投资者咨询:老师帮忙修改 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-8-24 16:22

DRAWKLINE(H,O,L,C);
UR:=250;{自行调节参数为长中短}
LR:=250;{自行调节参数为长中短}
TC1:=IF(H=HHV(H,1*UR),H,DRAWNULL);
TC2:=CONST(BARSLAST(TC1=H))+1;
UPPER:=CONST(IF(TC2=1,H,REF(H,TC2-1)));
BC1:=IF(L=LLV(L,1*LR),L,DRAWNULL);
BC2:=CONST(BARSLAST(BC1=L))+1;
LOWER:=CONST(IF(BC2=1,L,REF(L,BC2-1)));
LP:=CURRBARSCOUNT<=BC2 AND L=LOWER;{低点定位}
HP:=CURRBARSCOUNT<=TC2 AND H=UPPER;{高点定位}
STICKLINE(IF(BC2>TC2,HP,LP),LOWER,UPPER,0,0),COLOR628962;
STICKLINE(IF(BC2>TC2,LP,HP),LOWER,UPPER,0,0),COLOR628962;
NOD:=(IF(TC2>BC2,TC2,BC2)-IF(TC2>BC2,BC2,TC2));{用时}
LR1:=MA(C,NOD+1);
NP:IF(CURRBARSCOUNT<=MAX(BC2,TC2),CONST(IF(MIN(TC2,BC2)=1,LR1,REF(LR1,MIN(TC2,BC2)-1))),DRAWNULL),POINTDOT,COLOR93BDA8;{近点}
LR2:=SLOPE(C,NOD+1);
LR3:=CONST(IF(MIN(TC2,BC2)=1,LR2,REF(LR2,MIN(TC2,BC2)-1)));
FP:=NP-LR3*(NOD),POINTDOT,COLOR93BDA8;{远点}
EQU:(NP+FP)/2,POINTDOT,COLOR93BDA8;{中点}
A:(NP+EQU)/2,COLORGRAY;
B:(NP+A)/2,COLORGRAY;
D:(EQU+A)/2,COLORGRAY;
AD:=ABS(NP-FP);{高差};
DBL:=BARSLAST(BC1!=DRAWNULL)+1;
DBH:=BARSLAST(TC1!=DRAWNULL)+1;
BSP:=IF(BC2>TC2,DBL,DBH)-1;
LRL:=IF(NP>FP,FP+AD/NOD*BSP,FP-AD/NOD*BSP);
AT1:=IF(BETWEEN(CURRBARSCOUNT,BC2,TC2) AND H>LRL,H,LRL);
AT2:=HHV(AT1-LRL,MAX(BC2,TC2));
AT3:=CONST(BARSLAST(AT1-LRL=AT2));
AT4:=CONST(IF(AT3=0,H,REF(H,AT3)));
AT5:=CONST(IF(AT3=0,AT1-LRL,REF(AT1-LRL,AT3)));
ATL:=LRL+AT5;
UT1:=IF(BETWEEN(CURRBARSCOUNT,BC2,TC2) AND L<LRL,L,LRL);
UT2:=HHV(LRL-UT1,MAX(BC2,TC2));
UT3:=CONST(BARSLAST(LRL-UT1=UT2));
UT4:=CONST(IF(UT3=0,H,REF(H,UT3)));
UT5:=CONST(IF(UT3=0,LRL-UT1,REF(LRL-UT1,UT3)));
UTL:=LRL-UT5;
RH:=IF(CURRBARSCOUNT>=MAX(BC2,TC2)-5,ATL,CONST(REF(ATL,MIN(BC2,TC2)-5)));{限制高}
RL:=IF(CURRBARSCOUNT>=MAX(BC2,TC2)+5,UTL,CONST(REF(UTL,MIN(BC2,TC2)+5)));{限制低}
上:IF(NP>FP,IF(ATL<=RH,ATL,DRAWNULL),IF(ATL>=RL,ATL,DRAWNULL)),COLORLIRED;
下:IF(NP>FP,IF(UTL<=RH,UTL,DRAWNULL),IF(UTL>=RL,UTL,DRAWNULL)),COLORLIBLUE;
中轨:IF(C>0,(上+下)/2,DRAWNULL),COLORYELLOW;
上轨:=IF(上>REF(上,1),上,DRAWNULL),COLORLIRED;
下轨:=IF(下<REF(下,1),下,DRAWNULL),COLORGREEN;
(上轨+中轨)/2,COLORLIRED,DOTLINE;
(下轨+中轨)/2,COLORGREEN,DOTLINE;
中轨-(上轨-(上轨+中轨)/2),COLORLIRED,DOTLINE;
中轨+((下轨+中轨)/2-下轨),COLORGREEN,DOTLINE;

技术人员回复
日期:2018-8-24 16:34
 参考:

DRAWKLINE1(H,O,L,C);
UR:=250;//{自行调节参数为长中短}
LR:=250;//{自行调节参数为长中短}
TC1:=IF(H=HHV(H,1*UR),H,NULL);
TC2:=REFX1(BARSLAST(TC1=H),10000)+1;
UPPER:=REFX1(IF(TC2=1,H,REF(H,TC2-1)),10000);
BC1:=IF(L=LLV(L,1*LR),L,NULL);
BC2:=REFX1(BARSLAST(BC1=L),10000)+1;
LOWER:=REFX1(IF(BC2=1,L,REF(L,BC2-1)),10000);
CURRBARSCOUNT:=DATACOUNT-BARPOS;
LP:=CURRBARSCOUNT<=BC2 AND L=LOWER;
{低点定位}
HP:=CURRBARSCOUNT<=TC2 AND H=UPPER;
//{高点定位}
STICKLINE(IF(BC2>TC2,HP,LP),LOWER,UPPER,0,0),COLOR628962;
STICKLINE(IF(BC2>TC2,LP,HP),LOWER,UPPER,0,0),COLOR628962;
NOD:=(IF(TC2>BC2,TC2,BC2)-IF(TC2>BC2,BC2,TC2));
{用时}
LR1:=MA(C,NOD+1);
NP:IF(CURRBARSCOUNT<=MAX(BC2,TC2),REFX1(IF(MIN(TC2,BC2)=1,LR1,REF(LR1,MIN(TC2,BC2)-1)),10000),NULL),POINTDOT,COLOR93BDA8;//{近点}
LR2:=SLOPE(C,NOD+1);
LR3:=REFX1(IF(MIN(TC2,BC2)=1,LR2,REF(LR2,MIN(TC2,BC2)-1)),10000);
FP:=NP-LR3*(NOD),POINTDOT,COLOR93BDA8;
{远点}
EQU:(NP+FP)/2,POINTDOT,COLOR93BDA8;
{中点}
A:(NP+EQU)/2,COLORGRAY;
B:(NP+A)/2,COLORGRAY;
D:(EQU+A)/2,COLORGRAY;
AD:=ABS(NP-FP);
//{高差};
DBL:=BARSLAST(BC1=NULL)+1;
DBH:=BARSLAST(TC1=NULL)+1;
BSP:=IF(BC2>TC2,DBL,DBH)-1;
LRL:=IF(NP>FP,FP+AD/NOD*BSP,FP-AD/NOD*BSP);
AT1:=IF(BETWEEN(CURRBARSCOUNT,BC2,TC2) AND H>LRL,H,LRL);
AT2:=HHV(AT1-LRL,MAX(BC2,TC2));
AT3:=REFX1(BARSLAST(AT1-LRL=AT2),10000);
AT4:=REFX1(IF(AT3=0,H,REF(H,AT3)),10000);
AT5:=REFX1(IF(AT3=0,AT1-LRL,REF(AT1-LRL,AT3)),10000);
ATL:=LRL+AT5;
UT1:=IF(BETWEEN(CURRBARSCOUNT,BC2,TC2) AND L<LRL,L,LRL);
UT2:=HHV(LRL-UT1,MAX(BC2,TC2));
UT3:=REFX1(BARSLAST(LRL-UT1=UT2),10000);
UT4:=REFX1(IF(UT3=0,H,REF(H,UT3)),10000);
UT5:=REFX1(IF(UT3=0,LRL-UT1,REF(LRL-UT1,UT3)),10000);
UTL:=LRL-UT5;
RH:=IF(CURRBARSCOUNT>=MAX(BC2,TC2)-5,ATL,REFX1(REF(ATL,MIN(BC2,TC2)-5),10000));
{限制高}
RL:=IF(CURRBARSCOUNT>=MAX(BC2,TC2)+5,UTL,REFX1(REF(UTL,MIN(BC2,TC2)+5),10000));
{限制低}
上:IF(NP>FP,IF(ATL<=RH,ATL,NULL),IF(ATL>=RL,ATL,NULL)),COLORRED;
下:IF(NP>FP,IF(UTL<=RH,UTL,NULL),IF(UTL>=RL,UTL,NULL)),COLORBLUE;
中轨:IF(C>0,(上+下)/2,NULL),COLORYELLOW;
上轨:=IF(上>REF(上,1),上,NULL),COLORRED;
下轨:=IF(下<REF(下,1),下,NULL),COLORGREEN;
(上轨+中轨)/2,COLORRED,DOT;
(下轨+中轨)/2,COLORGREEN,DOT;
中轨-(上轨-(上轨+中轨)/2),COLORRED,DOT;
中轨+((下轨+中轨)/2-下轨),COLORGREEN,DOT;