相关简介:通达信经典MACD金叉死叉指标公式源码分享

     通达信指标公式源码概况:

  指标类别:通达信指标公式

  授权方式:免费版

  指标评级:★★★★★

  指标分类:策略

  画线方法:副图

   一、本指标的用法说明:

   1、股价相对低位;

   2、金叉买入(长影线结合金叉最好),死叉卖出(当然,离设定止损有一定距离,可观察后决定是不是先出);

 

通达信指标公式源码:

    AA:=SMA((CLOSE-MA(CLOSE,13))/MA(CLOSE,13)*10,3,1);
    DIFf:=(EMA(CLOSE,9)-EMA(CLOSE,21))*2;
    趋势:EMA(DIFF,9),coloryellow,LINETHICK1;
    FILLRGN(DIFF,趋势,DIFF>趋势,(RGB(200,100,100)));
    MACD:=(DIFF-趋势)*2;
    STICKLINE(MACD<REF(MACD,1)ANDMACD>0,0,MACD,8,0),COLOR333300;
    STICKLINE(MACD<REF(MACD,1)ANDMACD>0,0,MACD,7,0),COLOR444400;
    STICKLINE(MACD<REF(MACD,1)ANDMACD>0,0,MACD,6,0),COLOR555500;
    STICKLINE(MACD<REF(MACD,1)ANDMACD>0,0,MACD,5,0),COLOR777700;
    STICKLINE(MACD<REF(MACD,1)ANDMACD>0,0,MACD,4,0),COLOR999900;
    STICKLINE(MACD<REF(MACD,1)ANDMACD>0,0,MACD,3,0),COLORBBBB00;
    STICKLINE(MACD<REF(MACD,1)ANDMACD>0,0,MACD,2,0),COLORDDDD00;
    STICKLINE(MACD<REF(MACD,1)ANDMACD>0,0,MACD,1,0),COLORFFFF00;
    STICKLINE(MACD>=REF(MACD,1)ANDMACD>0,0,MACD,8,0),COLOR000033;
    STICKLINE(MACD>=REF(MACD,1)ANDMACD>0,0,MACD,7,0),COLOR000044;
    STICKLINE(MACD>=REF(MACD,1)ANDMACD>0,0,MACD,6,0),COLOR000055;
    STICKLINE(MACD>=REF(MACD,1)ANDMACD>0,0,MACD,5,0),COLOR000077;
    STICKLINE(MACD>=REF(MACD,1)ANDMACD>0,0,MACD,4,0),COLOR000099;
    STICKLINE(MACD>=REF(MACD,1)ANDMACD>0,0,MACD,3,0),COLOR0000BB;
    STICKLINE(MACD>=REF(MACD,1)ANDMACD>0,0,MACD,2,0),COLOR0000DD;
    STICKLINE(MACD>=REF(MACD,1)ANDMACD>0,0,MACD,1,0),COLOR0000FF;
    STICKLINE(MACD>REF(MACD,1)ANDMACD<0,0,MACD,8,0),COLOR330033;
    STICKLINE(MACD>REF(MACD,1)ANDMACD<0,0,MACD,7,0),COLOR440044;
    STICKLINE(MACD>REF(MACD,1)ANDMACD<0,0,MACD,6,0),COLOR550055;
    STICKLINE(MACD>REF(MACD,1)ANDMACD<0,0,MACD,5,0),COLOR770077;
    STICKLINE(MACD>REF(MACD,1)ANDMACD<0,0,MACD,4,0),COLOR990099;
    STICKLINE(MACD>REF(MACD,1)ANDMACD<0,0,MACD,3,0),COLORBB00BB;
    STICKLINE(MACD>REF(MACD,1)ANDMACD<0,0,MACD,2,0),COLORDD00DD;
    STICKLINE(MACD>REF(MACD,1)ANDMACD<0,0,MACD,1,0),COLORFF00FF;
    STICKLINE(MACD<=REF(MACD,1)ANDMACD<0,0,MACD,8,0),COLOR003300;
    STICKLINE(MACD<=REF(MACD,1)ANDMACD<0,0,MACD,7,0),COLOR004400;
    STICKLINE(MACD<=REF(MACD,1)ANDMACD<0,0,MACD,6,0),COLOR005500;
    STICKLINE(MACD<=REF(MACD,1)ANDMACD<0,0,MACD,5,0),COLOR007700;
    STICKLINE(MACD<=REF(MACD,1)ANDMACD<0,0,MACD,4,0),COLOR009900;
    STICKLINE(MACD<=REF(MACD,1)ANDMACD<0,0,MACD,3,0),COLOR00BB00;
    STICKLINE(MACD<=REF(MACD,1)ANDMACD<0,0,MACD,2,0),COLOR00DD00;
    STICKLINE(MACD<=REF(MACD,1)ANDMACD<0,0,MACD,1,0),COLOR00FF00;
    BB:=VOL/((HIGH-LOW)*2-ABS(CLOSE-OPEN));
    主买:=IF(CLOSE>OPEN,BB*(HIGH-LOW),IF(CLOSE<OPEN,BB*((HIGH-OPEN)+(CLOSE-LOW)),VOL/2));
    主卖:=IF(CLOSE>OPEN,0-BB*((HIGH-CLOSE)+(OPEN-LOW)),IF(CLOSE<OPEN,0-BB*(HIGH-LOW),0-VOL/2));
    ZJ:=(主买+主卖);
    YX:=BARSSINCE(ZJ)+1;
    QM:=BARSLAST(ZJ<=0);
    主买:=IF(QM<0,YX,QM);
    QM:=BARSLAST(ZJ>=0);
    主卖:=IF(QM<0,YX,QM);
    动力:=(主买-主卖);
    强买:=(EMA(主买,12)-EMA(主买,26));
    强卖:=(EMA(主卖,12)-EMA(主卖,26));
    买方能量:=EMA(强买,9);
    卖方能量:=EMA(强卖,9);
    能量:=(买方能量-卖方能量);
    量价线:((EMA(CLOSE,9)-EMA(CLOSE,21))*2+AA+能量/2)/2;
    PARTLINE(量价线,量价线>=REF(量价线,1),RGB(255,0,0),量价线<REF(量价线,1),RGB(0,0,255)),LINETHICK2;
    零轴:0,colorgray;
    gj:=MAX(C,O);
    L4:=LLV(gj,4);
    jl:=(HHV(diff,55)-LLV(diff,55))/5;
    gt:=趋势>REF(趋势,1)ANDREF(趋势,1)<REF(趋势,2);
    A1:=BARSLAST(REF(gt,1));
    底背离:=REF(L4,A1+1)>CLOSEANDdiff>REF(diff,A1+1)ANDgt;
    DRAWLINE(A1=0,趋势,底背离,REF(趋势,A1),0),colorred,LINETHICK2;
    DRAWLINE(底背离,趋势,底背离,REF(趋势,A1),0),colorred,LINETHICK2;
    DRAWTEXT(底背离,REF(趋势,A1),'底背离'),COLORFF00FF;
    H4:=HHV(gj,4);
    gt2:=趋势<REF(趋势,1)ANDREF(趋势,1)>REF(趋势,2);
    A2:=BARSLAST(REF(gt2,1));
    顶背离:=REF(H4,A2+1)<H4ANDdiff<REF(diff,A2+1)ANDgt2;
    DRAWLINE(A2=0,趋势,顶背离,REF(趋势,A2),0),colorgreen,LINETHICK2;
    DRAWLINE(顶背离,趋势,顶背离,REF(趋势,A2),0),colorgreen,LINETHICK2;
    DRAWTEXT(顶背离,REF(趋势,A2),'顶背离'),colorgreen;
    DRAWICON(CROSS(DIFF,趋势),趋势,"BUY");
    DIFF:=(Ema(CLOSE,12)-EMA(CLOSE,26));
    DEA:=EMA(DIFF,9),COLORFF00FF,LINETHICK2;
    CD:=2*(DIFF-DEA),COLORstICK,LINETHICK2;
    STICKLINE(((CD<REF(CD,1))AND(CD>0)),0,20,2,0),LINETHICK2,COLOR00FF66;
    STICKLINE(((CD>REF(CD,1))AND(CD<0)),0,20,2,0),LINETHICK2,COLORFF00FF;
    RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
    K:SMA(RSV,3,1),COLORWHITE;
    D:SMA(K,3,1),COLORYELLOW;
    J:3*K-2*D,COLORRED;
    周K:="kdj.K#WEEK"(9,3,3);
    周D:="kdJ.D#WEEK"(9,3,3);
    月K:="KDJ.K#MONTH"(9,3,3);
    月D:="KDJ.D#MONTH"(9,3,3);
    DRAWICON(K<20ANDcrOSS(K,D),D,1);
    周金:DRAWTEXT(CROSS(REF(周K,1),REF(周D,1)),D,'▲'),COLORRED;
    周叉:DRAWTEXT(CROSS(REF(周D,1),REF(周K,1)),D*1.5,'▼'),COLORGREEN;
    月金:DRAWTEXT(CROSS(REF(月K,1),REF(月D,1)),D,'▲'),COLORWHITE;
    月叉:DRAWTEXT(CROSS(REF(月D,1),REF(月K,1)),D*1.5,'▼'),COLORYELLOW;
    起涨:IF(DIFF<0,30,0),COLORYELLOW,LINETHICK2;
    大涨:IF(DIFF<0,0,DIFF),COLORWHITE,LINETHICK2;
    下跌:IF(DIFF<DEA,DIFF,DEA),COLOR00FF00,LINETHICK2;
    总趋:IF(DIFF>DEA,DEA,DEA)*60,COLORFF00FF,LINETHICK2;
    AA:=CROSS(DIFF,DEA);
    DRAWICON(AA,-0.02,5);
    M5:=MA(C,5);
    M10:=MA(C,10);
    T:=BARSLAST(CROSS(M10,M5));
    T1:=REF(T,T+1)+T+1;
    YX:=BARSLAST(CURRBARSCOUNT=CONST(T)+1);
    XY:=BARSLAST(CURRBARSCOUNT=CONST(T1)+1);
    STICKLINE(YX>=0,REF(H,YX),REF(H,YX),4,0)COLOR70FFCA;
    STICKLINE(XY>=0,REF(H,XY),REF(H,XY),4,0)COLORFFFFFF;
    ZF:=(C-REF(C,1))/REF(C,1)*100;
    DRAWTEXT(YX,L*0.98,VARCAT(VARCAT('一次死叉涨跌',VAR2STR(ZF,2)),'%'))COLOR70FFCA;
    DRAWTEXT(XY,L*0.98,VARCAT(VARCAT('二次死叉涨跌',VAR2STR(ZF,2)),'%'))COLORFFFFFF;

