金融数据获取的api接口

浏览: 3988

最近苹果的股价一路疯长,继周四突破万亿美元市值后,周五盘中高点、收盘价双创新高。盘中高点达208.74美元,收盘价报207.99美元,上涨0.29%,创历史收盘新高,市值达10045.76亿美元。

在全球经济体的GGP排行中,已经可以稳稳排进前20名,真正的富可敌国了。

为了看下苹果自上市以来的股价变动情况,特地研究了下R和Python中的金融数据接口包,Python中的tushare库虽然非常全面的收录了国内沪深股市的数据,但是港股和美股却不支持。后来利用pandas中的一个扩展库拿到了苹果的股价数据。(pandas_datareader)

import pandas_datareader.data  as web
import datetime
import matplotlib.pyplot as plt
from matplotlib.pylab import date2num
from matplotlib.font_manager
import FontProperties
import mpl_finance as mpf
import matplotlib
import numpy as np
matplotlib.style.use('ggplot')
%matplotlib inline

定义获取数据的时间段

start = datetime.datetime(1980, 1,1)
end = datetime.datetime(2018,8,3)
prices = web.get_data_yahoo('AAPL',start, end)
#预览股价趋势图
prices['Close'].plot()
plt.show()


创建股价K线图

def create_candles(data):
   fig, ax = plt.subplots(figsize=(16,10))
   fig.subplots_adjust(bottom=0.2)
   ax.xaxis_date()
   plt.xticks(rotation=45)
   plt.yticks()
   plt.rcParams['font.sans-serif']=['SimHei']
   plt.title("股票代码:APPL苹果历史股价")
   plt.xlabel("时间")
   plt.ylabel("股价(元)")
   mpf.candlestick_ohlc(ax,data,width=1.5,colorup='r',colordown='green')
   plt.grid(True)

执行画图代码

if __name__ == '__main__':
   prices = prices.reset_index()
   prices['Date'] = prices['Date'].map(lambda x: date2num(x))
   data = prices.iloc[:,:5].values
   create_candles(data)


苹果股票自1980年12月12日上市,上市当日股价每股22$,最新的股价为207.99(2018-08-03),股价距上市之日起累计增长约57,403%(期间经过多次拆股)

tushare包是一个非常优秀的金融信息数据接口包,虽然取法覆盖港股和美股,但是对于国内的沪深股市数据支持的非常完善。

ts.get_k_data('000001', index=True)                #交易数据:
ts.get_hist_data('600848')                         #一次性获取全部日k线数据
ts.get_h_data()                                    #获取历史复权数据
ts.get_today_all()                                 #实时行情
df = ts.get_tick_data('600848',date='2014-01-09')  #历史分笔交易

此外tushare包对于大额交易、龙虎榜、融资融券、宏观经济数据、以及各种指数和货币市场相关数据支持都非常完善。

详情可以参考这里http://tushare.org/index.html

R语言中支持金融数据获取的接口自然要数quantmood包了。

library("quantmod")
#yahoo金融的api勉强可用,google金融的api已经停止维护了。
#指定要获取的股票名称或代码,以及数据源
setSymbolLookup(JJKR=list(name="AAPL",src="yahoo"))
getSymbols("AAPL")
chartSeries(AAPL,subset="1980-2::2018-08",theme=chartTheme("white"),TA="addVo();addBBands();addATR();addCMF()")


quantmood包里面提供了非常完善的股价分析函数以及其他财务、股息及各种技术分析指标数据,是一款非常好的证券分析工具利器。详细的函数用法可以去看官方文档,或者参考网上的资料。

https://www.douban.com/note/534494526/?type=rec

推荐 0
本文由 杜雨 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册