DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);DEA := EMA(DIFF,9);MACD:=2*(DIFF-DEA),COLORSTICK;J:CROSS(DIFF,DEA),NODRAW;S:CROSSDOWN(DIFF,DEA),NODRAW;HH:CROSS(EVERY(MACD>0,5),0.5),NODRAW;LL:CROSS(EVERY(MACD<0,5),0.5),NODRAW;AA:COUNT(HH,BARSLAST(LL)+1)=1&&HH,NODRAW;BB:COUNT(LL,BARSLAST(HH)+1)=1&&LL,NODRAW;T1:=BACKSET(REFX(AA,4),LLVBARS(L,BARSLAST(REFX(BB,4))+1)+1);T2:=BACKSET(REFX(BB,4),HHVBARS(H,BARSLAST(REFX(AA,4))+1)+1);DRAWLINE1(CROSS(T1,0.5),L,CROSS(T2,0.5),H,0),COLORRED;DRAWLINE1(CROSS(T2,0.5),H,CROSS(T1,0.5),L,0),COLORGREEN;
参考:
DIFF :EMA(CLOSE,12) - EMA(CLOSE,26);
DEA :EMA(DIFF,9);
MACD:2*(DIFF-DEA),COLORSTICK;
J:CROSS(DIFF,DEA),NODRAW;
S:CROSSDOWN(DIFF,DEA),NODRAW;
HH1:CROSS(EVERY(MACD>0,5),0.5),NODRAW;
LL1:CROSS(EVERY(MACD<0,5),0.5),NODRAW;
AA:COUNT(HH1,BARSLAST(LL1)+1)=1&&HH1,NODRAW;
BB:COUNT(LL1,BARSLAST(HH1)+1)=1&&LL1,NODRAW;
T1:=BACKSET(REFX(AA,4),LLVBARS(L,BARSLAST(REFX(BB,4))+1)+1);
T2:=BACKSET(REFX(BB,4),HHVBARS(H,BARSLAST(REFX(AA,4))+1)+1);
JCC:=REFX(AA,4);
SCC:=REFX(BB,4);
N1:=BARSLAST(JCC)+1;
N2:=BARSLAST(SCC)+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(MACD,N1));//上次MACD红柱期间MACD最大值
MHD2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(MHD,1));//上上次MACD红柱期间MACD最大值
LL:=VALUEWHEN(CROSS(DIFF,DEA),LLV(L,N2));//上次MACD绿柱期间合约最小值
LL2:=VALUEWHEN(CROSS(DIFF,DEA),REF(LL,1));//上上次MACD绿柱期间合约最小值
MLD:=VALUEWHEN(CROSS(DIFF,DEA),LLV(MACD,N2));//上次MACD绿柱期间MACD最小值
MLD2:=VALUEWHEN(CROSS(DIFF,DEA),REF(MLD,1));//上上次MACD绿柱期间MACD最小值
A:=CROSSDOWN(DIFF,DEA)&&HH>HH2&&MHD<MHD2;//顶背离
B:=CROSS(DIFF,DEA)&&LL<LL2&&MLD>MLD2;//底背离
DRAWICON(A,MACD,5),VALIGN0;
DRAWICON(B,MACD,4);
参考:
DIFF :=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA :=EMA(DIFF,9);
MACD:=2*(DIFF-DEA),COLORSTICK;
J:CROSS(DIFF,DEA),NODRAW;
S:CROSSDOWN(DIFF,DEA),NODRAW;
HH1:CROSS(EVERY(MACD>0,5),0.5),NODRAW;
LL1:CROSS(EVERY(MACD<0,5),0.5),NODRAW;
AA:COUNT(HH1,BARSLAST(LL1)+1)=1&&HH1,NODRAW;
BB:COUNT(LL1,BARSLAST(HH1)+1)=1&&LL1,NODRAW;
T1:=BACKSET(REFX(AA,4),LLVBARS(L,BARSLAST(REFX(BB,4))+1)+1);
T2:=BACKSET(REFX(BB,4),HHVBARS(H,BARSLAST(REFX(AA,4))+1)+1);
JCC:=REFX(AA,4);
SCC:=REFX(BB,4);
N1:=BARSLAST(JCC)+1;
N2:=BARSLAST(SCC)+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(MACD,N1));//上次MACD红柱期间MACD最大值
MHD2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(MHD,1));//上上次MACD红柱期间MACD最大值
LL:=VALUEWHEN(CROSS(DIFF,DEA),LLV(L,N2));//上次MACD绿柱期间合约最小值
LL2:=VALUEWHEN(CROSS(DIFF,DEA),REF(LL,1));//上上次MACD绿柱期间合约最小值
MLD:=VALUEWHEN(CROSS(DIFF,DEA),LLV(MACD,N2));//上次MACD绿柱期间MACD最小值
MLD2:=VALUEWHEN(CROSS(DIFF,DEA),REF(MLD,1));//上上次MACD绿柱期间MACD最小值
A:=CROSSDOWN(DIFF,DEA)&&HH>HH2&&MHD<MHD2;//顶背离
B:=CROSS(DIFF,DEA)&&LL<LL2&&MLD>MLD2;//底背离
DRAWLINE1(CROSS(T1,0.5),L,CROSS(T2,0.5),H,0),COLORRED;
DRAWLINE1(CROSS(T2,0.5),H,CROSS(T1,0.5),L,0),COLORGREEN;
DRAWICON(REFX(A,1),H,5),VALIGN2;
DRAWICON(REFX(B,1),L,4);
底背离判断画线
1.相邻红绿柱 黄白线相交,
2.第一次相交时的DEA值大于第二次黄白线DEA值
3.第一次相交前绿柱对应K线的最低价大于第二次相交前绿柱的最低价即判断为底背离
4.顶背离满足的情况下第二次相交前绿柱不满足5根MACD 绿柱可以直接画线
底背离判定条件相反
图中按顺时间不可逆原则,从左到右
1与2价格不新高与macd不够成背离
2与3价格不新高与macd不够成背离
3与4价格新高与macd背离成立,对应4红柱只有1根,画线如图
4与5价格新高与macd背离成立
文件名:赢顺截图20201025113958.jpg