Py学习  »  Python

Python股票数据分析

数据挖掘入门与实战 • 7 年前 • 1221 次点击  



数据挖掘入门与实战  公众号: datadw


python版本:3.4
最近在学习基于python的股票数据分析,其中主要用到了tushare和seaborn。tushare是一款财经类数据接口包,国内的股票数据还是比较全的,官网地址:http://img2.100weidu.com/get?src=http://tushare.waditu.com/index.html#id5 。seaborn则是一款绘图库,通过seaborn可以轻松地画出简洁漂亮的图表,而且库本身具有一定的统计功能。
导入的模块:


import matplotlib.pyplot as plt
import seaborn as sns
import seaborn.linearmodels as snsl

from datetime import datetime
import tushare as ts

代码部分:
股票收盘价走势曲线
sns.set_style("whitegrid")
end = datetime.today() #开始时间结束时间,选取最近一年的数据
start = datetime(end.year-1,end.month,end.day)
end = str(end)[0:10]
start = str(start)[0:10]

stock = ts.get_hist_data('300104',start,end)#选取一支股票
stock['close'].plot(legend=True ,figsize=(10,4))
plt.show()


股票日线

同理,可以做出5日均线、10日均线以及20日均线
stock[['close','ma5','ma10','ma20']].plot(legend=True ,figsize=(10,4))


日线、5日均线、10日均线、20日均线

股票每日涨跌幅度
stock['Daily Return'] = stock['close'].pct_change()
stock['Daily Return'].plot(legend=True,figsize=(10,4))


每日涨跌幅

核密度估计
sns.kdeplot(stock['Daily Return'].dropna())


核密度估计

核密度估计+统计柱状图
sns.distplot(stock['Daily Return'].dropna(),bins=100)


核密度+柱状图

两支股票的皮尔森相关系数
sns.jointplot(stock['Daily Return'],stock['Daily Return'],alpha=0.2)


皮尔森相关系数

多只股票相关性计算
stock_lis=['300113','300343','300295','300315`] #随便选取了四支互联网相关的股票
df=pd.DataFrame()
for stock in stock_lis:     closing_df = ts.get_hist_data(stock,start,end)['close']     df = df.join(pd.DataFrame({stock:closing_df}),how='outer')
tech_rets = df.pct_change()
snsl.corrplot(tech_rets.dropna())


相关性

简单地计算股票的收益与风险,衡量股票收益与风险的数值分别为股票涨跌的平均值以及标准差,平均值为正则说明收益是正的,标准差越大则说明股票波动大,风险也大。
rets = tech_rets.dropna()
plt.scatter(rets.mean(),rets.std())
plt.xlabel('Excepted Return')
plt.ylabel('Risk')
for label,x,y in zip(rets.columns,rets.mean(),rets.std()):#添加标注     plt.annotate(                  label,                  xy =(x,y),xytext=(15,15),                  textcoords = 'offset points',                  arrowprops = dict(arrowstyle = '-',connectionstyle = 'arc3,rad=-0.3'))


数据挖掘入门与实战

搜索添加微信公众号:datadw


教你机器学习,教你数据挖掘


长按图片,识别二维码,点关注



  公众号: weic2c   
据分析入门与实战

长按图片,识别二维码,点关注



今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/weixin/c84DfwUluQ
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/1851
 
1221 次点击