[源码注释]通达信公式动态翻译结果

   AA赋值:(收盘价-收盘价的13日简单移动平均)/收盘价的13日简单移动平均*10的3日[1日权重]移动平均

   DIFF赋值:(收盘价的9日指数移动平均-收盘价的21日指数移动平均)*2

   输出趋势:DIFF的9日指数移动平均,画黄色,线宽为1

   FILLRGN(DIFF,趋势,DIFF>

   趋势,(自定色))

   MACD赋值:(DIFF-趋势)*2

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD>

   0,0,MACD,8,0),COLOR333300

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD>

   0,0,MACD,7,0),COLOR444400

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD>

   0,0,MACD,6,0),COLOR555500

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD>

   0,0,MACD,5,0),COLOR777700

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD>

   0,0,MACD,4,0),COLOR999900

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD>

   0,0,MACD,3,0),COLORBBBB00

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD>

   0,0,MACD,2,0),COLORDDDD00

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD>

   0,0,MACD,1,0),COLORFFFF00

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD>

   0,0,MACD,8,0),COLOR000033

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD>

   0,0,MACD,7,0),COLOR000044

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD>

   0,0,MACD,6,0),COLOR000055

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD>

   0,0,MACD,5,0),COLOR000077

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD>

   0,0,MACD,4,0),COLOR000099

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD>

   0,0,MACD,3,0),COLOR0000BB

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD>

   0,0,MACD,2,0),COLOR0000DD

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD>

   0,0,MACD,1,0),COLOR0000FF

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD<

   0,0,MACD,8,0),COLOR330033

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD<

   0,0,MACD,7,0),COLOR440044

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD<

   0,0,MACD,6,0),COLOR550055

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD<

   0,0,MACD,5,0),COLOR770077

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD<

   0,0,MACD,4,0),COLOR990099

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD<

   0,0,MACD,3,0),COLORBB00BB

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD<

   0,0,MACD,2,0),COLORDD00DD

   当满足条件MACD>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   1日前的MACDANDMACD<

   0,0,MACD,1,0),COLORFF00FF

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD<

   0,0,MACD,8,0),COLOR003300

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD<

   0,0,MACD,7,0),COLOR004400

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD<

   0,0,MACD,6,0),COLOR005500

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD<

   0,0,MACD,5,0),COLOR007700

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD<

   0,0,MACD,4,0),COLOR009900

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD<

   0,0,MACD,3,0),COLOR00BB00

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD<

   0,0,MACD,2,0),COLOR00DD00

   当满足条件MACD<时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =1日前的MACDANDMACD<

   0,0,MACD,1,0),COLOR00FF00

   BB赋值:成交量(手)/((最高价-最低价)*2-收盘价-开盘价的绝对值)

   主买赋值:如果收盘价>,返回?,否则返回?

   开盘价,BB*(最高价-最低价),如果收盘价<,返回?,否则返回?

   开盘价,BB*((最高价-开盘价)+(收盘价-最低价)),成交量(手)/2))

   主卖赋值:如果收盘价>,返回?,否则返回?

   开盘价,0-BB*((最高价-收盘价)+(开盘价-最低价)),如果收盘价<,返回?,否则返回?

   开盘价,0-BB*(最高价-最低价),0-成交量(手)/2))

   ZJ赋值:(主买+主卖)

   YX赋值:首次ZJ距今天数+1

   QM赋值:上次ZJ<距今天数

   =0)

   主买赋值:如果QM<,返回?,否则返回?

   0,YX,QM)

   QM赋值:上次ZJ>距今天数

   =0)

   主卖赋值:如果QM<,返回?,否则返回?

   0,YX,QM)

   动力赋值:(主买-主卖)

   强买赋值:(主买的12日指数移动平均-主买的26日指数移动平均)

   强卖赋值:(主卖的12日指数移动平均-主卖的26日指数移动平均)

   买方能量赋值:强买的9日指数移动平均

   卖方能量赋值:强卖的9日指数移动平均

   能量赋值:(买方能量-卖方能量)

   输出量价线:((收盘价的9日指数移动平均-收盘价的21日指数移动平均)*2+AA+能量/2)/2

   PARTLINE(量价线,量价线>

   =1日前的量价线,自定色,量价线<

   1日前的量价线,自定色),线宽为2

   输出零轴:0,画深灰色

   GJ赋值:收盘价和开盘价的较大值

   L4赋值:4日内GJ的最低值

   JL赋值:(55日内DIFF的最高值-55日内DIFF的最低值)/5

   GT赋值:趋势>

   1日前的趋势ANDREF(趋势,1)<

   2日前的趋势

   A1赋值:上次1日前的GT距今天数

   底背离赋值:A1+1日前的L4>

   CLOSEANDDIFF>

   A1+1日前的DIFFANDGT

   当满足条件A1=0时,在趋势位置画直线起点,当满足条件底背离时,在A1日前的趋势位置画直线终点,0表示是否延长.,画红色,线宽为2

   当满足条件底背离时,在趋势位置画直线起点,当满足条件底背离时,在A1日前的趋势位置画直线终点,0表示是否延长.,画红色,线宽为2

   当满足条件底背离时,在A1日前的趋势位置书写文字,COLORFF00FF

   H4赋值:4日内GJ的最高值

   GT2赋值:趋势<

   1日前的趋势ANDREF(趋势,1)>

   2日前的趋势

   A2赋值:上次1日前的GT2距今天数

   顶背离赋值:A2+1日前的H4<

   H4ANDDIFF<

   A2+1日前的DIFFANDGT2

   当满足条件A2=0时,在趋势位置画直线起点,当满足条件顶背离时,在A2日前的趋势位置画直线终点,0表示是否延长.,画绿色,线宽为2

   当满足条件顶背离时,在趋势位置画直线起点,当满足条件顶背离时,在A2日前的趋势位置画直线终点,0表示是否延长.,画绿色,线宽为2

   当满足条件顶背离时,在A2日前的趋势位置书写文字,画绿色

   当满足条件DIFF上穿趋势时,在趋势位置画”买入开仓”号图标

   DIFF赋值:(收盘价的12日指数移动平均-收盘价的26日指数移动平均)

   DEA赋值:DIFF的9日指数移动平均,COLORFF00FF,线宽为2

   CD赋值:2*(DIFF-DEA),COLORSTICK,线宽为2

   当满足条件((CD<1日前的CD)AND(CD>0))时,在0和20位置之间画柱状线,宽度为2,0不为0则画空心柱.,线宽为2,COLOR00FF66

   当满足条件((CD>1日前的CD)AND(CD<0))时,在0和20位置之间画柱状线,宽度为2,0不为0则画空心柱.,线宽为2,COLORFF00FF

   RSV赋值:(收盘价-9日内最低价的最低值)/(9日内最高价的最高值-9日内最低价的最低值)*100

   输出K:RSV的3日[1日权重]移动平均,画白色

   输出D:K的3日[1日权重]移动平均,画黄色

   输出J:3*K-2*D,画红色

   周K赋值:”KDJ的K[取周线数据]”(9,3,3)

   周D赋值:”KDJ的D[取周线数据]”(9,3,3)

   月K赋值:”KDJ的K[取月线数据]”(9,3,3)

   月D赋值:”KDJ的D[取月线数据]”(9,3,3)

   当满足条件K<20ANDCROSS(K,D)时,在D位置画1号图标

   输出周金:当满足条件1日前的周K上穿1日前的周D时,在D位置书写文字,画红色

   输出周叉:当满足条件1日前的周D上穿1日前的周K时,在D*1.5位置书写文字,画绿色

   输出月金:当满足条件1日前的月K上穿1日前的月D时,在D位置书写文字,画白色

   输出月叉:当满足条件1日前的月D上穿1日前的月K时,在D*1.5位置书写文字,画黄色

   输出起涨:如果DIFF<0,返回30,否则返回0,画黄色,线宽为2

   输出大涨:如果DIFF<0,返回0,否则返回DIFF,画白色,线宽为2

   输出下跌:如果DIFF<DEA,返回DIFF,否则返回DEA,COLOR00FF00,线宽为2

   输出总趋:如果DIFF>DEA,返回DEA,否则返回DEA*60,COLORFF00FF,线宽为2

   AA赋值:DIFF上穿DEA

   当满足条件AA时,在-0.02位置画5号图标

   M5赋值:收盘价的5日简单移动平均

   M10赋值:收盘价的10日简单移动平均

   T赋值:上次M10上穿M5距今天数

   T1赋值:T+1日前的T+T+1

   YX赋值:上次到最后交易的周期=T的最后一日取值设为常数+1距今天数

   XY赋值:上次到最后交易的周期=T1的最后一日取值设为常数+1距今天数

   当满足条件YX>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =0,YX日前的最高价,YX日前的最高价,4,0)COLOR70FFCA

   当满足条件XY>时,在?和?位置之间画柱状线,宽度为?,?不为0则画空心柱.

   =0,XY日前的最高价,XY日前的最高价,4,0)COLORFFFFFF

   ZF赋值:(收盘价-1日前的收盘价)/1日前的收盘价*100

   当满足条件YX时,在最低价*0.98位置书写文字COLOR70FFCA

   当满足条件XY时,在最低价*0.98位置书写文字COLORFFFFFF

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。