如何快速上手使用Python进行r语言金融数据分析析

君,已阅读到文档的结尾了呢~~
使用Python语言分析金融数据的研究
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
使用Python语言分析金融数据的研究
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口2814人阅读
Python(40)
量化投资(30)
Python的功能不可以说不大,在金融数据分析里面有着很方便的应用。
1.数据获取
pandas包中有自带的数据获取接口,详细的大家可以去其官网上找,是io.data下的DataReader方法。
import numpy as np
import pandas as pd
import pandas.io.data as web
import math
#从雅虎财经获取DAX指数的数据
DAX = web.DataReader(name='^GDAXI', data_source='yahoo',start = '')
#查看一下数据的一些信息 上面这一方法返回的是一个pandas dataframe的数据结构
#绘制收盘价的曲线
DAX['Close'].plot(figsize=(8,5))
我们获得的数据是dataframe的结构,毕竟是pandas的接口的嘛。然后我们绘制一下收盘价曲线。
这个是我们获取的数据的信息。
绘制出来的收盘价曲线是这样的。
2.简单的数据处理
有了股票价格,我们就计算一下每天的涨跌幅度,换句话说,就是每天的收益率,以及股价的移动平均和股价的波动率。
#计算每日的涨跌幅
DAX['Return'] = np.log(DAX['Close']/DAX['Close'].shift(1))
print DAX[['Close','Return']].tail()
#将收盘价与每日涨跌幅度放在一张图上
DAX[['Close','Return']].plot(subplots = True,style = 'b',figsize=(8,5))
#42与252个交易日为窗口取移动平均
DAX['42d']=pd.rolling_mean(DAX['Close'],window=42)
DAX['252d']=pd.rolling_mean(DAX['Close'],window=252)
#绘制MA与收盘价
DAX[['Close','42d','252d']].plot(figsize=(8,5))
#计算波动率,然后根据均方根法则进行年化
DAX['Mov_Vol']=pd.rolling_std(DAX['Return'],window = 252)*math.sqrt(252)
DAX[['Close','Mov_Vol','Return']].plot(subplots = True, style = 'b',figsize = (8,7))
我们可以掌握这种subplots的绘图方法,把几张趋势图片放在一起。
这是移动平均线的图片,subplots的属性为false,那么就是叠加在一起绘制。
& & & & 这是市场的波动率和股市的关系。和FRM中提到的一样,在市场低迷,或者说,金融危机的时候,市场的波动率急剧增加。于是,就有了恐慌指数这个东西,也就是Vix,其实就是市场的波动率指数。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:103456次
积分:2115
积分:2115
排名:第17049名
原创:126篇
转载:30篇
评论:98条
非技术类博客:.cn/qtluyixiao 个人邮箱: 个人运营公众号:请搜索:tebs
阅读:9122
阅读:2665
阅读:9719原书中的案例已经不能运行了,我重写了一个。import numpy as npimport pandas as pdfrom pandas_datareader import data as web'''pandas.io.data模块已经不在教材中的位置了。日久年深,已经移动到了pandas_datareader下面,所以需要安装pandas-datareader包,顺便更改了教材中的代码。'''goog = web.DataReader(
'GOOG', data_source='yahoo', start='3/14/2009', end='4/14/2014')# 众所周知的原因,所以我把数据源改成了yahoogoog.tail()goog['Log_Ret'] = np.log(goog['Close'] / goog['Close'].shift(1))goog['Volatility'] = pd.Series.rolling(goog['Log_Ret'], window=252,center=False).std() * np.sqrt(252)# pd.rolling_std这个写法已经过时了,改为了 pd.Series.rolling(goog['Log_Ret',center=False], window=252).std()import matplotlib.pyplot as plt# 因为用的不是ipython环境,所以也没没有%matplotlib的魔法goog[['Close', 'Volatility']].plot(subplots=True, color='blue',figsize=(8,6))plt.show()# 没有补充的这句话,是不会显示图的结果Python金融大数据分析-例1-2
最新教程周点击榜
微信扫一扫}

我要回帖

更多关于 金融汇数据分析终端 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信