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


SHORT:=12;LONG:=26;M:=12;

DIF:=EMA(CLOSE,SHORT)-EMA(CLOSE,LONG);

DEA:=EMA(DIF,M);

MACD:=2*(DIF-DEA);

KK:=IF(DIF>DEA,5,-5);

JCSC:=(M-1)/(M+1)*DEA/(1-2/(M+1));{计算出金叉死叉时的DIFF值}

DD:=(MACD/2+(DEA*(M-1)/(M+1)))/(1-2/(M+1));{计算出明日MACD=MACD时的DIFF值}

DIF拐头价:=(DIF*(SHORT+1)*(LONG+1)-(LONG+1)*(SHORT-1)*EMA(C,SHORT)+(SHORT+1)*(LONG-1)*EMA(C,LONG))/(2*((LONG+1)-(SHORT+1)))COLORGREEN,POINTDOT;

金死叉价:=(JCSC*(SHORT+1)*(LONG+1)-(LONG+1)*(SHORT-1)*EMA(C,SHORT)+(SHORT+1)*(LONG-1)*EMA(C,LONG))/(2*((LONG+1)-(SHORT+1))),NODRAW;

柱变向价:=(DD*(SHORT+1)*(LONG+1)-(LONG+1)*(SHORT-1)*EMA(C,SHORT)+(SHORT+1)*(LONG-1)*EMA(C,LONG))/(2*((LONG+1)-(SHORT+1))),COLORYELLOW,POINTDOT;

黄铢消失见顶:=IF(柱变向价>=DIF拐头价,柱变向价,DRAWNULL),COLORYELLOW,CIRCLEDOT,LINETHICK1;

上拐:IF(DIF拐头价<柱变向价,DIF拐头价,DRAWNULL),COLORRED,LINETHICK4;

下拐:IF(DIF拐头价>=柱变向价,DIF拐头价,DRAWNULL),COLOR33FF33,POINTDOT,LINETHICK4;

ZJ:=上拐,COLOR0000FF;

HY:=金死叉价,COLORFF00FF;

IF(ZJ>REF(ZJ,1),ZJ,DRAWNULL),COLORRED,LINETHICK2;

IF(HY>REF(HY,1),HY,DRAWNULL),COLORMAGENTA,LINETHICK2,NODRAW;

IF(HY<REF(HY,1),HY,DRAWNULL),COLORBLUE,LINETHICK2,NODRAW;

STICKLINE(C>ZJ AND C>O,H,C,0,0 ),COLORRED;

STICKLINE(C>ZJ AND C>O,L,O,0,0 ),COLORRED;

STICKLINE(C>ZJ AND C>O,O,C,2.8,1),COLORRED;

STICKLINE(C>ZJ AND C<=O,H,L,0,0 ),COLORRED;

STICKLINE(C>ZJ AND C<=O,O,C,2.8,0),COLORRED;

STICKLINE(CLOSE=ZJ,H,L,3,0),COLORWHITE;

STICKLINE(CLOSE<ZJ,H,L,0,0),COLORYELLOW;

STICKLINE(CLOSE<ZJ,O,C,2.5,0),COLORYELLOW;

STICKLINE(C<HY AND C>O,H,C,0,0),COLORCYAN;

STICKLINE(C<HY AND C>O,O,L,0,0),COLORCYAN;

STICKLINE(C<HY AND C>O,O,C,2.8,1),COLORCYAN;

STICKLINE(C<HY AND C<=O,H,L,0,0),COLORCYAN;

STICKLINE(C<HY AND C<=O,O,C,2.8,0),COLORCYAN;

HD0:=CROSS(DIF,DEA);



买入准备:DRAWICON(CROSS(柱变向价,DIF拐头价),上拐,34);

卖出准备:DRAWICON(CROSS(DIF拐头价,柱变向价),下拐,35);

SBL:=STRCAT(STRCAT(STRCAT(STRCAT(DYBLOCK,HYBLOCK),FGBLOCK),GNBLOCK),ZDBLOCK);

DRAWTEXT_FIX(ISLASTBAR,0.01,0.005,0,SBL),COLORCYAN;

原理解析:
SHORT赋值:12
LONG赋值:26
M赋值:12
DIF赋值:收盘价的SHORT日指数移动平均-收盘价的LONG日指数移动平均
DEA赋值:DIF的M日指数移动平均
MACD:=2*(DIF-DEA)
如果D>DEA返回5否则返回-5
JCSC赋值:(M-1)/(M+1)*DEA/(1-2/(M+1))
{计算出金叉死叉时的DIFF值}
DD:=(MACD/2+(DEA*(M-1)/(M+1)))/(1-2/(M+1))
{计算出明日MACD=MACD时的DIFF值}
DIF拐头价:=(DIF*(SHORT+1)*(LONG+1)-(LONG+1)*(SHORT-1)*C的SHORT日指数移动平均+(SHORT+1)*(LONG-1)*C的LONG日指数移动平均)/(2*((LONG+1)-(SHORT+1)))画绿色,POINTDOT
金死叉价赋值:(JCSC*(SHORT+1)*(LONG+1)-(LONG+1)*(SHORT-1)*C的SHORT日指数移动平均+(SHORT+1)*(LONG-1)*C的LONG日指数移动平均)/(2*((LONG+1)-(SHORT+1))),NODRAW
柱变向价赋值:(DD*(SHORT+1)*(LONG+1)-(LONG+1)*(SHORT-1)*C的SHORT日指数移动平均+(SHORT+1)*(LONG-1)*C的LONG日指数移动平均)/(2*((LONG+1)-(SHORT+1))),画黄色,POINTDOT
如果柱变向价>=D拐头价返回柱变向价否则返回DRAWNULL
如果D拐头价<柱变向价返回DIF拐头价否则返回DRAWNULL
如果D拐头价>=柱变向价返回DIF拐头价否则返回DRAWNULL
ZJ赋值:上拐,COLOR0000FF
HY赋值:金死叉价,COLORFF00FF
IF(ZJ>1日前的ZJ,ZJ,DRAWNULL),画红色, 线宽为2
IF(HY>1日前的HY,HY,DRAWNULL),COLORMAGENTA, 线宽为2,NODRAW
IF(HY<1日前的HY,HY,DRAWNULL), 画蓝色, 线宽为2,NODRAW
当满足条件C>ZJ AND C>O时,在H和C之间画柱状线
当满足条件C>ZJ AND C>O时,在L和O之间画柱状线
当满足条件C>ZJ AND C>O时,在O和C之间画柱状线
当满足条件C>ZJ AND C<=O时,在H和L之间画柱状线
当满足条件C>ZJ AND C<=O时,在O和C之间画柱状线
当满足条件收盘价=ZJ时,在H和L之间画柱状线
当满足条件收盘价当满足条件收盘价当满足条件CO时,在H和C之间画柱状线
当满足条件CO时,在O和L之间画柱状线
当满足条件CO时,在O和C之间画柱状线
当满足条件C当满足条件C HD0赋值:DIF上穿DEA

输出买入准备:DRAWICON(柱变向价上穿DIF拐头价,上拐,34)
输出卖出准备:DRAWICON(DIF拐头价上穿柱变向价,下拐,35)
SBL赋值:STRCAT(STRCAT(STRCAT(STRCAT(DYBLOCK,HYBLOCK),FGBLOCK),GNBLOCK),ZDBLOCK)
当满足条件ISLASTBAR时,在横轴0.01纵轴0.005位置书写文字

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