pnadasで日経平均を取得してmatplotlibで描画する

もっとちゃんと分析してトレード戦略立てましょうってことでpandasを使ってみる。

ちなみに、pandas-reader は Debian ではまだパッケージ化されていないのでpipで入れざるを得なかった。pip で入れたライブラリは /usr/local に入る。

pandasの退屈な話はすっとばして、とりあえずセントルイス連邦準備銀行のfredデータベースから1949年から昨日までの日経平均株価を取得して、matplotlibで描画してみる。

このての実験は jupyter notebook が便利だと思う。

#!/usr/bin/env python3
 
import pandas_datareader.data as pdr
import matplotlib.pyplot as plt
import datetime as dt
 
def displayN225():
    yesterday = dt.datetime.today() - dt.timedelta(days=1)
    N225 = pdr.DataReader('NIKKEI225', 'fred', '1949/5/16', yesterday.strftime("%Y/%m/%d"))
    N225.plot(color='red')
    plt.ylabel('NIKKEI225')
    plt.xlabel('DATE')
    plt.show()
 
if __name__ == "__main__":
    displayN225()

データのダウンロードにそこそこ時間がかかります。

色々な時間軸で切り取って眺めると、見えるものがあったりなかったり。

データの取得先が限られるので、日本の個別株のデータは取れないか、取れてもドル建てになる。
詳細はDataReaderのドキュメントを読むこと。

また、日本のYahooファイナンスはスクレイピング禁止なので注意を。

ということで国内個別株でやるなら証券会社のスクリーンスクレイピングか、提供API(いまはカブドットコムくらいしか提供してない?)を使う必要がある。

スイングトレードのための分析とかなら良いけどHFTやろうとするならどこからデータ取るのか考えないといけなさそうなのでめんどくさい。

証券会社が提供のツールで充分と言えば充分だけど、それを言ったら元も子もない。

スポンサーリンク

フォローする

スポンサーリンク