来函数检测结果如下:
该公式没有未来函数


SHORT:=12;

LONG:=26;

MID:=9;

DIFF:EMA(CLOSE,SHORT)-EMA(CLOSE,LONG);

DEA:EMA(DIFF,MID);

MACD:(DIFF-DEA)*2,COLORFFFF00,COLORSTICK;

A1:=BARSLAST(REF(CROSS(0, DEA),1));

A2:= BARSLAST(REF(COUNT(DEA<=0,A1+1)=A1+1 AND LLV(DIFF,5)=LLV(DIFF,A1+1) AND CROSS(DIFF,DEA),1));

A3:= BARSLAST(REF(CROSS(DIFF,DEA),1));

金叉:=IF(CROSS(DIFF,DEA) AND DEA<=0,0,DEA),COLORYELLOW;

低位多次金叉:IF(CROSS(DIFF,DEA) AND COUNT(A2>=1,A2+1)>=1 AND COUNT(DEA <=0,A2+1)=A2+1,0,DEA),COLORYELLOW;

DIBL1:= LLV(CLOSE,A3+1)=LLV(CLOSE,A1+1) AND NOT(LLV(DIFF,A3+1)=LLV(DIFF,A1+1)) AND CROSS(DIFF,DEA) AND COUNT(A2>=1,A2+1)>=1 AND COUNT(DEA <=0,A2+1)=A2+1;

底背离:=IF(DIBL1,0,DEA);

DRAWLINE(A2=0,DEA,DIBL1=1,DEA,0),COLORRED,LINETHICK3;

B1:=BARSLAST(REF(CROSS(DEA,0),1));

B2:=BARSLAST(REF(COUNT(DEA>=0,B1+1)=B1+1 AND HHV(DIFF,5)=HHV(DIFF,A1+1) AND CROSS(DEA,DIFF),1));{股票指标网}

B3:=BARSLAST(REF(CROSS(DEA,DIFF),1));

死叉:=IF(CROSS(DEA,DIFF) AND DEA>=0,0,DEA),COLORFFFF00;

高位多次死叉:IF(CROSS(DEA,DIFF) AND COUNT(B2>=1,B2+1)>=1 AND REF(COUNT(DEA >=0,B2+1)=B2+1,1),0,DEA),COLORFFFF00;

DINGBL1:= HHV(CLOSE,B3+1)=HHV(CLOSE,B1+1) AND NOT(HHV(DIFF,B3+1)=HHV(DIFF,B1+1)) AND CROSS(DEA,DIFF) AND COUNT(B2>=1,B2+1)>=1 AND COUNT(DEA >=0,B2+1)=B2+1; 

顶背离:=IF(DINGBL1,0,DEA);{}

DRAWLINE(B2=0,DEA,DINGBL1,DEA,0),COLOR00FF00,LINETHICK3;

STICKLINE(DIFF>DEA,MACD,0,1,0),COLORRED;

STICKLINE(DEA>DIFF,MACD,0,1,0),COLORFFFF00;

 

原理解析:
SHORT赋值:12


LONG赋值:26


MID赋值:9
输出

DIFF:收盘价的SHORT日指数移动平均-收盘价的LONG日指数移动平均
输出

DEA:DIFF的MID日指数移动平均
输出

MACD:(DIFF-DEA)*2,COLORFFFF00,COLORSTICK


A1赋值:上次1日前的0上穿 DEA距今天数


A2赋值: 上次REF(统计A1+1日满足DEA<=0的天数=A1+1 AND 5日内DIFF最低值=A1+1日内DIFF最低值 AND DIFF上穿DEA,1距今天数)


A3赋值: 上次1日前的DIFF上穿DEA距今天数


金叉赋值:IF(DIFF上穿DEA AND DEA<=0,0,DEA),画黄色
输出

低位多次金叉:IF(DIFF上穿DEA AND 统计A2+1日满足A2>=1的天数>=1 AND 统计A2+1日满足DEA <=0的天数=A2+1,0,DEA),画黄色


DIBL1赋值: A3+1日内收盘价最低值=A1+1日内收盘价最低值 AND NOT(A3+1日内DIFF最低值=A1+1日内DIFF最低值) AND DIFF上穿DEA AND 统计A2+1日满足A2>=1的天数>=1 AND 统计A2+1日满足DEA <=0的天数=A2+1
如果DIBL1返回0否则返回DEA


DRAWLINE(A2=0,DEA,DIBL1=1,DEA,0),画红色, 线宽为3


B1赋值:上次1日前的DEA上穿0距今天数


B2赋值:上次REF(统计B1+1日满足DEA>=0的天数=B1+1 AND 5日内DIFF最高值=A1+1日内DIFF最高值 AND DEA上穿DIFF,1距今天数)
{股票指标网}

B3赋值:上次1日前的DEA上穿DIFF距今天数


死叉赋值:IF(DEA上穿DIFF AND DEA>=0,0,DEA),COLORFFFF00
输出

高位多次死叉:IF(DEA上穿DIFF AND 统计B2+1日满足B2>=1的天数>=1 AND 1日前的统计B2+1日满足DEA >=0的天数=B2+1,0,DEA),COLORFFFF00


DINGBL1赋值: B3+1日内收盘价最高值=B1+1日内收盘价最高值 AND NOT(B3+1日内DIFF最高值=B1+1日内DIFF最高值) AND DEA上穿DIFF AND 统计B2+1日满足B2>=1的天数>=1 AND 统计B2+1日满足DEA >=0的天数=B2+1
如果DINGBL1返回0否则返回DEA
{}

DRAWLINE(B2=0,DEA,DINGBL1,DEA,0),COLOR00FF00, 线宽为3
当满足条件DIFF>DEA时,在MACD和0之间画柱状线
当满足条件DEA>DIFF时,在MACD和0之间画柱状线


 

声明:本站所有资源,均为用户自主上传,仅作为学习交流之用,其版权归原作者或原出版社所有,本站不对所涉及的版权问题负法律责任。如有侵权,请联系我们删除!