Předpovědi a první vyhodnocení
Teď, když máme natrénovaný model náhodného lesa (rfr), použijeme ho k získání předpovědí na testovací sadě. Chceme tak vyhodnotit výkonnost modelu – na základní úrovni: dosahuje lepších nebo srovnatelných výsledků než přímý nákup indexu SPY?
Použijeme standardní metodu sklearn .predict(features), pak vynásobíme měsíční výnosy našimi předpovězenými váhami portfolia. Výsledky sečteme pomocí np.sum(), protože každý měsíc obsahuje 3 řádky. Nakonec vykreslíme měsíční výnosy z našich předpovědí spolu s výnosy SPY a porovnáme je.
Toto cvičení je součástí kurzu
Machine Learning for Finance in Python
Pokyny k cvičení
- Použij metodu
.predict()modelu náhodného lesarfrk získání předpovědí protrain_featuresitest_features. - Vynásob část
returns_monthlyodpovídající testovací sadě hodnotamitest_predictions, aby sis získal/a výnosy předpovědí na testovací sadě. - Vykresli
returns_monthlypro'SPY'z testovací sady (vše odtrain_sizedo konce dat).
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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()