こちらの記事はYoutubeにも動画をアップしています。ぜひ、ご活用ください。
STEP1 株価データを取得する
STEP1ではグラフで使う株価データを取得して表示までできるようにします。
ちなみに米国株のアップルの株価データを取ってきます。
必要な外部パッケージをインストール
!pip3 install pandas-datareader
!pip3 install python-dateutil
pandas-datareaderでは株価のデータを取得します。
python-dateutilではrelativedeltaを使用して日付の計算をします。
パッケージをインポート
from pandas_datareader import data
from datetime import date
from dateutil.relativedelta import relativedelta
先程インストールしたpandas_datareaderからdataをインポートします。
次にdatetimeからdateをインポートします。
最後にdateutilからrelativedeltaをインポートします。
pandas-datareaderの使い方
data.DataReader('aapl', 'stooq', '2021/1/1', '2021/12/30')
pandas_datareaderからインポートしたdata内のDatareaderを使って株価データを取得します。
Datareaderに必要な引数は4つあります。
第一引数は取ってくる株価データのティッカー’aapl’を指定します。
第二引数は取ってくる株価データの取得元’stooq’を指定します。
第三引数は取ってくる株価データの開始日’2021/1/1’を指定します。
第四引数は取ってくる株価データの終了日’2021/12/30’を指定します。
実行すると取得したデータが表示されます。

後々、扱いやすくするために変数を導入
ticker = "aapl"
start = end - relativedelta(years=1)
end = date.today()
df = data.DataReader(ticker, "stooq", start, end)
df.head()
引数を直接指定するより後々扱いやすくなるために変数を設定して指定できるようにします。
第一引数のティッカーは変数tickerに代入します。
第二引数は特に変更することはないので直接指定のままにしておきます。
第三引数を求めるには第四引数が必要となるので先に第四引数を設定します。
第四引数の株価データの終了日を変数endに代入します。
終了日はdate.today()で当日を指定しておきます。
そうすれば実行したその日をその都度指定してくれます。
第三引数の株価データの開始日は変数startに代入します。
変数startには先に指定した第四引数の変数endから期間を差し引いて算出します。
そのためにrelativedeltaを使います。
relativedeltaは期間を指定することができます。
期間はrelativedeltaの引数で指定できて今回は1年間を指定します。
上記の変数を引数に指定して取得したデータを変数dfに代入します。
dfとはデータフレームの略でpythonでデータフレームを扱うのは基本です。
もし分からなければyoutubeなどで「python dataframe」で検索すると有益な情報が得られると思いますので参考にしてみてください。
最後にdf.head()を実行してdfを表示します。
dfの後にhead()をつけるとdfの最初の5列を表示してくれます。

次回は取得したデータを使って終値のラインチャートを表示する
以上でグラフ表示に扱うデータを取得できました。
次回は今回取得したデータを使って終値のグラフを表示します。