如下的背离模型,修改一下开仓条件:产生顶背离的第一根阴K线做空, 顶背离的当根K线是阴线就开空;产生底背离的第一根阳线做多,底背离的当根K线是阳线开多。不要求金叉死叉开仓。谢谢
MA70 :MA(C, 70);
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);
DEA : =EMA(DIFF,9);
MACD := 2*(DIFF-DEA);
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(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;
A,SK;
B,BK;
C<MA70,BP;
C>MA70,SP;
AUTOFILTER;
DRAWICON(A,H,1);
DRAWICON(B,L,2);//背离标记,可删除