python数据分析——股票分析
生活随笔
收集整理的這篇文章主要介紹了
python数据分析——股票分析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
python數據分析——股票分析
- 前言
- 一、實現步驟
- 1.引入庫(導包)
- 2.讀入數據
- 3.數據分析可視化
- 3.1 風險相關圖
- 3.2 歷史收盤價
- 3.2 ma5 ma20
- 3.2 歷史成交量
- 總結
前言
本文旨在幫助想用python做數據分析,或者想對某只或某幾支股票進行風險對比和橫向分析的朋友進行梳理。內容較為簡潔,文中用到的包都會列舉出來,如有問題,歡迎交流學習~
一、實現步驟
1.引入庫(導包)
代碼如下(示例):
import pandas as pd import numpy as np import matplotlib.pyplot as plt import tushare as ts import matplotlib import seaborn as sns from pandas import Series,DataFrame- tushare: 爬取歷史或實時股票數據
- seaborn Seaborn is a library for making statistical graphics in Python. It is built on top of matplotlib and closely integrated with pandas data structures.
- pyplot matplotlib.pyplot是一個有命令風格的函數集合,它看起來和MATLAB很相似。每一個pyplot函數都使一副圖像做出些許改變,例如創建一幅圖,在圖中創建一個繪圖區域,在繪圖區域中添加一條線等等。
2.讀入數據
代碼如下:
sns.set() plt.rcParams['font.family'] = 'SimHei'#設置字體,使之支持圖表顯示中文 #寫入感興趣的股票代碼并獲得其歷史數據 huayu=ts.get_hist_data('600741') huayu.index=pd.to_datetime(bosch.index) #平安 zgpa=ts.get_hist_data('000001') zgpa.index=pd.to_datetime(zgpa.index) #萬科 wanke=ts.get_hist_data('000002') wanke.index=pd.to_datetime(wanke.index) #國農科技 gnkj=ts.get_hist_data('000004') gnkj.index=pd.to_datetime(gnkj.index) #獲取為當日閉盤價 closing_df=zgpa[['open','close']] closing_df['zgpa_df']=zgpa['close'] closing_df['wanke_df']=wanke['close'] closing_df['gnkj_df']=gnkj['close'] closing_df['huayu_df']=huayu['close'] del closing_df['open'] del closing_df['close'] tech_rets=closing_df.pct_change()[:100] #獲取兩支股票的相關系數 sns.jointplot('wanke_df','gnkj_df',tech_rets,kind='scatter')3.數據分析可視化
3.1 風險相關圖
rets=tech_rets.dropna() area=np.pi*20 plt.scatter(rets.mean(),rets.std()) #分別設定xy的標注 plt.xlabel('expected return') plt.ylabel('risk') #畫風險相關圖 for label, x, y in zip(rets.columns, rets.mean(), rets.std()):plt.annotate(label, xy=(x,y), xytext=(50, 50), textcoords='offset points',ha='right', va='bottom',arrowprops=dict(arrowstyle= '-' ,connectionstyle='arc3,rad=-0.3'))3.2 歷史收盤價
ma_day=[10,20,50] # 指每幾日均價 for ma in ma_day:column_name='ma for %s days'%(str(ma))huayu[column_name]=huayu['close'].rolling(2).mean()plt.title('huayu收盤價') plt.plot(bosch['close'],label='收盤價')3.2 ma5 ma20
plt.plot(huayu['ma5'],label='ma5')#5日收盤均價 plt.plot(huayu['ma20'],label='ma20')3.2 歷史成交量
plt.plot(huayu['volume'],label='成交量')總結
總的來說,這只股票漲勢還是不錯的,當然此處只做數據分析不做股票推薦。可以根據股票代碼pick讓你心動的那支~
總結
以上是生活随笔為你收集整理的python数据分析——股票分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 傻瓜式短视频去水印(自媒体运营必备工具)
- 下一篇: mysql 分组内求差