46
46

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

pandas で日経平均株価指数を plot する

Posted at

何をするのか

Python のデータ処理ライブラリ pandas (http://pandas.pydata.org/) で遊んでいたら、

  1. Web から Finance 情報を取ってくる
  2. プロットする

というのがコードだけでできてすばらしかったので投稿。

コードと解説

import pandas.io.data as web
import matplotlib.pyplot as plt
import datetime

# 取得する日の範囲を指定する
start = datetime.datetime(2014, 1, 1)
end = datetime.datetime(2014, 9, 1)

# Yahoo ファイナンスから、 ^N225 (日経平均株価指数) を
# とってくる。
f = web.DataReader('^N225', 'yahoo', start, end)

plt.title('Nikkei 255 from 2014.1.1 to 2014.9.1')

# fill_between でその日の最高値と最低値をプロットする
plt.fill_between(f.index, f['Low'], f['High'], color="b", alpha=0.2)

# plot で、始値をプロットする。
# 自動的に Index が Date になっているので、横軸が時間になる。

f['Open'].plot()
print f[:10]
plt.show()

実行結果

pandas の DataFrame オブジェクトはこんな風に
表としてデータが保持される。

                Open      High       Low     Close  Volume  Adj Close
Date                                                                 
2014-01-06  16147.54  16164.01  15864.44  15908.88  192700   15908.88
2014-01-07  15835.41  15935.37  15784.25  15814.37  165900   15814.37
2014-01-08  15943.68  16121.45  15906.57  16121.45  206700   16121.45
2014-01-09  16002.88  16004.56  15838.44  15880.33  217400   15880.33
2014-01-10  15785.15  15922.14  15754.70  15912.06  237500   15912.06
2014-01-13  15912.06  15912.06  15912.06  15912.06       0   15912.06
2014-01-14  15657.20  15661.71  15383.69  15422.40  214500   15422.40
2014-01-15  15649.07  15808.73  15636.57  15808.73  185800   15808.73
2014-01-16  15845.15  15941.08  15710.14  15747.20  214200   15747.20
2014-01-17  15695.46  15783.37  15621.80  15734.46  180100   15734.46

プロット結果はこちら。
nikkei.png

ちなみに

^N225AAPL にすると Apple の株価が得られたりする。
日本の市場のアクセス API はまだ無いようだ。

46
46
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
46
46

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?