股票历史数据可视化分析案例实现


一、数据描述

1. 数据用python的财经数据包tushare来进行数据爬取的,它也是有接口的,可以利用不同的接口可以获取不同的数据。代码如下:

import tushare as ts
import pandas as pd
stock_data = ts.get_hist_data('600848')
stock_data.to_csv(r'C:\Users\GK丶taptap\Desktop\stock_data2.csv')

2.其csv文件图片数据如下

 

 3.数据集描述

date:当天日期

open:今开,指今日的收盘价

high:指今日的最高价

close:昨收,指昨天的开盘价

low:指今日的最低价

volume:指成交量

二、问题提出

1.近几年股票走势如何?

2.对该股票的每天点数的最大值进行分析,判断是否投资这个股票?

3.对每日低点进行数据分析,看其每日的跌幅能有多大?

4.对该股票的起始值进行分析,判断其低开多还是低开多?

5.该股票是否稳定?

三、数据预处理及可视化分析

 可以看出数据无需清理

1.近三年的走势

对该股票每天结束时的点数,使用matplotlib进行可视化分析
代码如下:

import numpy as np
import matplotlib.pyplot as plt 
df = pd.read_csv(r'C:\Users\GK丶taptap\Desktop\stock_data2.csv')
x = df['date']
y = df['close']
plt.figure(figsize=(10,10))
plt.plot(x, y)
plt.title('close-date')
plt.xlabel('date')
plt.ylabel('close')
plt.savefig(r'C:\Users\GK丶taptap\Desktop\3.jpg')
plt.show()

得到曲线图如下:

 

看走势图就知道,这只股票近几年走势还是非常的不稳定,在跌的时候是深不见底的,涨的阶段也很少,并且涨的过程还随着巨幅的下跌,这样以来很多人会跑路,就不会获取最后涨的收益。所以这只股票不建议投资。

2.股票点数的最大值区间

我们对该股票的每天点数的最大值进行分析,可以让我们了解到那个最大值区间是有更多位置的,来判断是否投资这个股票。
我们先对最大值进行划分区间,划分为一下四个区间:
[0,20] (20,25] (25,30] (30,+oo]
代码如下:

import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv(r'C:\Users\GK丶taptap\Desktop\stock_data2.csv')
plt.title('股票运势最高点分布(百分点)')#绘制标题
plt.rcParams['font.sans-serif']='SimHei'#设置中文显示
label=['20以下','20-25','25-30','30以上']#定义饼图的标签,标签是列表
explode=[0.01,0.01,0.01,0.01]#设定各项距离圆心n个半径
values=[len(df[df['high']<=20]),len(df[(df['high'] >20 ) & (df['high'] <=25)]),len(df[(df['high'] >25 ) & (df['high'] <=30)]),len(df[df['high'] > 30])]
plt.pie(values,explode=explode,labels=label,autopct='%1.1f%%',radius=2)#绘制饼图
plt.savefig(r'C:\Users\GK丶taptap\Desktop\2.jpg')
plt.show()

得到的图如下:

 

 由图可知,该股票每天的最大值分布最多点数的位置在20-25之间,20以下是最少的,25和25-30的点数大致相同,该股票每天上涨空间还是很大的。可以尝试。

3.每日低点分析

我们利用散点图对每日低点进行数据分析,看其每日的跌幅能有多大。
代码如下:

df = pd.read_csv(r'C:\Users\GK丶taptap\Desktop\stock_data2.csv')
x = df['date']
y = df['low']
plt.figure(figsize=(10,10))
plt.title("min-date")
plt.xlabel("date") 
plt.ylabel("min") 
plt.plot(x,y,"ob") 
plt.savefig(r'C:\Users\GK丶taptap\Desktop\6.jpg')
plt.show()

得到的散点图如下:

 

 由散点图可知,其每日低点的走势和结束的走势大致相同,高点都是35,而且看点的分布密集地方都是较低点,每天的结束值大致和最低值相同,可知这个股票不宜购买。

4.高低开分析

我们对该股票的起始值进行分析,判断其低开多还是低开多。
代码如下:

import numpy as np 
import matplotlib.pyplot as plt
import pandas as pd
df = pd.read_csv(r'C:\Users\GK丶taptap\Desktop\stock_data2.csv')
plt.savefig(r'C:\Users\GK丶taptap\Desktop\8.jpg')
df.hist('open')
plt.show()

得到的柱状图如下:

 

 由图可知,该股票低开的时候很多,但其走势不是低开高走,而在高开时,就是走的高开低走,非常的坑人。

四、结论

由上面四个分析可知,上海临港(代码600848)这个股票不建议购买,不低开高走,而在高开时,却低走,以及前面的结论,可知该股票是非常的不稳定。
最后,理财有风险,投资需谨慎,请大家合理的进行投资分配。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM