Kom igångKom igång gratis

Hämta förutsägelser och genomför en första utvärdering

Nu när vi har en tränad random forest-modell (rfr) vill vi använda den för att göra förutsägelser på testuppsättningen. Det här gör vi för att utvärdera modellens prestanda – på en grundläggande nivå: presterar den lika bra eller bättre än att helt enkelt köpa indexet SPY?

Vi använder den vanliga sklearn-metoden .predict(features) och multiplicerar sedan våra månadsavkastningar med våra portföljförutsägelser. Vi summerar dessa med np.sum() eftersom det finns 3 rader per månad. Sedan plottar vi både månadsavkastningarna från våra förutsägelser och SPY, och jämför de två.

Den här övningen är en del av kursen

Maskininlärning för finans i Python

Visa kurs

Övningsinstruktioner

  • Använd random forest-modellen rfr:s .predict()-metod för att göra förutsägelser på train_features och test_features.
  • Multiplicera testuppsättningens del av returns_monthly med test_predictions för att beräkna avkastningen för våra testförutsägelser.
  • Plotta testuppsättningens returns_monthly för 'SPY' (allt från train_size till slutet av data).

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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()
Redigera och kör kod