def EMAVAR(df, n, field = 'close'):
ema_ts = EMA(df, n, field)
alpha = 2.0 / (n + 1)
var_adj = (1-alpha) * (df[field] - ema_ts.shift(1).fillna(0))**2
evar_ts = pd.Series(talib.EMA(var_adj.values, n), name = 'EVAR_' + field.upper() + '_' + str(n), index = df.index)
return pd.concat([ema_ts, evar_ts], join='outer', axis=1)
评论列表
文章目录