Pythonを使って過去のデータから未来を予測する方法を解説します。YouTubeにも投稿しているので動画の方が見やすい方はぜひ動画でご覧ください!
概要
未来の株価を予測するために、過去のデータをPythonのstooqというライブラリを使って取得します。取得したデータをもとにpmdarimaというAIのライブラリを用いて学習を行い、学習したモデルを使用して未来の株価を予測します。
青色の線の過去のデータかAIが予測した未来のデータを緑色の線で描いています。
今回使用したコードはGoogle ColabというブラウザからオンラインでPythonが実行できる環境で公開しています。以下のリンクからアクセスして実際に動かしながら確認することで理解が深まると思います。
Google Colab
やること
pmdarimaのインストール
https://colab.research.google.com/drive/1RIouiTq43u1QqD6xA6aurLgCFTMHEi60
株価データを取得
from pandas_datareader.stooq import StooqDailyReader
from datetime import datetime
start = datetime(2023, 11, 1)
end = datetime(2024, 2, 1)
brand = '1306.JP' #TOPIX
stooq = StooqDailyReader(brand, start=start, end=end)
data = stooq.read()
AIを使って学習
# 学習
train = data.Close.to_numpy()
train = np.flip(train) # 時刻が古い方から新しい方の順番にする
model = pm.auto_arima(train, d=2, seasonal=False, max_p=6)
AIを使って未来を予測し、グラフに表示する
import matplotlib.pyplot as plt
# 予測
p = 12
forecasts = model.predict(p)
# グラフ表示
x = np.arange(61+p)
plt.plot(x[:-1*p], train, c='blue')
plt.plot(x[-1*p:], forecasts, c='green')
plt.show()
終わりに
正しい未来を正確に予測することは難しいですが、過去のデータから未来を予測するのはAIの得意分野の一つです。予想以上に簡単に実行できるのでみなさんもぜひ試してみてください。Google ColabのコードやYouTubeの動画も参考にしていただきたいです。
コメント