「yahoo_finance_api2」で株価を取得してみる

調査
スポンサーリンク

株価を取得できるPythonライブラリの1つである「yahoo_finance_api2」で株価を取得してみました!
(調査日:2023年3月13日)

【調査時の環境】
・yahoo_finance_api2 0.0.12

 

目次

 


 

「yahoo_finance_api2」をインストール

コマンド実行
$ pip install yahoo_finance_api2

 

 

株価取得のサンプルコード

yahoo_finance_api2_sample.py
from yahoo_finance_api2 import share
from yahoo_finance_api2.exceptions import YahooFinanceError
import pandas as pd
from datetime import datetime

 # トヨタの東証コード
code = "7203"
my_share = share.Share(code + ".T")

try:
    symbol_data = my_share.get_historical(share.PERIOD_TYPE_YEAR,
                                          1,
                                          share.FREQUENCY_TYPE_DAY,
                                          1)                                      
except YahooFinanceError as e:
    print(e.message)


df = pd.DataFrame({'Date': [datetime.fromtimestamp(d / 1000) for d in symbol_data['timestamp']],\
            'Open' : symbol_data['open'], 'High' : symbol_data['high'], 'Low' : symbol_data['low'],\
            'Close' : symbol_data['close'], 'Volume' : symbol_data['volume']}).set_index('Date')

print(df)
  • symbol_dataで取得したデータはタイムスタンプがUNIXタイム(ミリ秒)で分かりにくいため、pd.DataFrame(のところでデータフォーマット変換しています。

参考:
Pythonのyahoo-finance-api2用いて株価を取得する
(公式)yahoo-finance-api2 0.0.12

 

 

実行結果

実行結果
                       Open    High     Low   Close    Volume
Date                                                         
2022-03-14 09:00:00  1883.0  1929.0  1881.5  1914.0  26346200
2022-03-15 09:00:00  1912.5  1976.0  1907.0  1955.0  26940000
2022-03-16 09:00:00  1968.0  2000.0  1967.5  1991.0  32882200
2022-03-17 09:00:00  2045.0  2065.0  2010.0  2036.0  35580400
2022-03-18 09:00:00  2000.5  2025.0  1996.0  2020.0  43985400
...                     ...     ...     ...     ...       ...
2023-03-06 09:00:00  1893.0  1915.0  1890.0  1905.5  28716300
2023-03-07 09:00:00  1900.0  1914.5  1893.0  1914.5  20837300
2023-03-08 09:00:00  1904.0  1915.5  1903.0  1907.5  18703000
2023-03-09 09:00:00  1917.5  1931.5  1915.0  1919.5  23844600
2023-03-10 09:00:00  1898.0  1910.5  1887.5  1896.0  33371500

[244 rows x 5 columns]

 

時間軸でプロットしてみました。
ほぼ一致していることが分かります。

・青線が「yahoo_finance_api2」で取得したもの、緑線がGoogle Finance(Web)のものです。

 

以上!

コメント

タイトルとURLをコピーしました