Pobierz prognozy i przeprowadź wstępną ocenę
Mamy już wytrenowany model lasu losowego (rfr) – teraz użyjemy go do uzyskania prognoz na zbiorze testowym. Dzięki temu ocenimy, jak dobrze radzi sobie model: czy jego wyniki są porównywalne z wynikami indeksu SPY, a może nawet je przewyższają?
Skorzystamy z typowej metody sklearn .predict(features), a następnie przemnożymy miesięczne zwroty przez prognozy portfela. Zsumujemy je za pomocą np.sum(), ponieważ dla każdego miesiąca mamy po 3 wiersze. Na koniec wykreślimy miesięczne zwroty z naszych prognoz oraz zwroty SPY i porównamy oba wyniki.
To ćwiczenie jest częścią kursu
Uczenie maszynowe w finansach z Pythonem
Instrukcje do ćwiczenia
- Użyj metody
.predict()modelu lasu losowegorfr, aby uzyskać prognozy dlatrain_featuresitest_features. - Przemnóż część
returns_monthlyodpowiadającą zbiorowi testowemu przeztest_predictions, aby obliczyć zwroty z prognoz dla zbioru testowego. - Wykreśl
returns_monthlydla'SPY'ze zbioru testowego (wszystko odtrain_sizedo końca danych).
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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()