分类

移动平均线ma指标公式

股票脑电波的指标长期向上(通达信版脑电波公式)

Var2:=(3*CLOSE+LOW+OPEN+HIGH)/6;
Var3:=(20*Var2+19*REF(Var2,1)+18*REF(Var2,2)+17*REF(Var2,3)+16*REF(Var2,4)+15*REF(Var2,5)+14*REF(Var2,6)+13*REF(Var2,7)+12*REF(Var2,8)+11*REF(Var2,9)+10*REF(Var2,10)+9*REF(Var2,11)+8*REF(Var2,12)+7*REF(Var2,13)+6*REF(Var2,14)+5*REF(Var2,15)+4*REF(Var2,16)+3*REF(Var2,17)+2*REF(Var2,18)+REF(Var2,20))/210;
Var4:=MA(Var3,13);
Var5:=EMA(MA(CLOSE,3),34);
Var6:=(MA(CLOSE,3)+MA(CLOSE,6)+MA(CLOSE,12)+MA(CLOSE,24))/4;
Var7:=MA(Var6,5);
Var8:=MA(Var6,10);
〖空头市场〗: STICKLINE(IF(Var3 =REF(Var3,1),2)=2,Var3,Var4,10,0), , COLORYELLOW;
★买入点: DRAWTEXT(REF(CROSS(Var3,Var4),2) AND Var3>1.005*Var4,Var4,'★买入点'), ,COLORYELLOW;
『多空争夺点』: DRAWTEXT(CROSS(Var6,Var7) AND Var7

股票MACD指标算法公式

掌握了以上的知识,你对EMA的算法的了解还远远不够。比如一只股票上市了很多年了,它今天的EMA数值你知道是多少吗?要知道今天的EMA,得知道昨天的EMA,要知道昨天的EMA,得知道前天的EMA,这样类推下去,岂不是有得追溯到上市首日,那数据量太大了!事实上,我们直观的知道,离当日时间越久,其股价和MEA对今天的EMA的影响就越小,所以,EMA与股价之间应该有个展开式,而且展开式中离今日的日期很远的股价应该可以省略。根据EMA的定义,EMA确实可以得到一个展开式,假设要计算从股票上市起第n日的EMA,计为EMAn,则有:
其中为平滑系数,Cn表示股票上市第n日的收盘价,Cn-1表示股票上市第n-1日的收盘价,Cn-2表示股票上市第n-2日的收盘价……C2表示股票上市第2日的收盘价,C1表示股票上市首日的收盘价。当然,上市很久的股票,要追溯到上市首日的话时间太久了,不现实,那么追溯到多少天比较合适呢?对于N日的EMA,即EMA(N),其股价追溯到前3.45*(N+1)日的就可以了,更早的股价可以忽略。比如说EMA(12)追溯到前45日的股价就可以了,EMA(26)追随到前94日的股价就可以了。根据验证,如果想误差更小,可以追溯到前5N日的股价。
注意,这里涉及到了两个概念,N日的EMA用EMA(N)表示,为防止混淆,这里的N用大写字母表示,N决定了平滑系数 ,比如我们说EMA(12),则其平滑系数为。n日的EMA用EMAn表示,这里的n是指从股票上市日计起的第n个交易日,为防止混淆,这里的n用小写字母表示。

DIF= EMA(12)- EMA(26)


新股上市首日,其首日DEA为0。从次日开始,由于首日DEA为0,因此次日的DEA=0.2* DIF+0=0.2*DIF。后续日子的DEA可以套用0.2*DIF + 0.8* DEA’计算。

量化-使用python计算各类移动平均线

小丁丁_ddxdd 于 2016-06-29 00:05:18 发布 52885 收藏 45


# 导入数据 - 注意:这里请填写数据文件在您电脑中的路径
stock_data = pd.read_csv('stock data/sh600000.csv', parse_dates=[1])


# 将数据按照交易日期从远到近排序
stock_data.sort('date', inplace=True)


# 分别计算5日、20日、60日的移动平均线
ma_list = [5, 20, 60]


# 计算简单算术移动平均线MA - 注意:stock_data['close']为股票每天的收盘价
for ma in ma_list:
stock_data['MA_' + str(ma)] = pd.rolling_mean(stock_data['close'], ma)


# 计算指数平滑移动平均线EMA
for ma in ma_list:
stock_data['EMA_' + str(ma)] = pd.ewma(stock_data['close'], span=ma)


# 将数据按照交易日期从近到远排序
stock_data.sort('移动平均线ma指标公式 date', ascending=False, inplace=True)


# ========== 将算好的数据输出到csv文件 - 注意:这里请填写输出文件在您电脑中的路径
stock_data.to_csv('sh600000_ma_ema.csv', index=False)

通达信MACD顶底钝化指标公式

DIF:Ema(CLOSE,12)-EMA(CLOSE,26);
DEA:EMA(DIF,9);
macd:(DIF-DEA)*2,COLORstICK;
SWIFTK:='MacD.MACD' * REF('MACD.MACD',1) EARLYDAY_1:=BArslAST(REF(SWIFTK,1));
EARLYDAY_2:=BARSLAST(REF(SWIFTK,2));
EARLYDAY_3:=BARSLAST(REF(SWIFTK,3));
EARLYDAY_4:=BARSLAST(REF(SWIFTK,4));
EARLYDAY_5:=BARSLAST(REF(SWIFTK,5));
CLOW_0:=REF(LLV(MIN(O,C),EARLYDAY_5-EARLYDAY_4-1),EARLYDAY_4+2); 移动平均线ma指标公式
CLOW_1:=REF(LLV(MIN(O,C),EARLYDAY_3-EARLYDAY_2-1),EARLYDAY_2+2);
CLOW_2:=LLV(MIN(O,C),EARLYDAY_1);
DIFFLOW_0:=REF(LLV('MACD.DIFF',EARLYDAY_5-EARLYDAY_4-1),EARLYDAY_4+2);
DIFFLOW_1:=REF(LLV('MACD.DIFF',移动平均线ma指标公式 EARLYDAY_3-EARLYDAY_2-1),EARLYDAY_2+2);
DIFFLOW_2:=LLV('MACD.DIFF',EARLYDAY_1);
钝化L:=
'MACD.MACD' (INTPART(DIFFLOW_2)-INTPART(DIFFLOW_1)>0 AND CLOW_1>CLOW_2) OR
(INTPART(DIFFLOW_2)-INTPART(DIFFLOW_0)>0 AND CLOW_0>CLOW_2)
);
结构L:=
'MACD.MACD'REF(INTPART('MACD.DIFF'),1) AND (
(INTPART(DIFFLOW_2)-INTPART(DIFFLOW_1)>0 AND CLOW_1>CLOW_2 AND INTPART('MACD.DIFF')>INTPART(DIFFLOW_2)) OR
(INTPART(DIFFLOW_2)-INTPART(DIFFLOW_0)>0 AND CLOW_0>CLOW_2 AND INTPART('MACD.移动平均线ma指标公式 DIFF')>INTPART(DIFFLOW_2))
);
DRAWTEXT(移动平均线ma指标公式 钝化L,'MACD.DIFF','L');
DRAWICON(结构L,'MACD.DIFF',4);
CHIGH_0:=REF(HHV(MAX(O,C),EARLYDAY_5-EARLYDAY_4-1),EARLYDAY_4+2);
CHIGH_1:=REF(HHV(MAX(O,C),EARLYDAY_3-EARLYDAY_2-1),EARLYDAY_2+2);
CHIGH_2:=HHV(MAX(O,C),EARLYDAY_1);
DIFFHIGH_0:=REF(HHV('MACD.DIFF',EARLYDAY_5-EARLYDAY_4-1),EARLYDAY_4+2);
DIFFHIGH_1:=REF(HHV('MACD.DIFF',EARLYDAY_3-EARLYDAY_2-1),EARLYDAY_2+2);
DIFFHIGH_2:=HHV('MACD.DIFF',EARLYDAY_1);
钝化H:=
'MACD.MACD'>0 AND (
(INTPART(DIFFHIGH_2)-INTPART(DIFFHIGH_1) (INTPART(DIFFHIGH_2)-INTPART(DIFFHIGH_0) );
结构H:=
'MACD.MACD'>0 AND INTPART('MACD.DIFF') (INTPART(DIFFHIGH_2)-INTPART(DIFFHIGH_1) (INTPART(DIFFHIGH_2)-INTPART(DIFFHIGH_0) );
DRAWTEXT(钝化H,'MACD.DIFF'*1.02,'H'),COLORGREEN;
DRAWICON(结构H,'MACD.DIFF',5),COLORGREEN;