pythonでyfinanceの環境を作って試してみる

成功する投資:トレーディングのサイエンス – Qiita
を読んで、面白そうだったので、自分でも環境作ってやってみよう。

仮想環境を作る

pyenv と venv で仮想環境を作る。

まずは、pyenv でバージョンを選ぶ。

% pyenv global 3.9.0
% pyenv versions
  system
* 3.9.0 (set by /Users/takada/.pyenv/version)

プロジェクトフォルダを作って仮想環境を作る。

% mkdir ~/workspace/trade
% cd ~/workspace/trade
% python -m venv .venv

VSCode と相性いいように、プロジェクトフォルダの下に仮想環境のフォルダを作った。

yfinance を入れる

仮想環境に入って、yfinance をインストールする。

% source .venv/bin/activate
% pip install yfinance

バグを直しておく

yfinance-0.1.55 なら 376 行目付近のコードを修正する。
financials で検索すれば見つかる。

375         # get fundamentals
376         # 削除 data = utils.get_json(url+'/financials', proxy)
377         url = "{}/{}/financials".format(self._scrape_url, self.ticker)
378         data = utils.get_json(url, proxy)

ヒストリカルデータを取得する

import yfinance as yf
ticker = yf.Ticker("7203.T")
ticker.history(period="max")

ticker

損益計算書を取得する

import yfinance as yf
ticker = yf.Ticker("7203.T")
ticker.financials

financials

貸借対照表(バランスシート)を取得する

import yfinance as yf
ticker = yf.Ticker("7203.T")
ticker.balance_sheet

balancesheet

キャッシュフロー計算書を取得する

import yfinance as yf
ticker = yf.Ticker("7203.T")
ticker.cashflow

cashflow

銘柄サマリーを取得する

import yfinance as yf
ticker = yf.Ticker("7203.T")
ticker.info

info

まとめ

yfinance を使って、

  • ヒストリカルデータ
  • 損益計算書
  • 貸借対照表
  • キャッシュフロー計算書

を取得できた。

次のステップ

土日しか分析できないので、金曜の夜に決算書の情報を取得して、分析したい。

次はこのあたりを調べよう。

  • すべての銘柄を取得したので、どうやって銘柄一覧がほしい
  • 決算書の取得は時間がかかるので決算書の更新を検知したい

ノート

Posted by crz33