DIFF:EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:EMA(DIFF,9);
MACD:2*(DIFF-DEA),COLORSTICK;
D:=DIFF;
JC:=CROSS(DIFF,DEA);
SC:=CROSSDOWN(DIFF,DEA);
N1:=BARSLAST(JC)+1;
N2:=BARSLAST(SC)+1;
HH:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(H,N1));//上次MACD红柱期间合约最大值
HH2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(HH,1));//上上次MACD红柱期间合约最大值
MHD:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(DIFF,N1));//上次MACD红柱期间DIFF最大值
MHD2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(MHD,1));//上上次MACD红柱期间DIFF最大值
LL:=VALUEWHEN(CROSS(DIFF,DEA),LLV(L,N2));
LL2:=VALUEWHEN(CROSS(DIFF,DEA),REF(LL,1));
MLD:=VALUEWHEN(CROSS(DIFF,DEA),LLV(DIFF,N2));
MLD2:=VALUEWHEN(CROSSD(DIFF,DEA),REF(MLD,1));
A:MACD<0&&HH>HH2&&MHD<MHD2;//顶背离
B:MACD>0&&LL<LL2&&MLD>MLD2;//底背离
这样改一下:
DIFF:EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:EMA(DIFF,9);
MACD:2*(DIFF-DEA),COLORSTICK;
D:=DIFF;
JC:=CROSS(DIFF,DEA);
SC:=CROSSDOWN(DIFF,DEA);
N1:=BARSLAST(JC)+1;
N2:=BARSLAST(SC)+1;
HH:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(H,N1));//上次MACD红柱期间合约最大值
HH2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(HH,1));//上上次MACD红柱期间合约最大值
MHD:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(DIFF,N1));//上次MACD红柱期间DIFF最大值
MHD2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(MHD,1));//上上次MACD红柱期间DIFF最大值
LL:=VALUEWHEN(CROSS(DIFF,DEA),LLV(L,N2));
LL2:=VALUEWHEN(CROSS(DIFF,DEA),REF(LL,1));
MLD:=VALUEWHEN(CROSS(DIFF,DEA),LLV(DIFF,N2));
MLD2:=VALUEWHEN(CROSS(DIFF,DEA),REF(MLD,1));
A:MACD<0&&HH>HH2&&MHD<MHD2;//顶背离
B:MACD>0&&LL<LL2&&MLD>MLD2;//底背离
参考:
DIFF:EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:EMA(DIFF,9);
MACD:2*(DIFF-DEA),COLORSTICK;
D:=DIFF;
JC:=CROSS(DIFF,DEA);
SC:=CROSSDOWN(DIFF,DEA);
N1:=BARSLAST(JC)+1;
N2:=BARSLAST(SC)+1;
HH:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(H,N1));//上次MACD红柱期间合约最大值
HH2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(HH,1));//上上次MACD红柱期间合约最大值
MHD:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(DIFF,N1));//上次MACD红柱期间DIFF最大值
MHD2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(MHD,1));//上上次MACD红柱期间DIFF最大值
LL:=VALUEWHEN(CROSS(DIFF,DEA),LLV(L,N2));
LL2:=VALUEWHEN(CROSS(DIFF,DEA),REF(LL,1));
MLD:=VALUEWHEN(CROSS(DIFF,DEA),LLV(DIFF,N2));
MLD2:=VALUEWHEN(CROSS(DIFF,DEA),REF(MLD,1));
A:=MACD<0&&HH>HH2&&MHD<MHD2;//顶背离
B:=MACD>0&&LL<LL2&&MLD>MLD2;//底背离
DRAWICON(CROSS(A,0.5),0,2);
DRAWICON(CROSS(B,0.5),0,1);
参考:
DIFF:EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:EMA(DIFF,9);
MACD:2*(DIFF-DEA),COLORSTICK;
D:=DIFF;
JC:=CROSS(DIFF,DEA);
SC:=CROSSDOWN(DIFF,DEA);
N1:=BARSLAST(JC)+1;
N2:=BARSLAST(SC)+1;
HH:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(H,N1));//上次MACD红柱期间合约最大值
HH2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(HH,1));//上上次MACD红柱期间合约最大值
MHD:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(DIFF,N1));//上次MACD红柱期间DIFF最大值
MHD2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(MHD,1));//上上次MACD红柱期间DIFF最大值
LL:=VALUEWHEN(CROSS(DIFF,DEA),LLV(L,N2));
LL2:=VALUEWHEN(CROSS(DIFF,DEA),REF(LL,1));
MLD:=VALUEWHEN(CROSS(DIFF,DEA),LLV(DIFF,N2));
MLD2:=VALUEWHEN(CROSS(DIFF,DEA),REF(MLD,1));
A:=MACD<0&&HH>HH2&&MHD<MHD2;//顶背离
B:=MACD>0&&LL<LL2&&MLD>MLD2;//底背离
DRAWTEXT(CROSS(A,0.5),MACD,'顶背离');
DRAWTEXT(CROSS(B,0.5),MACD,'底背离');



