合并成一个指标 (文华财经WH6赢顺V6.7)

投资者咨询:合并成一个指标 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-7-17 22:00
 N:=10;

DIFF : =EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  := EMA(DIFF,9);
MACD: 2*(DIFF-DEA),COLORSTICK;
AAA:=SUM(MACD,BARSLAST(CROSS(MACD,0))+1);
CCC:=REF(SUM(MACD,BARSLAST(CROSS(MACD,0))+1),BARSLAST(CROSSDOWN(MACD,0))+1);
BBB:=REF(SUM(MACD,BARSLAST(CROSSDOWN(MACD,0))+1),BARSLAST(CROSS(MACD,0))+1);
DDD:=REF(SUM(MACD,BARSLAST(CROSSDOWN(MACD,0))+1),BARSLAST(CROSSDOWN(MACD,0))+REF(BARSLAST(CROSS(MACD,0)),BARSLAST(CROSSDOWN(MACD,0)))+1);
HA:=HHV(H,BARSLAST(CROSS(MACD,0))+1),NODRAW;
HC:=REF(HA,BARSLAST(CROSSDOWN(MACD,0))),NODRAW;
LB:=LLV(L,BARSLAST(CROSSDOWN(MACD,0))+1),NODRAW;
LD:=REF(LLV(L,REF(BARSLAST(CROSSDOWN(MACD,0)),1)+1),BARSLAST(CROSSDOWN(MACD,0))),NODRAW;
AA:=IF(MACD>=0,AAA,NULL),NODRAW;
BB:=IF(MACD>=0,BBB,NULL),NODRAW;
CC:=IF(MACD>=0,CCC,NULL),NODRAW;
DD:=IF(MACD>=0,DDD,NULL),NODRAW;
第3条:=AA>CC&&HA>HC&&HA=HHV(H,N);
COND:=第3条&&ISUP;
COND1:=H>=REF(LD,BARSLAST(COND))&&L<=REF(LD,BARSLAST(COND));
N1:=VALUEWHEN(COND1,BARSLAST(COND));
COND2:=COND1&&COUNT(COND1,N1)=1;
//DRAWLINE3(COND2,REF(LD,BARSLAST(COND)),N1,COND2,REF(LD,BARSLAST(COND)),0,0);
DRAWSL1(ISLASTBAR,REF(LD,BARSLAST(COND)),0,BARSLAST(COND)+1,1),COLORYELLOW,LINETHICK3;


N:=8;
AA:=REF(H,N)=HHV(H,2*N+1);
AA1:=REF(L,N)=LLV(L,2*N+1);
QY:=BACKSET(AA,N+1);
QY1:=BACKSET(AA1,N+1);
CC:=FILTER(QY,N) AND H=HHV(H,N+1);
CC1:=FILTER(QY1,N) AND L=LLV(L,N+1);
DDD:=BARSLAST(CC);
DD1:=BARSLAST(CC1);
CURRBARSCOUNT:=DATACOUNT-BARPOS+1;
GDTS:=IF(CC,CURRBARSCOUNT,0);
DDTS:=IF(CC1,CURRBARSCOUNT,0);
DINGBUTS:=IF(DDD,REF(GDTS,DDD),GDTS);
DDTS1:=IF(DD1,REF(DDTS,DD1),DDTS);
GDCS1:=REFX1(DINGBUTS,10000);
DDCS1:=REFX1(DDTS1,10000);
GDCS13:=REFX1(REF(HIGH,GDCS1-1),10000);
DDCS13:=REFX1(REF(L,DDCS1-1),10000);
DINGBUTS1:=REF(DINGBUTS,DDD+1);
DDTS2:=REF(DDTS1,DD1+1);
GDCS2:=REFX1(DINGBUTS1,10000);
DDCS2:=REFX1(DDTS2,10000);
GDCS23:=REFX1(REF(HIGH,DINGBUTS1-1),10000);
DDCS23:=REFX1(REF(L,DDTS2-1),10000);
XG1:=BACKSET(ISLASTBAR,GDCS1);
XD1:=BACKSET(ISLASTBAR,DDCS1);
XG2:=BACKSET(ISLASTBAR,DINGBUTS1);
XD2:=BACKSET(ISLASTBAR,DDTS2);

 

