写个爬虫太麻烦?不妨试试用yfinance调用雅虎财经数据
上次我们谈过如何在真格量化中获取外部数据。很多投资者都知道Yahoo提供了丰富的金融市场数据,不过获取这些数据很多时候需要自己去写一些网页爬虫。当然也有一些Python第三方库可以免除我们从头写爬虫的麻烦,几乎可以当作API来调用,yfinance就是其中一个(其在Github上地址https://github.com/ranaroussi/yfinance)。
比如我们想研究一下苹果公司的数据(股票代码AAPL):
获取公司信息
import yfinance as yf
aapl = yf.Ticker("AAPL")
cominfo=aapl.info #取得公司信息
然后就可以把公司信息输出(这与真格量化的
GetContractInfo函数类似):
for key in cominfo.keys():
print key+":"+cominfo[key]
结果为:
获取股票价格数据
我们也可以方便地取得公司股票价格历史数据,比如取最长时间的历史价格数据:
hist = aapl.history(period="max")
hist.head()
可以得到
其可设定的时间周期包括:
1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,max
我们可以查询公司分红和拆股信息:
aapl.actions
可以得到
可以只查询分红:
aapl.dividends
得到
或者只查询拆股:
aapl.splits
得到
获得公司财报
我们可以查询公司的财务数据:
aapl.financials
得到
还有公司的资产负债表
aapl.balance_sheet
得到
以及现金流量表
aapl.cashflow
得到
获取股票期权数据
先查询该公司有哪些月份的期权:
aapl.options
得到可以交易期权的到期日
('2019-06-07','2019-10-18', '2020-01-17', '2020-06-19')
我们可以查询一个月份的所有看涨期权:
opt = aapl.option_chain('2019-06-07')
opt.calls
得到
或者看跌期权
opt.puts
得到
获取期货历史价格数据
获取期货价格方法与股票类似,例如
美豆2019年11月份合约:
soybean=yf.Ticker("SX19.CBT")
hist = soybean.history(period="max")
可以得到
想研究内外盘套利策略或者个股期权定价模型的投资者不妨试试,利用好雅虎财经这座金矿。
— — — — — — E N D — — — — — —
往期文章:
真格量化可访问:
https://quant.pobo.net.cn
真格量化微信公众号,长按关注:
遇到了技术问题?欢迎加入真格量化Python技术交流QQ群 726895887