Python之获取与简单处理金融数据


本文摘自php中文网,作者零到壹度,侵删。

Python的功能不可以说不大,在金融数据分析里面有着很方便的应用。本篇文章给大家分享的内容是Python之获取与简单处理金融数据,有着一定的参考价值,有需要的朋友可以参考一下

1.数据获取

pandas包中有自带的数据获取接口,详细的大家可以去其官网上找,是io.data下的DataReader方法。

1

2

3

4

5

6

7

8

9

10

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 = '2000-1-1')

#查看一下数据的一些信息 上面这一方法返回的是一个pandas dataframe的数据结构

print DAX.info()

#绘制收盘价的曲线

DAX['Close'].plot(figsize=(8,5))

我们获得的数据是dataframe的结构,毕竟是pandas的接口的嘛。然后我们绘制一下收盘价曲线。


这个是我们获取的数据的信息。


绘制出来的收盘价曲线是这样的。

2.简单的数据处理

有了股票价格,我们就计算一下每天的涨跌幅度,换句话说,就是每天的收益率,以及股价的移动平均和股价的波动率。

1

2

3

4

5

6

7

8

9

10

11

12

13

#计算每日的涨跌幅

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,其实就是市场的波动率指数。


相关推荐:

Python在金融,数据分析,和人工智能中的应用

使用Python获取Google,Yahoo金融数据工具

以上就是Python之获取与简单处理金融数据的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

详解Python中实现延时回调普通函数

Python如何输出星号组成的菱形图形?

Python的调试;print()和断言(实例解析二)

Python中any()和all()使用方法的简单介绍

Python setup是什么

Python关于tkinter模块中类的三种继承方式示例分享

非常实用的Python小技巧总结

Python怎么找出最大数

安装Python后如何打开

Python中预处理以及热图的简单介绍

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...