A1:=REF(HIGH,10)=HHV(HIGH,2*10+1);
B1:=FILTER(A1,10);
C1:=BACKSET(B1,10+1);
D1:=FILTER(C1,10);
{高点}
A2:=REF(LOW,10)=LLV(LOW,2*10+1);
B2:=FILTER(A2,10);
C2:=BACKSET(B2,10+1);
D2:=FILTER(C2,10);
{低点}
E1:=(REF(LLV(LOW,2*10),1)+REF(HHV(HIGH,2*10),1))/2;
E2:=(HIGH+LOW)/2;
H1:=(D1 AND NOT((D2 AND E1>=E2))) OR ISLASTBAR OR BARSCOUNT(CLOSE)=1;
L1:=(D2 AND NOT((D1 AND E1<E2)));
H2:=D1 AND NOT((D2 AND E1>=E2));
X1:=REF(BARSLAST(H1),1)+1;
F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,LOW,10000),X1)+1);
G1:=F1>REF(F1,1);
I1:=BACKSET(G1,1);
LD:=I1>REF(I1,1);
L2:=LD OR ISLASTBAR OR BARSCOUNT(CLOSE)=1;
X2:=REF(BARSLAST(L2),1)+1;
F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,HIGH,0),X2)+1);
G2:=F2>REF(F2,1);
I2:=BACKSET(G2,1);
HD:=I2>REF(I2,1);
J1:=BACKSET(ISLASTBAR ,MIN(BARSLAST(HD),BARSLAST(LD))+1);
J2:=J1>REF(J1,1);
DRAWLINE1(J2,IF(HD,H,L),ISLASTBAR ,IF(BARSLAST(HD)>BARSLAST(LD),H,L),0),COLORWHITE,LINETHICK2;

好几条重复,删除误差太大
有点轻微差别没事,意思一样就行,

 



技术人员回复
日期:2018-7-17 22:00
这样:

 N:=10;

DIFF : =EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  := EMA(DIFF,9);
MACD: 2*(DIFF-DEA),COLORSTICK;
AAA:=SUM(MACD,BARSLAST(CROSS(MACD,0))+1);
CCC:=REF(SUM(MACD,BARSLAST(CROSS(MACD,0))+1),BARSLAST(CROSSDOWN(MACD,0))+1);
BBB:=REF(SUM(MACD,BARSLAST(CROSSDOWN(MACD,0))+1),BARSLAST(CROSS(MACD,0))+1);
DDD:=REF(SUM(MACD,BARSLAST(CROSSDOWN(MACD,0))+1),BARSLAST(CROSSDOWN(MACD,0))+REF(BARSLAST(CROSS(MACD,0)),BARSLAST(CROSSDOWN(MACD,0)))+1);
HA:=HHV(H,BARSLAST(CROSS(MACD,0))+1),NODRAW;
HC:=REF(HA,BARSLAST(CROSSDOWN(MACD,0))),NODRAW;
LB:=LLV(L,BARSLAST(CROSSDOWN(MACD,0))+1),NODRAW;
LDX:=REF(LLV(L,REF(BARSLAST(CROSSDOWN(MACD,0)),1)+1),BARSLAST(CROSSDOWN(MACD,0))),NODRAW;
AA:=IF(MACD>=0,AAA,NULL),NODRAW;
BB:=IF(MACD>=0,BBB,NULL),NODRAW;
CC:=IF(MACD>=0,CCC,NULL),NODRAW;
DD:=IF(MACD>=0,DDD,NULL),NODRAW;
第3条:=AA>CC&&HA>HC&&HA=HHV(H,N);
COND:=第3条&&ISUP;
COND1:=H>=REF(LDX,BARSLAST(COND))&&L<=REF(LDX,BARSLAST(COND));
N1:=VALUEWHEN(COND1,BARSLAST(COND));
COND2:=COND1&&COUNT(COND1,N1)=1;
//DRAWLINE3(COND2,REF(LD,BARSLAST(COND)),N1,COND2,REF(LD,BARSLAST(COND)),0,0);
DRAWSL1(ISLASTBAR,REF(LDX,BARSLAST(COND)),0,BARSLAST(COND)+1,1),COLORYELLOW,LINETHICK3;



