python数据分析实例_Python数据分析及可视化实例之个股走势预测(26)

ae8c9d2ed794870a22948931202171e5.png

系列文章总目录:Python数据分析及可视化实例目录


ae9f1a9f7956f7d02a990fee88d2337b.png

1.项目背景:

仅仅用来练手,个股走势如果真预测准确了,都就改行当操盘手了,哈哈!

但话又说回来,如果把数据曲线特征提取出来,再进行对比异常判断,也是可以的。

数据源,请关注微信公众号:海豹战队,回复:数据

2.分析步骤:

(1) 时间序列

(2) 数据重采样

(3) 预测

3.分析结果:

1259eff82354527cf64819ab044e5ed6.png

1cbc5156e5b1f3fd5663e68e4ba8558f.png

030cf71bdded88c50f6922fca089b8bb.png

4.源码(公众号:海豹战队):

# coding: utf-8
# 亲,转载即同意帮推公众号:海豹战队,嘿嘿......
# 数据源可关注公众号:海报战队,后留言:数据
%matplotlib inline
import pandas as pd
import datetime
import matplotlib.pylab as plt
import seaborn as sns
from matplotlib.pylab import style
from statsmodels.tsa.arima_model import ARIMA
from statsmodels.graphics.tsaplots import plot_acf, plot_pacf
style.use('ggplot')    
plt.rcParams['font.sans-serif'] = ['SimHei'] 
plt.rcParams['axes.unicode_minus'] = False  

stockFile = 'data/T10yr.csv'
stock = pd.read_csv(stockFile, index_col=0, parse_dates=[0])
stock.head(10)

stock_week = stock['Close'].resample('W-MON').mean()
stock_train = stock_week['2000':'2015']
stock_train.head()

stock_train.plot(figsize=(12,8))
plt.legend(bbox_to_anchor=(1.25, 0.5))
plt.title("Stock Close")
sns.despine()

stock_diff = stock_train.diff()
stock_diff = stock_diff.dropna()
stock_diff = stock_train.diff()
stock_diff = stock_diff.dropna()

plt.figure()
plt.plot(stock_diff)
plt.title('一阶差分')
plt.show()

pacf = plot_pacf(stock_diff, lags=20)
plt.title("PACF")
pacf.show()

acf = plot_acf(stock_diff, lags=20)
plt.title("ACF")
acf.show()

# 核心
model = ARIMA(stock_train, order=(1, 1, 1),freq='W-MON')
result = model.fit()
#print(result.summary())
plt.figure(figsize=(6, 6))
plt.xticks(rotation=45)
plt.plot(pred)
plt.plot(stock_train)

# 搬砖也是个力气活,可视化采用Bokeh并非plt,以后再专门教大家使用Bokeh和Flask交互。

老鸟可去另一专栏:Python中文社区

新手可查阅历史目录:

yeayee:Python数据分析及可视化实例目录​zhuanlan.zhihu.com
7196465b434dcd0b96a6e643522a967e.png

ca0f7cb77a5529f8ee9061c1de8ce966.png

最后,别只收藏不关注哈

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值