美学原理经济时序模型(A奥迪Q5IMA)

不久前无论同事认可,朋友同意,都事关3头股票”河北西凤酒”,所以就拿来试水,接下去会介绍下不难介绍下该模型概念,以及python如何采用该模型。

很久没有更新了!!!咱再忙也无法忘掉学习啊美学原理,~

实战解析

规律大致知道,实践却如故会有无数难点。上边就因此Python语言贴出主要达成代码。

基本概念

A普拉多IMA模型的齐全叫做自回归活动平均模型,全称是(A福特ExplorerIMA, Autoregressive
Integrated Moving Average
Model)。也记作A奥迪Q5IMA(p,d,q),是计算模型(statistic
model)中最广大的一种用来进展时间系列预测的模型。

先上最后结果图,水象牙黄虚线为预测部分,实线为当下股票价格,预测趋势发展
# 文中使用到这些基础库:
import tushare as ts 
import pandas as pd
import matplotlib.pyplot as plt
from statsmodels.tsa.arima_model import ARIMA
from statsmodels.graphics.tsaplots import plot_acf,plot_pacf

# 获得贵州茅台数据
df_source = ts.get_hist_data('600519')

# 对收盘价进行排序
ser_close = df_source['close'].sort_index()

# 收盘曲线
ser_close.plot(kind='line', c='r', label='Close')

# 20日均线
ser_close.rolling(window=20).mean().plot(kind='line', c='b', ls='--', alpha=.8, label='M_20')

# 趋势不平稳,对数据进行一阶差分
df_close['diff1'] = df_close['close'].diff(1)
# 二阶差分
df_close['diff2'] = df_close['diff1'].diff(1)

# 日频数据太多,对数据做降频处理
df_close_resample = df_close.resample('W-MON').mean()

# AM与MA定阶,落在置信区间的前一个点位为模型阶数
acf_dif = plot_acf(train_dif1, lags=20)
pacf_dif = plot_pacf(train_dif1, lags=20)

# 把得到的参数放进模型中训练
model = ARIMA(stk_train_set['close'], order=(1, 1, 1), freq='W-MON')
arima_result = model.fit()

# 得到预测结果
pred_vals = arima_result.predict(startdate,enddate,dynamic=True, typ='levels')

ARIMA pre result

建立模型步骤
  1. 获得被观看系统时间种类数据;
  2. 对数据绘图,观测是或不是为平安时间连串;对于非平稳时间体系要先实行d阶差分运算,化为平稳时间体系;
  3. 通过第①步处理,已经获得平安时间连串。要对稳定时间种类分别求得其自相关联数ACF偏自相关联数PACF,通过对自相关图和偏自相关图的分析,获得最好的阶层
    p
    阶数 q
  4. 由上述获得的d、q、p,获得ASportageIMA模型。然后初始对获得的模子实行模型检验。