日銀のetf購入はzipで発表されている。なんでzipやねんという声がありますが、zipなもの仕方がない。zipの開き方を教えていただいたので、記録ついでに書いておきます。教えてもらったら超簡単だったけど、イマイチ意味はわかっていない。
import requests from io import BytesIO import zipfile import pandas as pd url = 'http://www3.boj.or.jp/market/jp/etfreit.zip' res = requests.get(url) zipdata = BytesIO() zipdata.write(res.content) input_zip = zipfile.ZipFile(zipdata) df = pd.read_excel(BytesIO(input_zip.read('2016.xls')))
これでデータフレームの中に2016年4月からの購入ヒストリカルが入ります。で、これを整頓すると、集計とか簡単にできます。 etfを買ったコラムをetf_buyという名前にしたとすると、
df.loc['2016-10','etf_buy'].count()
で日銀の10月の購入回数がわかりますね。4回です。でcount()をsum()にすると購入金額2,828億円がわかります。 BytesIOが何をやっているのかわからないので、ドキュメントを読んでみましたが、さっぱりわからない。あと、 標準ライブラリがたくさんあってびっくりしました。というか全然知らんなぁ。