实用 macd通达信指标公式源码
通达信指标公式源码超级无敌MACD
![通达信指标公式源码超级无敌MACD](https://img.taocdn.com/s3/m/ca4c13232e3f5727a5e962ec.png)
{MACD}DIF:EMA(CLOSE,6)-EMA(CLOSE,19),,NODRAW;DEA:EMA(DIF,9),NODRAW;MACD:2*(DIF-DEA),COLORSTICK;STICKLINE(MACD>0,MACD,0,0.5,0),COLORRED;STICKLINE(MACD<0,MACD,0,0.5,0),COLORGREEN;STICKLINE(MACD>0 AND MACD<REF(MACD,1),MACD,0,0.5,0),COLORWHITE; STICKLINE(MACD<0 AND MACD>REF(MACD,1),MACD,0,0.5,0),COLORFF00FF; FH1:=REF(MACD,1)<REF(MACD,2) AND REF(MACD,2)<REF(MACD,3) AND REF(MACD,3)<REF(MACD,4);FH2:=MACD>=0 AND COUNT(MACD>REF(MACD,1),1)=1;FH3:=FH1 AND FH2 AND EMA(C,13)>REF(EMA(C,13),1);FH4:=FH1 AND FH2 AND ABS((DIF-DEA)/C)<0.018;FH5:=FH1 AND FH2 AND MACD<0.10;VV:=CLOSE>OPEN AND MA(CLOSE,5)>MA(CLOSE,10) ANDMA(CLOSE,10)>MA(CLOSE,30)AND DIF>DEA AND MACD>REF(MACD,1) AND DIF>0 AND DEA>0 ANDMA(VOL,5)>MA(VOL,34) AND MA(CLOSE,30)>=REF(MA(CLOSE,30),1);佛手:IF(VV,1,0),NODRAW;{二次起动}X0:=BARSLAST((CROSS(MACD,REF(MACD,1)) AND MACD>0) ORCROSS(MACD,0));X1:=BARSLAST(CROSS(0.5,COUNT(MACD>REF(MACD,1),X0+1)=X0+1));{回} X2:=COUNT(MACD<REF(MACD,1),X1+1)=X1+1 ANDCOUNT(MACD<0,X1+1)<=2;X3:=REF(X2,1) AND MACD>REF(MACD,1) AND C>O AND C>REF(C,1); STICKLINE(X1=0 AND MACD>0,MACD,0,2,0),COLORDCDC00;{MACD缩头} STICKLINE(X3,MACD,0,2,0),COLOR0854FF;{二次起动};DRAWICON(佛手,-0.15,11);二次翻红:(FH3 OR FH4 OR FH5),COLORRED,NODRAW;低买:CROSS(DIF,DEA) AND DIF<0,COLORFF00FF,NODRAW;加油:CROSS(DIF,DEA) AND DIF>0,COLORYELLOW,NODRAW; DRAWICON(二次翻红,-0.05,1);DRAWTEXT(二次翻红,-0.15,'↖翻红'),COLORRED;DRAWTEXT(CROSS(DIF,DEA) AND DIF<0,DEA-0.02,'↖低买'),COLORFF00FF; DRAWTEXT(CROSS(DIF,DEA) AND DIF>0,DEA-0.05,'↖加油'),COLORYELLOW; XG:二次翻红OR 低买OR 加油,NODRAW;YLZC:=IF(CLOSE=INDEXC,(INDEXC+INDEXH+INDEXL+INDEXO)/4,AMOUNT/ (VOL+0.01)/100);阻价:=IF(CLOSE=INDEXC,YLZC+INDEXC-INDEXL,YLZC+(CLOSE-LOW));支价:=IF(CLOSE=INDEXC,INDEXL+INDEXC-YLZC,LOW+(CLOSE-YLZC));今压:REF(阻价,1),LINETHICK0,COLORAA11BB,NODRAW;今撑:REF(支价,1),LINETHICK0,COLOR009900,NODRAW;明压:阻价,LINETHICK0,NODRAW;明撑:支价,LINETHICK0,NODRAW;DIFF:DIF,COLORRED,LINETHICK2;DDEA:DEA,COLORYELLOW,LINETHICK2;。
MACD通达信指标公式源码
![MACD通达信指标公式源码](https://img.taocdn.com/s3/m/29ff651cac02de80d4d8d15abe23482fb5da0250.png)
MACD通达信指标公式源码
MACD指标是一种常用的技术指标,它可以帮助交易者判断股票价格的趋势。
MACD指标由两条线组成,一条是快速线(称为DIF线),另一条是慢速线(称为DEA线)。
MACD指标的计算方法是将两条线的数值相减得到MACD值,然后再计算MACD值的移动平均线得到信号线。
MACD指标的计算方法如下:
第一步:计算快速线DIF值
DIF = EMA(Close, Short) - EMA(Close, Long)
其中,Close为收盘价,Short为快速线的参数,Long为慢速线的参数,EMA为指数移动平均线。
在通达信软件中,Short通常为12,Long通常为26
第二步:计算慢速线DEA值
DEA = EMA(DIF, Mid)
其中,Mid为DEA线的参数,通常为9
第三步:计算MACD值
MACD=(DIF-DEA)*2
第四步:计算MACD移动平均线
MACD_SIGNAL=EMA(MACD,MACD_CYCLE)
其中,MACD_CYCLE为MACD移动平均线的参数,通常为6
以上是MACD指标在通达信软件中的计算方法,交易者可以根据自己的需求来调整MACD的参数,以适应不同的市场情况。
MACD指标主要用于判断股票价格的趋势,通常当MACD值上穿信号线时,表示股票价格可能会上涨;当MACD值下穿信号线时,表示股票价格可能会下跌。
交易者可以结合其他技术指标一起使用,以提高交易的准确率。
MACD指标是一种比较简单易懂的技术指标,适合新手交易者使用。
通达信指标公式源码 挺好用的MACD佛手
![通达信指标公式源码 挺好用的MACD佛手](https://img.taocdn.com/s3/m/4a2a2e8df705cc1754270968.png)
DIF:EMA(CLOSE,6)-EMA(CLOSE,19),,NODRAW;DEA:EMA(DIF,9),NODRAW;MACD:2*(DIF-DEA),COLORSTICK;STICKLINE(MACD>0,MACD,0,0.5,0),COLORRED;STICKLINE(MACD<0,MACD,0,0.5,0),COLORGREEN;STICKLINE(MACD>0 AND MACD<REF(MACD,1),MACD,0,0.5,0),COLORWHITE; STICKLINE(MACD<0 AND MACD>REF(MACD,1),MACD,0,0.5,0),COLORFF00FF; FH1:=REF(MACD,1)<REF(MACD,2) AND REF(MACD,2)<REF(MACD,3) AND REF(MACD,3)<REF(MACD,4);FH2:=MACD>=0 AND COUNT(MACD>REF(MACD,1),1)=1;FH3:=FH1 AND FH2 AND EMA(C,13)>REF(EMA(C,13),1);FH4:=FH1 AND FH2 AND ABS((DIF-DEA)/C)<0.018;FH5:=FH1 AND FH2 AND MACD<0.10;VV:=CLOSE>OPEN AND MA(CLOSE,5)>MA(CLOSE,10) ANDMA(CLOSE,10)>MA(CLOSE,30)AND DIF>DEA AND MACD>REF(MACD,1) AND DIF>0 AND DEA>0 ANDMA(VOL,5)>MA(VOL,34) AND MA(CLOSE,30)>=REF(MA(CLOSE,30),1);佛手:IF(VV,1,0),NODRAW;{二次起动}X0:=BARSLAST((CROSS(MACD,REF(MACD,1)) AND MACD>0) ORCROSS(MACD,0));X1:=BARSLAST(CROSS(0.5,COUNT(MACD>REF(MACD,1),X0+1)=X0+1));{回} X2:=COUNT(MACD<REF(MACD,1),X1+1)=X1+1 ANDCOUNT(MACD<0,X1+1)<=2;X3:=REF(X2,1) AND MACD>REF(MACD,1) AND C>O AND C>REF(C,1); STICKLINE(X1=0 AND MACD>0,MACD,0,2,0),COLORDCDC00;{MACD缩头}STICKLINE(X3,MACD,0,2,0),COLOR0854FF;{二次起动};DRAWICON(佛手,-0.15,11);二次翻红:(FH3 OR FH4 OR FH5),COLORRED,NODRAW;低买:CROSS(DIF,DEA) AND DIF<0,COLORFF00FF,NODRAW;加油:CROSS(DIF,DEA) AND DIF>0,COLORYELLOW,NODRAW; DRAWICON(二次翻红,-0.05,1);DRAWTEXT(二次翻红,-0.15,'↖翻红'),COLORRED;DRAWTEXT(CROSS(DIF,DEA) AND DIF<0,DEA-0.02,'↖低买'),COLORFF00FF; DRAWTEXT(CROSS(DIF,DEA) AND DIF>0,DEA-0.05,'↖加油'),COLORYELLOW; XG:二次翻红OR 低买OR 加油,NODRAW;YLZC:=IF(CLOSE=INDEXC,(INDEXC+INDEXH+INDEXL+INDEXO)/4,AMOUNT/ (VOL+0.01)/100);阻价:=IF(CLOSE=INDEXC,YLZC+INDEXC-INDEXL,YLZC+(CLOSE-LOW));支价:=IF(CLOSE=INDEXC,INDEXL+INDEXC-YLZC,LOW+(CLOSE-YLZC));今压:REF(阻价,1),LINETHICK0,COLORAA11BB,NODRAW;今撑:REF(支价,1),LINETHICK0,COLOR009900,NODRAW;明压:阻价,LINETHICK0,NODRAW;明撑:支价,LINETHICK0,NODRAW;DIFF:DIF,COLORRED,LINETHICK2;DDEA:DEA,COLORYELLOW,LINETHICK2;。
MACD顶底背离通达信指标公式源码
![MACD顶底背离通达信指标公式源码](https://img.taocdn.com/s3/m/dfa629a59a89680203d8ce2f0066f5335a8167d0.png)
MACD顶底背离通达信指标公式源码/*头文件引用*/#include "stdafx.h"#include "SetIndexData.h"/*背离判断函数*/BOOL BackwardJudge(int n, float *dd, float *top, float *bottom)int i, t_pos = 0;float maxval = 0, minval = 0;for(i=0;i<n;i++)if(maxval < dd[i])maxval = dd[i];t_pos = i;}}maxval = dd[t_pos];minval = dd[t_pos];for(i=t_pos;i>=0;i--)if(maxval < dd[i])maxval = dd[i];if(minval > dd[i])minval = dd[i];}*top = maxval;*bottom = minval;if(maxval == dd[0])return TRUE;else if(minval == dd[0])return FALSE;elsereturn FALSE;/*MACD顶底背离判断函数*/Export int MACDBackward(int n)int i;float *DIFF, *DEA, *MACD, *dd;float top = 0, bottom = 0;BOOL bType = FALSE;SetEmptyBarCount(FALSE); /*不跳过空记录*/DIFF = GetDiff(;DEA = GetDea(;MACD = GetMacd(;malloc(dd, sizeof(float)*n);bType = BackwardJudge(n, DEA, &top, &bottom);if(bType)for(i=0;i<n;i++)dd[i] = DIFF[i];bType = BackwardJudge(n, dd, &top, &bottom);if(bType)return 1; /*底背离*/elsereturn 2; /*顶背离*/}elsereturn 0; /*无背离*/上述代码是通达信公式语言的源码。
通达信指标公式源码好厉害的MACD背离(通达信副图指标)
![通达信指标公式源码好厉害的MACD背离(通达信副图指标)](https://img.taocdn.com/s3/m/27b6a33f2f60ddccdb38a001.png)
好厉害的MACD背离(通达信副图指标)DIF:EMA(CLOSE,12)-EMA(CLOSE,26),COLORRED,LINETHICK2;DEA:EMA(DIF,9),COLORWHITE,LINETHICK2;持仓段:=0,COLOR00CFFF;空仓段:=0,COLORFFCCFF;STICKLINE(DIF>DEA,-0.5,-0.6,10,1),COLOR00CFFF;STICKLINE(DIF<DEA,-0.5,-0.6,10,1),COLORFFCCFF;MACD:(DIF-DEA)*2,COLORSTICK;STICKLINE(((MACD<REF(MACD,1)) AND(MACD>0)),0,MACD,1,0),COLORLIBLUE,LINETHICK2;STICKLINE(((MACD>REF(MACD,1)) AND(MACD<0)),0,MACD,1,0),COLORFF00FF,LINETHICK2;建仓:IF(DIF<0,DIF,0),COLORYELLOW,LINETHICK2;加仓:IF(DIF<0,0,DIF),COLORRED,LINETHICK2;白线破仓:IF(DIF<DEA,DIF,DEA),COLORWHITE,LINETHICK2;趋势强弱:IF(DIF>DEA,DEA,DEA),COLORFF937F,LINETHICK2;AA:=COUNT(CROSS(DIF,DEA),BARSLAST(DEA>=0));二次金叉:=CROSS(DIF,DEA) AND DEA<0 AND COUNT(AA=2,21)=1; DRAWTEXT(二次金叉,0.2,' 二次金叉'),COLORYELLOW;A1:=BARSLAST(REF(CROSS(DIF,DEA),1));底背离:=REF(CLOSE,A1+1)>CLOSE AND DIF>REF(DIF,A1+1) AND CROSS(DIF,DEA); STICKLINE(底背离,0,0.03,6,0),COLOR00FF00;底背:DRAWLINE(A1=0,DEA,底背离,DEA,0),COLORRED,LINETHICK4; DRAWTEXT(底背离,0.12,' 底背离'),COLORFF00FF;A2:=BARSLAST(REF(CROSS(DEA,DIF),1));顶背离:=REF(CLOSE,A2+1)<CLOSE AND REF(DIF,A2+1)>DIF AND CROSS(DEA,DIF); 顶背:DRAWLINE(A2=0,DEA,顶背离,DEA,0),COLORGREEN,LINETHICK4;。
MACD背离自动画线通达信指标公式源码
![MACD背离自动画线通达信指标公式源码](https://img.taocdn.com/s3/m/8f11f1869fc3d5bbfd0a79563c1ec5da50e2d605.png)
MACD背离自动画线通达信指标公式源码MACD(Moving Average Convergence Divergence)是一种常用的股票技术指标,用于分析股票的趋势和交易信号。
MACD背离是一种常见的技术分析方法,用于判断趋势的反转点,即价格走势与MACD指标走势不一致的情况。
下面是使用通达信编写MACD背离自动画线指标的源码。
```c/*MACD背离自动画线指标*功能:自动识别MACD背离点并在图表中标注出来*/#include "stdafx.h"#include "stdio.h"#include "string.h"#include "windows.h"//确定最低点、最高点时使用的价格周期数#define MIN_PRICE_DURATION 9#define MAX_PRICE_DURATION 10/**输入参数:*MACD:一个包含MACD数据的数组* price:一个包含价格数据的数组*返回值:*0:没有背离*1:向上背离*-1:向下背离*/int CheckDivergence(float *MACD, float *price) int i, j, k;int start, end;int low_index, high_index;float min_price, max_price;int MACD_bottom, MACD_top;int price_bottom, price_top;float MACD_bottom_value, MACD_top_value;float price_bottom_value, price_top_value;/**阶段1:寻找MACD底背离*/start = MAX_PRICE_DURATION + 1;end = start + MIN_PRICE_DURATION;low_index = -1;high_index = -1;min_price = price[start];max_price = price[start];for (i = start; i < end; i++)//查找最低点if (price[i] < min_price)low_index = i;min_price = price[i];}//查找最高点if (price[i] > max_price)high_index = i;max_price = price[i];}}//无法找到底背离点if (low_index == -1 , high_index == -1)}MACD_bottom = 0;price_bottom = 0;//寻找MACD底背离for (i = start; i < end; i++)if (i == low_index)//找到最低点对应的MACD数值MACD_bottom = i;MACD_bottom_value = MACD[i];}if (i == high_index)//找到最高点对应的MACD数值price_bottom = i;price_bottom_value = price[i];}}//如果最低点出现在最高点之后,则没有底背离if (MACD_bottom > price_bottom)}/**阶段2:寻找MACD顶背离*/start = MAX_PRICE_DURATION + 1; end = start + MIN_PRICE_DURATION; low_index = -1;high_index = -1;min_price = price[start];max_price = price[start];for (i = start; i < end; i++)//查找最低点if (price[i] < min_price)low_index = i;min_price = price[i];}//查找最高点if (price[i] > max_price)max_price = price[i];}}//无法找到顶背离点if (low_index == -1 , high_index == -1) return 0;}MACD_top = 0;price_top = 0;//寻找MACD顶背离for (i = start; i < end; i++)if (i == low_index)//找到最低点对应的MACD数值MACD_top = i;MACD_top_value = MACD[i];}if (i == high_index)//找到最高点对应的MACD数值price_top_value = price[i];}}//如果最高点出现在最低点之后,则没有顶背离if (MACD_top > price_top)return 0;}//判断背离类型if (price_bottom_value < price_top_value && MACD_bottom_value > MACD_top_value)return 1; // 向上背离}if (price_bottom_value > price_top_value && MACD_bottom_value < MACD_top_value)return -1; // 向下背离}return 0;int mainfloat MACD[100] = {0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 4.0, 3.0, 2.0, 1.0};float price[100] = {1.0, 2.0, 3.0, 4.0, 3.0, 2.0, 1.0, 0.0, -1.0, -2.0};int result = CheckDivergence(MACD, price);printf("Result: %d\n", result);return 0;```该源码实现了一个简单的MACD背离自动画线指标。
MACD三背离通达信指标公式源码
![MACD三背离通达信指标公式源码](https://img.taocdn.com/s3/m/f8600c575e0e7cd184254b35eefdc8d376ee14e0.png)
MACD三背离通达信指标公式源码以下是通达信软件中MACD三背离指标的公式源码:```python#定义变量VAR1:=CLOSE-REF(CLOSE,1);VAR2:=EMA(VAR1,12);VAR3:=EMA(VAR1,26);VAR5:=(VAR2-VAR3)/VAR2*100;VAR6:=EMA(VAR5,9);VAR7:=IF(VAR5>0,VAR5,VAR6);VAR8:=EMA(VAR7,9);VAR4:=(VAR7-VAR8);#计算背离判断DIVERGENCE1:=IF(VAR5>0,IF(CROSS(VAR7,VAR8),1,-1),0);DIVERGENCE2:=IF(VAR5>0,IF(CROSS(VAR7,0),-1,IF(CROSS(VAR4,0),1,0)),0);DIVERGENCE:=IF(DIVERGENCE1==-1ORDIVERGENCE2==-1,-1,0);#输出背离信号DRAWTEXT(DIVERGENCE,'背离',60,DIVERGENCE);```该源码主要是计算MACD三背离的指标,其中包括了MACD线和信号线的计算,以及背离的判断和输出。
首先,VAR1是计算当日收盘价与前一日收盘价的差值。
VAR2和VAR3分别是VAR1的12日指数移动平均值和26日指数移动平均值。
然后,VAR5是MACD线的计算,即VAR2和VAR3的差值除以VAR2后乘以100。
接下来,VAR6是VAR5的9日指数移动平均值,并通过IF语句将VAR5和VAR6的较大值赋给VAR7,以确保VAR7始终大于零。
VAR8是VAR7的9日指数移动平均值。
最后,VAR4是VAR7和VAR8的差值,即MACD柱。
DIVERGENCE1和DIVERGENCE2分别计算第一类背离和第二类背离。
第一类背离是根据MACD线和信号线的交叉情况判断,如果MACD线由上方向下穿信号线,则为1,反之为-1、第二类背离是根据MACD柱的变化情况判断,如果MACD柱由正值变为负值,则为-1,反之如果MACD柱由负值变为正值,则为1最后,根据背离的判断结果,使用DRAWTEXT函数在图表上绘制背离信号。
MACD看透主力通达信指标公式源码
![MACD看透主力通达信指标公式源码](https://img.taocdn.com/s3/m/883c515da66e58fafab069dc5022aaea988f4156.png)
MACD看透主力通达信指标公式源码该算法主要通过计算不同时间段的移动平均线之间的差异来判断主力资金的买入和卖出行为。
MACD公式包括两个指标:DIF(差离值)和DEA (差离平均值)。
DIF的计算公式为:DIF = EMA(close, short) - EMA(close, long)其中,EMA代表指数移动平均线,short代表短期时间段,long代表长期时间段。
(1)计算短期移动平均线EMA(close, short):EMA(close, short) = (2 * close + (short - 1) * EMA(close, short)) / (short + 1)(2)计算长期移动平均线EMA(close, long):EMA(close, long) = (2 * close + (long - 1) * EMA(close, long)) / (long + 1)DEA的计算公式为:DEA = EMA(DIF, mid)其中,mid代表DEA的时间周期。
(3)计算差离平均值DEA:EMA(DIF, mid) = (2 * DIF + (mid - 1) * EMA(DIF, mid)) / (mid + 1)最后,通过计算DIF和DEA的差异,可以得到MACD的值:MACD=(DIF-DEA)*2这是一个基本的MACD指标计算公式,可以用于分析主力资金的买入和卖出信号。
通达信指标公式源码实现如下:```pythondef calculate_macd(close, short, long, mid):#计算DIFema_short = calculate_ema(close, short)ema_long = calculate_ema(close, long)dif = ema_short - ema_long#计算DEAdea = calculate_ema(dif, mid)#计算MACDmacd = (dif - dea) * 2return dif, dea, macddef calculate_ema(values, period):ema = []for i in range(len(values)):if i == 0:ema.append(values[i])else:ema.append((2 * values[i] + (period - 1) * ema[i - 1]) / (period + 1))return ema```上述代码中,`calculate_macd`函数计算DIF、DEA和MACD值,`calculate_ema`函数用于计算指数移动平均线。
通达信指标公式源码专做主升行情的指标
![通达信指标公式源码专做主升行情的指标](https://img.taocdn.com/s3/m/3394d72e001ca300a6c30c22590102020740f2bc.png)
通达信指标公式源码专做主升行情的指标通达信是一种常用的股票分析软件,它提供了许多指标公式用于技术分析。
在主升行情中,投资者通常希望找到股票走势的强势点,以便进行买入操作。
下面是一些适用于主升行情的通达信指标公式源码。
1.MACD指标源码:```EMA12:=(2*CLOSE+11*EMA12[1])/13;EMA26:=(2*CLOSE+25*EMA26[1])/27;DIF:=(EMA12-EMA26);DEA:=(2*DIF+8*DEA[1])/10;MACD:=(DIF-DEA)*2;```MACD指标是一个常用的趋势指标,通过计算长短期指数移动平均线的差异,来判断股票走势的强弱。
当MACD指标向上穿越零轴时,为买入信号。
2.KDJ指标源码:```RSVP:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;RSV:EMA(CLOSE,9);K:(2*RSVP+2*K[1])/3;D:(2*K+2*D[1])/3;J:3*K-2*D;```KDJ指标是一种反映价格走势的动力的指标,通过计算最近9日内收盘价在最高价和最低价之间所占比例,来判断股票的超买和超卖情况。
当KDJ指标向上穿越20线时,为买入信号。
3.RSI指标源码:```RSI1:SMA(MAX(CLOSE-REF(CLOSE,1),0),14,1)/SMA(ABS(CLOSE-REF(CLOSE,1)),14,1)*100;RSI2:SMA(MAX(CLOSE-REF(CLOSE,1),0),7,1)/SMA(ABS(CLOSE-REF(CLOSE,1)),7,1)*100;RSI3:SMA(MAX(CLOSE-REF(CLOSE,1),0),6,1)/SMA(ABS(CLOSE-REF(CLOSE,1)),6,1)*100;```RSI指标是一种反映股票市场超买和超卖情况的指标,通过计算一段时间内收盘价上涨幅度占总幅度的比例,来判断市场的买入和卖出力量。
通达信指标公式源码 MACD主图 主图源码
![通达信指标公式源码 MACD主图 主图源码](https://img.taocdn.com/s3/m/f433e98fc8d376eeaeaa317d.png)
{色MACD主图}高1:=REF(HHV(H,150),3);低1:=REF(LLV(L,150),3);H3:=高1-(高1-低1)*0.5;中轴:REFDATE(H3,DATE),POINTDOT,COLORLIGRAY,LINETHICK3;B1:=EMA(C,12);B2:=EMA(C,26);B3:=B1-B2;WDIF:EMA(EMA(EMA(C,3),3),3)+B3,COLORRED,LINETHICK2;WDEA:EMA(WDIF,9),COLORGREEN,LINETHICK2;MACD:2*(WDIF-WDEA),NODRAW ;STICKLINE(MACD>0,中轴,中轴+MACD,0,1),COLORRED;STICKLINE(MACD<0,中轴,中轴+MACD,0,1),COLORLIBLUE;STICKLINE(MACD<REF(MACD,1)AND MACD>0,中轴,中轴+MACD,0,0 ),COLOR00BBFF;STICKLINE(MACD>=REF(MACD,1)AND MACD>0,中轴,中轴+MACD,0,0 ),COLOR0011BB;STICKLINE(MACD>REF(MACD,1)AND MACD<0,中轴,中轴+MACD,0,0),COLORBB11BB;STICKLINE(MACD<=REF(MACD,1)AND MACD<0,中轴,中轴+MACD,0,0),COLORFFBB11;{量价异动}短线:MA(C,5),NODRAW;中线:((MA(CLOSE,3)+MA(CLOSE,6)+MA(CLOSE,12)+MA(CLOSE,24))/4+EXPMA( CLOSE,10))/2,NODRAW;密码线:((EMA(C,6)+EMA(C,18)+EMA(C,54)+EMA(C,162))/4+EXPMA(CLOSE,24)+ MA(C,25))/3,NODRAW;神奇线:(MA(C,35)+EXPMA(CLOSE,50))/2,NODRAW;阳涨幅:=4.0;阳倍量:=2.0;单阳收:=C;单阳开:=O;单阳:=单阳收>=REF(C,1)*(1+阳涨幅/100)AND VOL>REF(VOL,1)*阳倍量; DRAWTEXT(CURRBARSCOUNT<100 AND 单阳,L*0.98,'准备'),COLOR00FFFF; 高不破价:=REF(C,BARSLAST(单阳));低不破价:=REF(L,BARSLAST(单阳));F1:=C/REF(C,1)>1.098;强势:=COUNT(单阳,5) AND C>高不破价*0.98;A111:=REF(C/REF(C,1),BARSLAST(单阳));主升浪:=强势>0 AND C/REF(C,1)>A111 AND C>MA(C,60) ;JCCOUNT:=COUNT(单阳,11);上升中继:=单阳AND COUNT(JCCOUNT=2,11);DRAWTEXT(上升中继>0 ,L*0.9,'高度关注'),COLOR00FFFF;主升浪1:=上升中继AND F1;DRAWTEXT(主升浪>0 ,L*0.98,'主升浪'),COLOR00FFFF;拉升:=COUNT(单阳,4) AND O/REF(C,1)>1.017 AND C>=O AND C>MA(C,60) ; DRAWTEXT(拉升>0 ,L*0.9,'拉升'),COLOR00FFFF;单阳不破:=CURRBARSCOUNT<100 AND BARSLAST(单阳)<11 AND(LLV(L,BARSLAST(单阳))>低不破价OR LLV(L,BARSLAST(单阳))=低不破价); {金叉共振}市场成本:DMA(AMOUNT/V/100,V/CAPITAL),COLORRED,NODRAW; DRAWICON(CROSS(C,市场成本),L-0.20,1);{1号图标显示红脸} {PARTLINE(市场成本,市场成本>REF(市场成本,1),RGB(255,0,0),NOT(市场成本<REF(市场成本,1)),RGB(0,0,255),1,RGB(0,0,255)),LINETHICK2;}DIFF:=EMA(CLOSE,2) - EMA(CLOSE,60);DEA:=EMA(DIFF,8);A1:=BARSLAST(REF(CROSS(DIFF,DEA),1));B01:=REF(C,A1+1)>C AND REF(DIFF,A1+1)<DIFF AND CROSS(DIFF,DEA); A2:=BARSLAST(REF(CROSS("KDJ.K"(9,3,3),"KDJ.D"(9,3,3)),1));B02:=REF(C,A2+1)>C AND REF("KDJ.K"(9,3,3),A2+1)<"KDJ.K"(9,3,3) AND CROSS("KDJ.K"(9,3,3),"KDJ.D"(9,3,3));A3:=BARSLAST(REF(CROSS("RSI.RSI1"(6,12,24),"RSI.RSI2"(6,12,24)),1));B03:=REF(C,A3+1)>C ANDREF("RSI.RSI1"(6,12,24),A3+1)<"RSI.RSI1"(6,12,24) ANDCROSS("RSI.RSI1"(6,12,24),"RSI.RSI2"(6,12,24));DRAWICON(B01>0,L-0.20,5);DRAWTEXT(B01,L-0.30,'MACD底背'),COLORWHITE;DRAWICON(B02>0,L-0.20,4);DRAWTEXT(B02,L-0.30,'KDJ底背'),COLORFF00FF;DRAWICON(B03>0,L-0.20,3);DRAWTEXT(B03,L-0.30,'RSI底背'),COLORYELLOW;DRAWICON(CROSS(DIFF,DEA) ANDCROSS("KDJ.K"(9,3,3),"KDJ.D"(9,3,3)),L-0.20,6);DRAWTEXT(CROSS(DIFF,DEA) ANDCROSS("KDJ.K"(9,3,3),"KDJ.D"(9,3,3)),L-0.30,'金叉共振'),COLOR0099FF; STICKLINE(C/REF(C,1)>1.095,C,O,2,0),COLORYELLOW;{F10}DRAWTEXT_FIX(1,0.7,0,0,'所属板块:'),COLORFF6000;DRAWTEXT_FIX(1,0.77,0,0,HYBLOCK),COLORRED;DRAWTEXT_FIX(1,0.835,0,0,DYBLOCK),COLORYELLOW;总股本:=STRCAT(STRCAT('总股本: ',CON2STR(TOTALCAPITAL/1000000,2)),'亿');流通盘:=STRCAT(STRCAT(' 流通盘: ',CON2STR(CAPITAL/1000000,2)),'亿'); 全流通:=STRCAT(' 全流通:',CON2STR((CAPITAL/1000000)/(TOTALCAPITAL/1000000),2));市值:=STRCAT(STRCAT(' 流通市值: ',CON2STR((CAPITAL/1000000)*C,2)),'亿');上市日期:=STRCAT(' 上市日期: ',CON2STR(FINANCE(42),0));股本市值:=STRCAT('股本市值: ',STRCAT(STRCAT(STRCAT(STRCAT(总股本,流通盘),全流通),市值),上市日期));{}市盈率:=STRCAT('市盈率: ',CON2STR(C/FINANCE(33),2));市销率:=STRCAT(' 市销率: ',CON2STR(C/(FINANCE(20)/FINANCE(1)),2));市净率:=STRCAT(' 市净率: ',CON2STR(C/FINANCE(34),2));净资收益率:=STRCAT(' 净资收益率:',CON2STR(FINANCE(33)/FINANCE(34)*100,2));毛利率:=STRCAT(' 毛利率:',CON2STR((FINANCE(20)-FINANCE(21))/FINANCE(20)*100,2));净利润率:=STRCAT(' 净利润率',CON2STR(FINANCE(30)/FINANCE(20)*100,2));主营利润率:=STRCAT(' 主营利润率',CON2STR(FINANCE(23)/FINANCE(20)*100,2));当前业绩:=STRCAT('当前业绩:',STRCAT(STRCAT(STRCAT(STRCAT(STRCAT(STRCAT(市盈率,市销率),市净率),净资收益率),毛利率),净利润率),主营利润率));{}X1:=(FINANCE(11)-FINANCE(15))/FINANCE(10)*1.2;X2:=(FINANCE(31)+FINANCE(17))/FINANCE(10)*1.4;{盈余公积用资本公积金代替};X3:=FINANCE(23)/FINANCE(10)*3.3;X4:=FINANCE(19)/FINANCE(15)*0.6;{缺长期负债或负债总额}X5:=FINANCE(20)/FINANCE(15)*0.999;Z值:=X1+X2+X3+X4+X5;预警:=IF(Z值<1.2,'重警',IF(Z值>=1.2 AND Z值<2.6,'轻警','无警'));财务预警:=STRCAT('财务预警: ',STRCAT(预警,STRCAT('-Z值: ',CON2STR(Z 值,3))));优质资产率:=STRCAT(' 优质资产率:',CON2STR((FINANCE(19)-FINANCE(22)-FINANCE(27))/FINANCE(19),2));{理论上越大越好但不同行业有不同标准};现金负债比:=STRCAT(' 现金负债比:',CON2STR(FINANCE(25)/FINANCE(15),3));{缺长期负债或负债总额,理论上越大越好但不同行业有不同标准};财务系数:=STRCAT('风险系数: ',STRCAT(STRCAT(财务预警,优质资产率),现金负债比));{}DRAWTEXT_FIX(ISLASTBAR,0.005,0.01,0,财务系数),COLORYELLOW; DRAWTEXT_FIX(ISLASTBAR,0.005,0.06,0,当前业绩),COLORYELLOW; DRAWTEXT_FIX(ISLASTBAR,0.005,0.115,0,股本市值),COLORYELLOW;{止损线}{数据自己爱好调整}STICKLINE(ISLASTBAR,HHV(C,5),HHV(C,5),218,1)COLORBLUE; STICKLINE(ISLASTBAR,HHV(C,5)*0.95,HHV(C,5)*0.95,218,1)COLORRED;。
MACD背离自动画线通达信指标公式源码
![MACD背离自动画线通达信指标公式源码](https://img.taocdn.com/s3/m/98ea084fbb1aa8114431b90d6c85ec3a87c28bd2.png)
MACD背离自动画线通达信指标公式源码通达信(MetaStock)是一种常用的股票分析软件,提供了丰富的指标库。
在通达信中编写指标公式可以使用通达信自带的公式语言-支持C语言语法。
为了实现MACD背离自动画线指标,我们首先要计算MACD指标的数值,并判断是否出现背离。
接下来,我们可以使用通达信的画线函数实现在背离点位置上自动画线。
下面是该指标的示例源码:```javascript/*时间:2024-01-01*/#include "stdio.h"#include "stdlib.h"#include "string.h"#include "windows.h"/*定义MACD指标相应变量*/double EMA_SHORT;double EMA_LONG;double DIFF;double DEA;double MACD;/*初始化操作,在指标开始计算之前调用*/void InitEMA_SHORT=0;EMA_LONG=0;DIFF=0;DEA=0;MACD=0;/*计算MACD指标的数值*/void CalculateMACD(double close[], int n, int shortPeriod, int longPeriod, int signalPeriod)double EMA_SHORT_SMOOTH = 2.0 / (shortPeriod + 1);double EMA_LONG_SMOOTH = 2.0 / (longPeriod + 1);//计算短期EMAdouble emaShortPrev = close[0];for (int i = 0; i < shortPeriod; i++)emaShortPrev = emaShortPrev * (1 - EMA_SHORT_SMOOTH) +close[i] * EMA_SHORT_SMOOTH;}//计算长期EMAdouble emaLongPrev = close[0];for (int i = 0; i < longPeriod; i++)emaLongPrev = emaLongPrev * (1 - EMA_LONG_SMOOTH) + close[i] * EMA_LONG_SMOOTH;}//计算DIFF和DEADIFF = emaShortPrev - emaLongPrev;DEA=0;double DEA_SMOOTH = 2.0 / (signalPeriod + 1);for (int i = 0; i < signalPeriod; i++)DEA=DEA*(1-DEA_SMOOTH)+DIFF*DEA_SMOOTH;}//计算MACDMACD=(DIFF-DEA)*2;/*判断是否出现背离*/int IsDivergence(double close[], int n, int direction)for (int i = 2; i < n; i++)double prevClose1 = close[i - 2];double prevClose2 = close[i - 1];double currentClose = close[i];if (direction == 1) // 上涨背离:前两个低点价格下降,当前高点价格上升if (prevClose1 > prevClose2 && prevClose2 > currentClose) return i;}}else if (direction == -1) // 下跌背离:前两个高点价格上升,当前低点价格下降if (prevClose1 < prevClose2 && prevClose2 < currentClose)return i;}}}return -1;/*自动画线函数,在背离位置上自动画线*/void AutoDrawLine(int barIndex, int direction)//自动画线的相关处理,这里仅做示例printf("在第 %d 根K线上画上涨背离线。
通达信指标公式源码 macd副图指标,逃顶抄底,买卖利器
![通达信指标公式源码 macd副图指标,逃顶抄底,买卖利器](https://img.taocdn.com/s3/m/2def96834693daef5ef73db0.png)
RSV:=(CLOSE-LLV(LOW,11))/(HHV(HIGH,11)-LLV(LOW,11))*100;DIF:EMA(CLOSE,12)-EMA(CLOSE,26);DEA:EMA(DIF,9);MACD:(DIF-DEA)*2,COLORSTICK;DIFF:=EMA(CLOSE,12)-EMA(CLOSE,27);DEA1:=EMA(DIFF,9);MACD1:=2*(DIFF-DEA1),COLORSTICK,LINETHICK2;趋势:=MA(MACD,1);DRAWICON(MACD1>REF(MACD1,1) AND 趋势>0 ,趋势,1);低位金叉:=CROSS(DIF,DEA) AND DIF<-0.1;JCCOUNT:=COUNT(CROSS(DIF,DEA),BARSLAST(DEA>=0));二次金叉:=CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT=2,21)=1;K:=SMA(RSV,3,1);D:=SMA(K,3,1);J:=(3*K-2*D);DRAWTEXT(二次金叉,DEA*1,'低二叉'),COLORYELLOW;周DIF:="MACD.DIF#WEEK"(12,26,9);周DEA:="MACD.DEA#WEEK"(12,26,9);周MACD:="MACD.MACD#WEEK"(12,26,9);DIF周金叉:=CROSS(周DIF,周DEA);DRAWTEXT(DIF周金叉,0,'周叉'),COLORYELLOW;DRAWTEXT(CROSS(周DEA,周DIF),0,'周死'),COLORGREEN;MACD周金叉:=CROSS(周MACD,周DIF) AND 周MACD>=(0-0.05) AND 周MACD<=0.02; VARR:=EMA(EMA(CLOSE,13),13);控盘:=(VARR-REF(VARR,1))/REF(VARR,1)*1000;A10:=CROSS(控盘,0);控盘B:=FILTER(IF(A10,1,0),5);JJ:=DYNAINFO(11);P:=55;S:=8;M1:=3;刘:=(EMA(CLOSE,S)-EMA(CLOSE,P))*10;剑:=EMA(刘,M1);BTJ11:=(C-JJ)/JJ<-0.03;BTJ2:=控盘>REF(控盘,1) AND 控盘<-0.2;BTJ3:=CROSS(刘,剑) AND 刘<-0.3;BTJ811:=FILTER(BTJ11 AND BTJ2 AND BTJ3,13);庄:= BTJ11 AND BTJ2 AND BTJ3;有庄:=FILTER(庄,55),COLORWHITE;DRAWTEXT(BTJ811,-0.2,'★有庄'),COLORYELLOW;DRAWTEXT(CROSS(J,-3),DIF,'出击'),COLORWHITE;A1:=BARSLAST(REF(CROSS(EMA(CLOSE,12)-EMA(CLOSE,26),EMA(EMA(CLOSE,12)-EMA( CLOSE,26),9)),1));底背离:=REF(CLOSE,A1+1)>CLOSE AND EMA(CLOSE,12)-EMA(CLOSE,26)>REF(EMA(CLOSE,12)-EMA(CLOSE,26),A1+1) AND CROSS(EMA(CLOSE,12)-EMA(CLOSE,26),EMA(EMA(CLOSE,12)-EMA(CLOSE,26),9));底背:DRAWLINE(A1=0,DEA,底背离,DEA,0),COLORMAGENTA,LINETHICK2;A2:=BARSLAST(REF(CROSS(EMA(EMA(CLOSE,12)-EMA(CLOSE,26),9),EMA(CLOSE,12)-E MA(CLOSE,26)),1));顶背离:=REF(CLOSE,A2+1)<CLOSE AND REF(EMA(CLOSE,12)-EMA(CLOSE,26),A2+1)>EMA(CLOSE,12)-EMA(CLOSE,26) AND CROSS(EMA(EMA(CLOSE,12)-EMA(CLOSE,26),9),EMA(CLOSE,12)-EMA(CLOSE,26));顶背:DRAWLINE(A2=0,DEA,顶背离,DEA,0),COLORGREEN,LINETHICK2;。
MACD通达信指标公式源码
![MACD通达信指标公式源码](https://img.taocdn.com/s3/m/08b0b636a517866fb84ae45c3b3567ec102ddcb0.png)
MACD通达信指标公式源码
以下是通达信指标MACD的源码:
```
/*MACD指标公式*/
HHV:REF(HIGH,MACD1),N;
LLV:REF(LOW,MACD1),N;
BB:DMA((CLOSE-LLV)/(HHV-LLV)*100,MA1),MA2;
DDMA:(BB+MA3)/2;
EXPMA:EMA(CLOSE,MACD1),MACD2;/*EXPMA(指数平均数)就是EMA (指数平滑移动平均线)的一种形式*/
DIF:EXPMA-EXPMAO;
DEA:MA(DIF,M);
MACD:(DIF-DEA)*2,COLORSTICK,LINETHICK;
```
这是一个使用通达信编程语言编写的MACD指标公式源码。
源码中定义了几个辅助变量和指标变量,其中:
-`HHV`表示指定周期内最高价格的最高值。
-`LLV`表示指定周期内最低价格的最低值。
-`BB`表示百分比价格区间,根据最高值和最低值计算得出。
-`DDMA`表示BB和MA3的加权平均值。
-`EXPMA`表示收盘价的指数平均数。
-`DIF`表示DIFF指标值,是EXPMA和EXPMAO的差值。
-`DEA`表示DEA指标值,是DIF的移动平均值。
-`MACD`表示MACD指标值,是DIF和DEA之差的两倍。
以上是MACD指标在通达信编程语言中的简单实现。
请注意,该源码只是给出了MACD指标的计算公式,并且在通达信中使用了一些自定义函数。
将该源码应用到具体交易软件或平台中可能需要根据特定的语言和平台进行适配和调整。
MACD柱线均势和背离通达信指标公式源码
![MACD柱线均势和背离通达信指标公式源码](https://img.taocdn.com/s3/m/88a2e56459fb770bf78a6529647d27284a73377d.png)
MACD柱线均势和背离通达信指标公式源码1)MACD柱线均势公式:MAVL:MA(CLOSE,VOL);//计算成交量的均值,VOL表示成交量REFMAVL:REF(MAVL,1);//取上一周期的成交量均值DIFF:EMA(CLOSE,12)-EMA(CLOSE,26);//计算DIFFDEA:EMA(DIFF,9);//计算DEAMACD:(DIFF-DEA)*2;//计算MACDCROSS(DIFF,0)ANDCROSS(DEA,0)ANDCROSS(MACD,0)ANDREF(MACD,1)<0 ANDMACD>=0;//当MACD柱线向上穿过0轴,且DIFF、DEA均为正值,且上一周期的MACD值小于0时,产生买入信号CROSS(0,DIFF)ANDCROSS(0,DEA)ANDCROSS(0,MACD)ANDREF(MACD,1)>0 ANDMACD<=0;//当MACD柱线向下穿过0轴,且DIFF、DEA均为负值,且上一周期的MACD值大于0时,产生卖出信号2)MACD柱线背离公式:RELDIFF(REF(DIFF,1),DIFF,REF(CLOSE,1),CLOSE)-RELDIFF(REF(DIFF,1),DIFF,REFMAVL,MAVL)>0;//判断DIFF和股价或成交量的背离情况(即趋势不一致),并且上一周期的DIFF和股价或成交量的背离情况为负值时,产生卖出信号RELDIFF(REF(DIFF,1),DIFF,REF(CLOSE,1),CLOSE)-RELDIFF(REF(DIFF,1),DIFF,REFMAVL,MAVL)<0;//判断DIFF和股价或成交量的背离情况(即趋势不一致),并且上一周期的DIFF和股价或成交量的背离情况为正值时,产生买入信号以上代码是MACD柱线均势和背离的通达信指标公式源码。
其中,DIFF表示快线指标,DEA表示慢线指标,MACD表示柱线,MAVL表示成交量均值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
简洁大方实用macd 方便自己diy!!拒绝花哨给喜欢macd的坛友添加一点色彩里边信号精准方便参考!
DIF:EMA(CLOSE,D1)-EMA(CLOSE,D2);
DEA:EMA(DIF,D3);
MACD:2*(DIF-DEA), COLORSTICK,LINETHICK2;
低位金叉:=CROSS(DIF,DEA) AND DIF<-0.1;
STICKLINE(低位金叉,0,0.12,4,0),COLORYELLOW;
DRAWTEXT(低位金叉,0.1,' 低位金叉'),COLORWHITE;
JCCOUNT:=COUNT(CROSS(DIF,DEA),BARSLAST(DEA>=0));
二次金叉:=CROSS(DIF,DEA) AND DEA<0 AND COUNT(JCCOUNT=2,30)=1; STICKLINE(二次金叉,0,0.06,4,0),COLORFF00FF;
DRAWICON(二次金叉,DEA*0.9,1) ;
DRAWTEXT(二次金叉,0.3,' 二次金叉'),COLORYELLOW;
A1:=BARSLAST(REF(CROSS(DIF,DEA),1));
{上一次昨日MACD金叉到当日周期数。
}
底背离:=REF(CLOSE,A1+1)>CLOSE AND DIF>REF(DIF,A1+1) AND CROSS(DIF,DEA) AND
DEA<0;
{上次金叉时的收盘价>当日收盘价,股价创新低,当日MACD金叉点却未创新低,形成底背离,并且在0轴之下。
}
STICKLINE(底背离,0,0.03,6,0),COLOR00FF00;
底背:DRAWLINE(A1=0,DEA,底背离,DEA,0),COLORRED,LINETHICK4;
{第一次金叉为起点,出现底背离的第二次金叉为终点,画线段。
}
DRAWTEXT(底背离,-0.15,' 底背离'),COLORFF00FF;
A2:=BARSLAST(REF(CROSS(DEA,DIF),1));
顶背离:=REF(CLOSE,A2+1)<CLOSE AND REF(DIF,A2+1)>DIF AND CROSS(DEA,DIF); DRAWTEXT(顶背离,0.3,' 顶背离'),COLORGREEN;
顶背:DRAWLINE(A2=0,DEA,顶背离,DEA,0),COLORGREEN,LINETHICK4;。