AAX:=REF(H,N)=HHV(H,2*N+1);
AA1:=REF(L,N)=LLV(L,2*N+1);
QY:=BACKSET(AAX,N+1);
QY1:=BACKSET(AA1,N+1);
CCX:=FILTER(QY,N) AND H=HHV(H,N+1);
CC1:=FILTER(QY1,N) AND L=LLV(L,N+1);
DDDX:=BARSLAST(CCX);
DD1:=BARSLAST(CC1);
CURRBARSCOUNT:=DATACOUNT-BARPOS+1;
GDTS:=IF(CC,CURRBARSCOUNT,0);
DDTS:=IF(CC1,CURRBARSCOUNT,0);
DINGBUTS:=IF(DDDX,REF(GDTS,DDDX),GDTS);
DDTS1:=IF(DD1,REF(DDTS,DD1),DDTS);
GDCS1:=REFX1(DINGBUTS,10000);
DDCS1:=REFX1(DDTS1,10000);
GDCS13:=REFX1(REF(HIGH,GDCS1-1),10000);
DDCS13:=REFX1(REF(L,DDCS1-1),10000);
DINGBUTS1:=REF(DINGBUTS,DDD+1);
DDTS2:=REF(DDTS1,DD1+1);
GDCS2:=REFX1(DINGBUTS1,10000);
DDCS2:=REFX1(DDTS2,10000);
GDCS23:=REFX1(REF(HIGH,DINGBUTS1-1),10000);
DDCS23:=REFX1(REF(L,DDTS2-1),10000);
XG1:=BACKSET(ISLASTBAR,GDCS1);
XD1:=BACKSET(ISLASTBAR,DDCS1);
XG2:=BACKSET(ISLASTBAR,DINGBUTS1);
XD2:=BACKSET(ISLASTBAR,DDTS2);

 

A1:=REF(HIGH,10)=HHV(HIGH,2*10+1);
B1:=FILTER(A1,10);
C1:=BACKSET(B1,10+1);
D1:=FILTER(C1,10);
{高点}
A2:=REF(LOW,10)=LLV(LOW,2*10+1);
B2:=FILTER(A2,10);
C2:=BACKSET(B2,10+1);
D2:=FILTER(C2,10);
{低点}
E1:=(REF(LLV(LOW,2*10),1)+REF(HHV(HIGH,2*10),1))/2;
E2:=(HIGH+LOW)/2;
H1:=(D1 AND NOT((D2 AND E1>=E2))) OR ISLASTBAR OR BARSCOUNT(CLOSE)=1;
L1:=(D2 AND NOT((D1 AND E1<E2)));
H2:=D1 AND NOT((D2 AND E1>=E2));
X1:=REF(BARSLAST(H1),1)+1;
F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,LOW,10000),X1)+1);
G1:=F1>REF(F1,1);
I1:=BACKSET(G1,1);
LD:=I1>REF(I1,1);
L2:=LD OR ISLASTBAR OR BARSCOUNT(CLOSE)=1;
X2:=REF(BARSLAST(L2),1)+1;
F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,HIGH,0),X2)+1);
G2:=F2>REF(F2,1);
I2:=BACKSET(G2,1);
HD:=I2>REF(I2,1);
J1:=BACKSET(ISLASTBAR ,MIN(BARSLAST(HD),BARSLAST(LD))+1);
J2:=J1>REF(J1,1);
DRAWLINE1(J2,IF(HD,H,L),ISLASTBAR ,IF(BARSLAST(HD)>BARSLAST(LD),H,L),0),COLORWHITE,LINETHICK2;