▶ Pythonで株の分析をするための環境構築がまだの方は以下の記事をどうぞ
はじめに
株価の時系列変化を分析するには、まず株価データを取得する必要があります。本記事では、Pythonを使って株価データを取得する方法を紹介します. 株価データを取得するためには、株価情報を提供するWebサイトからデータを取得する必要があります。Pythonのライブラリを使えば、簡単に株価データを取得することができます。取得したデータをPandasのデータフレームに格納し、Matplotlibを使ってグラフを描画することで、株価の時系列変化を視覚的に確認することができます。
環境
- Windows11
- Python 3.9.7
- pandas 1.5.0
- numpy: 1.23.3
- matplotlib: 3.6.1
株価データを取得する
ライブラリのインストール
すでに前回、株価のデータ分析用の仮想環境構築時に「pandas_datareader」をインストール済みですが、まだの方は以下でインストールしてください。
▶ 株価のデータ分析用の仮想環境構築の記事は以下をご覧ください。
株価データの取得
ではさっそく株価データを取得しましょう。「pandas_datareader」ライブラリのdataモジュールを使います。pdrとして使えるように次のようにimport しておきましょう。
# ライブラリのインポート
import pandas_datareader.data as pdr
これでdataモジュールをpdrとして呼び出すことができるようになりました。これを用いて株価データを取得しましょう。次の書式で株価を取得することができます。
銘柄は銘柄コードに日本の国コード「JP」をつけて指定します。後ろに指定したstooqは株価データを提供しているサービス名です。ここではトリドールホールディングス(銘柄コード3397)の株価を取得してみましょう。
df = pdr.DataReader('3397.JP','stooq')
df.head()
先頭5つのデータをみると、本日が2024/1/23なので前日までの株価のデータが取れていることがわかります。末尾5つのデータも見てみましょう。
df.tail()
2019/1/24~のデータが取得できています。5年分のデータが取得できるようですね。たった1行のコードで指定した銘柄の5年分の株価のデータが取得できました!すごいですね!!
銘柄コードは複数指定することもできます。’銘柄コード.JP’の部分をリストで指定すればOKです。やってみましょう。トリドールホールディングスに加えて、塩野義製薬(銘柄コード4507)の株価データも同時に取得してみましょう。
df = pdr.DataReader(['9984.JP','4507.JP'], 'stooq')
df
銘柄コード9984, および、4507の株価を取得することができました!簡単ですね。
まとめ
今回は5年分の株価データを取得する方法をご紹介しました。pandas_datareaderライブラリを利用すればわずか1行のコードで簡単でしたね。データを取得したらまずは傾向を見ていくとよいでしょう。株価の分析ではローソク足チャートが有名ですが、まず次回は折れ線で傾向を見ていくことにしましょう。
コメント