对一只股票的数据分析
前言
本文通过对股票数据的爬取,进而对这只股票进行可视化数据分析,分析的若有问题,大家可以在下方进行留言。
一、数据爬取
我是用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')
其csv文件图片如下:
二、数据可视化分析
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()
得到的曲线图如下:
看走势图就知道,这只股票还是非常的不稳定,在跌的时候是深不见底的,而且跌的幅度是非常大的,过程涨的阶段也很少,而在涨的时候涨的很慢,耗费很多时间,并且涨的过程还伴随着巨幅的下跌,这样以来很多人会跑路,就不会获取最后涨的收益。并且它在后面跌的时候是在2020,2020年也算慢牛时期,很多股票都涨了很多。所以这只股票不建议投资。
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)这个股票不建议购买,不低开高走,而在高开时,却低走,以及前面的结论,可知该股票是非常的不稳定。
最后,理财有风险,投资需谨慎,请大家合理的进行投资分配。