始める無料で始める

予測の取得と初期評価

ランダムフォレストモデル(rfr)の学習が完了したので、テストセットに対する予測を取得しましょう。これにより、モデルの性能を評価できます。基本的な確認として、インデックスファンド SPY を単純に購入した場合と同程度、またはそれ以上の成果が出ているかを見ていきます。

通常の sklearn の .predict(features) メソッドを使って予測を取得し、月次リターンにポートフォリオの予測値を掛け合わせます。各月に 3 行のデータがあるため、np.sum() で合計します。その後、予測から得られる月次リターンと SPY の月次リターンをともにプロットして比較しましょう。

この演習はコースの一部です

Python による金融のための Machine Learning

コースを見る

演習の手順

  • rfr ランダムフォレストモデルの .predict() メソッドを使い、train_featurestest_features それぞれに対して予測を行いましょう。
  • returns_monthly のテストセット部分に test_predictions を掛け合わせ、テストセット予測のリターンを計算しましょう。
  • テストセットにおける 'SPY'returns_monthlytrain_size からデータ末尾まで)をプロットしましょう。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Get predictions from model on train and test
train_predictions = rfr.predict(train_features)
test_predictions = ____

# Calculate and plot returns from our RF predictions and the SPY returns
test_returns = np.sum(returns_monthly.iloc[train_size:] * ____, axis=1)
plt.plot(test_returns, label='algo')
plt.plot(returns_monthly['SPY'].iloc[____], label='SPY')
plt.legend()
plt.show()
コードを編集して実行