【絶対挫折しない】Google コラボで株価分析|データ保存・読込み|その2

挫折しない株価分析データの保存・読込み編

グーグルコラボで始める株価分析シリーズその2です。

第2回目となる今回は、Yahoo Financeから取得したデータを保存してエクセルで開ける形式でエクスポートすることと、保存したデータを読み込んで利用する手順を解説します。

都度データを取得すると時間もかかってしまうので、あらかじめバックテスト用にデータを保存しておき、バックテストの際はそのデータを読み込むことで効率よく分析が行えます。

シリーズものとなっておりますので、この記事に直接アクセスされた方は前回の記事もぜひご参照ください。

目次

ステップ1:事前準備

まず、取得したデータを保存することから始めましょう。

事前にグーグルドライブとマウントし、保存先のパスを指定しておきます。(前回の記事要参照)

また、ライブラリもインポートしておきます。

#↓ドライブをマウントした後に実施すること
%cd "/content/drive/My Drive/Colab Notebooks/swing_trade"

import pandas as pd
import datetime as dt
from pandas_datareader import data as pdr #日経平均やナスダック、日本の個別銘柄のデータを取得
import yfinance as yfin

続いて、適当な銘柄のデータを取得しましょう。

start = dt.date(2013,1,1)
end = dt.date(2023,3,31)

yfin.pdr_override()
df = pdr.get_data_yahoo('8306.T', start, end)

取得したデータがdfという変数に格納されました。

ステップ2:csv,exel形式で保存する

まずはcsv形式で保存してみましょう。コードは非常に簡単で、以下のコードで保存することができます。

df.to_csv('test.csv')

グーグルドライブを開いて、対象のファイルが作成されているか確認してみてください。

今回ですと、ステップ0で指定した「/content/drive/My Drive/Colab Notebooks/swing_trade」直下に作成されています。

反映までに少しラグがあるので、作成されない場合はドライブを再読み込みするなどしてください。

続いてよく利用するエクセル形式でも保存してみましょう。

グーグルコラボの画面上でもデータ集計はもちろん行うことができますが、慣れ親しんだエクセルでデータを見たいという場面も多いですよね。

df.to_excel('test1.xlsx')

ステップ3:保存したファイルを読み込む

保存したファイルを読み込み、取得したデータと同じデータが出力されるか確認します。

取得時のデータはこのようになっています。

df.head()
	Open	High	Low	Close	Adj Close	Volume
Date						
2013-01-04	477.0	485.0	474.0	484.0	335.291992	119113900
2013-01-07	487.0	488.0	475.0	476.0	329.749939	86678900
2013-01-08	469.0	471.0	457.0	462.0	320.051483	117835800
2013-01-09	451.0	472.0	449.0	469.0	324.900818	122409400
2013-01-10	474.0	484.0	472.0	474.0	328.364471	158715200

保存したデータを読み込むのも非常に簡単で、以下のコードで読み込めます。

df_csv = pd.read_csv('test.csv')

読み込んだデータをheadで出力して確認しましょう。

df_csv.head()
	Date	Open	High	Low	Close	Adj Close	Volume
0	2013-01-04	477.0	485.0	474.0	484.0	335.291992	119113900
1	2013-01-07	487.0	488.0	475.0	476.0	329.749939	86678900
2	2013-01-08	469.0	471.0	457.0	462.0	320.051483	117835800
3	2013-01-09	451.0	472.0	449.0	469.0	324.900818	122409400
4	2013-01-10	474.0	484.0	472.0	474.0	328.364471	158715200

同様の結果が出力されたので、保存したデータの読み込みが正しく行えていますね。

xlsx形式で保存したデータの読み込みも確認します。以下のコードで読み込みます。

df_excel = pd.read_excel('test1.xlsx')

こちらも出力して結果を確認します。

df_excel.head()
Date	Open	High	Low	Close	Adj Close	Volume
0	2013-01-04	477.0	485.0	474.0	484.0	335.291992	119113900
1	2013-01-07	487.0	488.0	475.0	476.0	329.749939	86678900
2	2013-01-08	469.0	471.0	457.0	462.0	320.051483	117835800
3	2013-01-09	451.0	472.0	449.0	469.0	324.900818	122409400
4	2013-01-10	474.0	484.0	472.0	474.0	328.364471	158715200

同様の結果が出力されました。

次回の記事はこちらからどうぞ。

もっと勉強したい方向けのおすすめ参考書

当記事ではコピペをすれば誰でも同じ結果が出せる、ということを主眼にしております。

そのためPythonや株に関する情報は必要最小限となっておりますので、適宜わからない点は他サイト様で補っていただけると幸いです。

Pythonそのものを勉強したいという場合は、以下の書籍が現状最もとっつきやすく、分かりやすく書かれているのではないかと思います。(私も持っています。)興味があれば是非手にとってみてください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

このサイトを運営している人

4大生保勤務です。
リテールを経て、現在はIT部門。
2021年から米国株投資を開始しました。
本業の保険や機械学習、投資について発信していきます。

目次