株価分析 Prophet
実際の株価データを使ったProphetによる分析の具体例を示します。
ここでは、Yahoo Financeから取得したApple Inc.(AAPL)の過去の株価データを使って説明します。
手順
データの準備:
- Yahoo Financeなどからデータを取得する(ここでは、
pandas_datareader
を使用します)。 - データの前処理を行う。
- Yahoo Financeなどからデータを取得する(ここでは、
Prophetのインストールとインポート:
1
2
3
4
5!pip install yfinance prophet
import yfinance as yf
from prophet import Prophet
import pandas as pd
import matplotlib.pyplot as pltデータの取得とフォーマット:
- Yahoo FinanceからAppleの株価データを取得し、Prophetが理解できるフォーマット(
ds
列に日付、y
列に値)に変換します。1
2
3
4
5# Appleの株価データを取得
df = yf.download('AAPL', start='2020-01-01', end='2023-01-01')
df.reset_index(inplace=True)
df = df[['Date', 'Close']]
df.columns = ['ds', 'y']
- Yahoo FinanceからAppleの株価データを取得し、Prophetが理解できるフォーマット(
モデルの作成とトレーニング:
1
2model = Prophet()
model.fit(df)予測の作成:
- 予測する期間のデータフレームを作成し、モデルに予測を行わせます。
1
2future = model.make_future_dataframe(periods=365) # 365日先まで予測
forecast = model.predict(future)
- 予測する期間のデータフレームを作成し、モデルに予測を行わせます。
予測結果の可視化:
1
2fig = model.plot(forecast)
plt.show()
以下に、上記手順に基づくコードを示します。
1 | import yfinance as yf |
このコードでは、$2020$年から$2023$年のAppleの株価データを取得し、それを基に$2024$年までの株価を予測しています。
実際のデータを用いることで、Prophetの予測性能や実用性を具体的に確認することができます。
結果解説
[実行結果]
グラフの説明をします。
このグラフはProphetを用いてAppleの株価データを予測した結果です。
以下に各要素の説明を行います。
グラフの要素
黒い点(Observed Data):
- 黒い点は実際の観測データ(ここではAppleの過去の株価)を示しています。
- 日付軸($x$軸)は観測期間を示し、価格軸($y$軸)は株価を示しています。
青い線(Predicted Data):
- 青い線はProphetによって予測された株価を示しています。
- 観測データの終了時点から未来のデータに対して予測が行われています。
青いシェード(Uncertainty Interval):
- 青いシェードは予測の不確実性範囲を示しています。
- これは$95%$信頼区間を示しており、予測値がこの範囲内にある確率が高いことを意味します。
グラフの解釈
過去の株価のトレンド:
- 過去のデータ(黒い点)を見ると、株価は$2020$年から上昇トレンドを見せ、その後にいくつかのピークと谷が見られます。
- $2021$年から$2022$年にかけて株価が特に高い値を示していますが、その後は下降トレンドに入っています。
未来の株価予測:
- 青い線とシェードを見ると、$2023$年以降の株価が予測されています。
- 予測によると、株価は$2023$年の終わりにかけてさらに変動しながらも緩やかに下がる傾向があることが示唆されています。
- ただし、青いシェードが広がっていることから予測の不確実性が高いことも示されています。
このため、実際の株価が予測値から大きく外れる可能性もあることを意味します。
このグラフを元に、予測の精度やモデルの調整が必要かを評価したり、他の外部要因(経済状況、企業のニュースなど)を考慮に入れて更に詳しい分析を行うことができます。