股票歷史數據可視化分析案例實現


一、數據描述

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