LoginSignup
0
2

More than 1 year has passed since last update.

【Python】Pandas で株価データを取得する(その2)

Posted at

はじめに

前回書いた株価データを取得するコードは問題があった

  • 銘柄がトヨタ固定
  • 株価データ取得期間が固定

今回は,前回のコードを次のように書きかえてみる

  • トヨタ以外にも任意の銘柄の株価データが取得できるコード

複数銘柄の株価データを取得する

取得したい複数銘柄のコードをリストにして main 関数に渡してみる
ついでに銘柄名も渡してみる

if __name__ == '__main__':
    codeList = ['7203', '7201', '7267'];
    companyList = ['トヨタ', '日産', 'ホンダ'];
    main(codeList, companyList);

main 関数は,コードと銘柄名のリストをもらい,
リストの要素数分の株価データ取得処理を行う
DataReader 関数を呼び出す際に,コードの最後に'.T'をつける

def main(codeList, companyList):
    for code, company in zip(codeList, companyList):
        df = pdr.DataReader(code + '.T', 'yahoo', '2020-11-01', '2021-11-01');
        print(company, df.tail(1));

まとめると,次のようなコードになる

step02.py
import pandas_datareader.data as pdr

def main(codeList, companyList):
    for code, company in zip(codeList, companyList):
        df = pdr.DataReader(code + '.T', 'yahoo', '2020-11-01', '2021-11-01');
        print(company, df.tail(1));

if __name__ == '__main__':
    codeList = ['7203', '7201', '7267'];
    companyList = ['トヨタ', '日産', 'ホンダ'];
    main(codeList, companyList);

おわりに

株価データ取得期間が固定という問題は残ったままだが,
複数銘柄の株価データを取得することができた

しかし,新たに気になる問題が発生している
取得したい銘柄のコードをPythonコードの中に直に書いていることだ
取得する銘柄のコードは別ファイル(テキストやExcelファイルなど)で管理したい

次回は,次のようなコードを書いてみよう

  • 株価データ取得期間が任意の期間で(例えば,6か月前から現在まで)取得できるコード
  • 取得する銘柄コードをExcelファイルで用意し,Excelファイルを読み込み株価データが取得できるコード
0
2
0

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
0
2