import pandas as pd import numpy as np import datetime import time #获取数据 df=pd.read_csv('C:/Users/HXWD/Desktop/000001.csv',encoding='gbk') df.columns=['date','code','name','close','high','low','open','preclose', 'change','change_per','volume','amt'] df=df[['date','open','high','low','close','volume','amt']] df.head() def get_MTM(df,M=6,N=6): """ MTM动力指标 算法: MTM线 当日收盘价与N日前的收盘价的差 MTMMA线 对上面的差值求N日移动平均 参数:N 间隔天数,也是求移动平均的天数,一般取6 用法: 1.MTM从下向上突破MTMMA,买入信号 2.MTM从上向下跌破MTMMA,卖出信号 3.股价续创新高,而MTM未配合上升,意味上涨动力减弱 4.股价续创新低,而MTM未配合下降,意味下跌动力减弱 5.股价与MTM在低位同步上升,将有反弹行情;反之,从高位同步下降,将有回落走势。 """ df['mtm']=df['close']-df['close'].shift(M) df['mtmma']=df['mtm'].rolling(N).mean() return df get_MTM(df)
下篇将会在文华上面编写该指标并进行回测。