yahoo finance apiで日本株の株価を取得する方法

api

yahoo financeのapiで無料で株価情報が取得できるapiを見つけたので、その取得方法について解説していきます。

こういった情報を無料で公開してくれるのはありがたいですが、ドキュメントが見当たらなかったので、自分が調べた中で使えそうなものを共有していきます。

yahoo finance apiで日本株の株価を取得する方法

株価情報はこちらの記事が参考になりました。

Google Apps ScriptでYahoo Finance APIから株価を取得してアレコレしたい! - Qiita
Yahoo Finance APIとはYahooが提供していた金融に関するAPI現状公式にAPIドキュメントがないPythonのライブラリはいくつか見つかったが他の言語のものがあまり見当たらない非公式のアプリがYahooFinanceAPIを使っていると書いているので多分中を見たらわかるはず…と思いきやどれもこれもエラ...

エンドポイントはhttps://query1.finance.yahoo.com/v8/finance/chart になります。今回はpostmanを使用してapiを取得していきます。(見づらいですが、ブラウザ直打ちでも値を表示することができます。)

特定銘柄の株価を取得するには、https://query1.finance.yahoo.com/v8/finance/chart/{銘柄コード}.Tで取得することができます。

例えば、トヨタ自動車(銘柄コード: 7203)だとしたら、https://query1.finance.yahoo.com/v8/finance/chart/7203.Tになります。

それでは色々なパターンの株価情報を取得するエンドポイントについて記載していきます。

ローソク足の範囲(分足・日足・月足)の指定方法

ローソク幅の指定は、intervalのクエリパラメータを設定することで取得できます。

https://query1.finance.yahoo.com/v8/finance/chart/7203.T?interval=1d // 1dは一日のデータ

その他設定できる間隔は以下になります。

分足interval=○m設定できる値:1, 2, 5, 15, 30, 60, 90
時間足interval=○h設定できる値:1
日足interval=○d設定できる値:1, 5
週足interval=○wk設定できる値:1
月足interval=○mo設定できる値:1, 3

取得する期間

期間を指定する方法は2種類あります。

  • 今から○日前までの株価を取得する方法

rangeのクエリパラメータを使用することで取得することができます。この時、intervalも一緒に指定しないと、デフォルトで分足で取得します。

https://query1.finance.yahoo.com/v8/finance/chart/7203.T?interval=1d&range=60d
// 60営業日前までの日足を取得することができる。
  • ○日から○日までの株価を取得する方法

period1とperiod2で期間を指定して取得するデータの開始日と終了日を指定することができます。上記と同じくintervalの指定が必要です。

https://query1.finance.yahoo.com/v8/finance/chart/7203.T?interval=1d&period1=1705968000&&period2=1708992001

また、タイムスタンプはUNIXタイムスタンプと呼ばれるもので指定しないといけないため、https://url-c.com/tc/ などを使用して、日付をUNIXタイムスタンプに変換する必要があります。

指数の株価を取得する

S&P500 「^GSPC」で取得できる

https://query1.finance.yahoo.com/v8/finance/chart/^GSPC?interval=1d

日経225 「^N225」で取得できる

https://query1.finance.yahoo.com/v8/finance/chart/^N225?interval=1d

まとめ

以上、yahoo financeのapiで株価情報を取得する方法についてまとめました。

無料で株価情報を取得することができるのがありがたすぎます…!

調べると、売上高や配当などのファンダメンタルの情報も取得できるみたいです。今後、取得する機会があれば追記しています。

また、railsアプリで株価情報を取得できる記事があまりなかったので、サービスを作りがてらrailsで株価情報を取得する方法についても紹介していこうと思います。

コメント

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