怎么编程macd指标

时间:2025-01-22 22:06:47 游戏攻略

编写MACD指标的步骤如下:

计算短周期均线和长周期均线的差值

短周期均线通常设为12日,长周期均线通常设为26日。

差值计算公式为:`DIF = EMA(CLOSE, SHORT) - EMA(CLOSE, LONG)`,其中`EMA`表示指数移动平均线。

计算MACD指标的柱状图

柱状图是短周期均线和长周期均线的差值,计算公式为:`BAR = (DIF - DEA) * 2`。

计算DEA线

DEA线是DIF线的移动平均值,计算公式为:`DEA = (DEA_前一天 * 0.8) + (DIF_今天 * 0.2)`。

定义金叉和死叉

金叉:`B1 := CROSS(DIF, DEA)`,表示DIF线上穿DEA线。

死叉:`B2 := CROSS(DEA, DIF)`,表示DIF线下穿DEA线。

定义MACD值在水上还是水下

水上:`C1 := DIF > 0`。

水下:`C2 := DIF < 0`。

绘制MACD指标的图形

使用`STICKLINE`函数绘制柱状图,`COLORWHITE`表示白线(DIF线),`COLORYELLOW`表示黄线(DEA线)。

使用条件语句绘制金叉、死叉和其他形态。

```通达信

{ 定义MACD指标参数 }

A1:=MACD.DIF;

A2:=MACD.DEA;

A3:=MACD.MACD;

{ 计算DIF、DEA和MACD }

DIF:=EMA(CLOSE,12)-EMA(CLOSE,26);

DEA:=EMA(DIF,5);

MACD:=(DIF-DEA)*2;

{ 定义金叉和死叉 }

B1:=CROSS(DIF,DEA);

B2:=CROSS(DEA,DIF);

{ 定义MACD在水上还是水下 }

C1:=DIF>0;

C2:=DIF<0;

{ 绘制MACD指标的图形 }

STICKLINE(DIF>0,0,MACD,2,0),COLORRED;

STICKLINE(DIF<0,0,-MACD,2,0),COLORGREEN;

STICKLINE(DEA>0,0,DEA,2,0),COLORYELLOW;

STICKLINE(DEA<0,0,-DEA,2,0),COLORBLUE;

{ 绘制金叉和死叉 }

DRAWICON(CROSS(DIF,DEA),0,'金叉',0);

DRAWICON(CROSS(DEA,DIF),0,'死叉',0);

{ 定义其他形态 }

XG:=NOT(REF(MACD,1)=MACD);

STICKLINE(XG,0,MACD*10,2,0),COLORYELLOW;

STICKLINE(MACD>=MACD*2 AND MACD*2>HHV(MACD,250),MACD*10,MACD*10,2,0),COLORMAGENTA;

牛:=NOT(REF(MACD,1)=REF(MACD,2)) AND MACD=MACD*2;

IF(MACD>=MACD*2 AND REF(MACD,1)=0,1,0),COLORYELLOW;

DRAWTEXT(MACD>=MACD*2 AND REF(MACD,1)=0 ,1,'捕牛'),COLORYELLOW;

DRAWTEXT(牛,-1,'大牛'),COLORYELLOW;

```

这个代码示例可以在通达信软件中使用,你可以根据自己的需求进行调整和优化。