python股票相关性分析_python处理时间序列数据股票数据,并进行相关性分析

  • Post author:
  • Post category:python


import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

fig = plt.figure()

#读取数据

stock = pd.read_csv(‘D:/0py-stock analysis/predict/600425test2.csv’, parse_dates=[0], index_col=0)#usecols=range(15)读取前15列

#parse_dates=[0]将第一列数据解析成时间格式。index_col=0将第一列数指定为索引。

stock = stock[::-1] #逆序排列

print(stock.head())

#stock.info() #查看是否有缺失值

stock[‘close’].plot(grid=True)#绘图grid=True为生成网格线

plt.show()

stock[‘p_change’].plot(grid=True).axhline(y=0, color=’black’, lw=2)#绘制涨跌幅的曲线图

plt.show()

bcd2f01d128968848e3918472ebe39a1.png

2f6aa664b5ffcb115127c57da19bb2f5.png

close_price = stock[‘close’]

log_change = np.log(close_price) – np.log(close_price.shift(1))#当前值减去上一行的值

log_change.plot(grid=True).axhline(y=0, color=’black’, lw=2)

d07c63d702ec679024a5d47c56707752.png

small = stock[[‘close’, ‘price_change’, ‘ma20′,’volume’, ‘v_ma20’]]

_ = pd.scatter_matrix(small)

#相关性分析,观测这些指标之间的关系

6dafacfd559d510692a927b8ade1eae8.png

small = stock[[‘close’, ‘price_change’, ‘ma20′,’volume’, ‘v_ma20’]]

cov = np.corrcoef(small.T)

print(cov)#计算各个指标之间的相关系数

img = plt.matshow(cov,cmap=plt.cm.winter)

plt.colorbar(img, ticks=[-1,0,1])

plt.show()#将相关系数可视化

4c12691f5d442ce76b9ac408628d7967.png

stock[[‘close’,’volume’]].plot(secondary_y=’volume’, grid=True)#将两个量绘制在一张图上

ce76094ecaaf0556be932c14e749da86.png



版权声明:本文为weixin_34751996原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。