예측 생성과 1차 평가
이제 랜덤 포레스트 모델(rfr)을 학습했으니, 테스트 세트에 대한 예측을 만들어 보죠. 이는 모델의 성능을 평가하기 위한 것으로, 기초적인 수준에서 S&P 500 지수 ETF인 SPY를 그냥 매수하는 것만큼 혹은 그보다 잘하는지 확인하려는 목적이에요.
일반적인 sklearn의 .predict(features) 메서드를 사용하고, 그다음 월간 수익률에 포트폴리오 예측값을 곱합니다. 각 월에 대해 3개의 행이 생기므로 np.sum()으로 이를 합산해요. 그런 다음 우리 예측에서 나온 월간 수익률과 SPY의 월간 수익률을 함께 그려서 비교합니다.
이 연습은 강의의 일부입니다
Python으로 배우는 금융 분야 Machine Learning
연습 안내
rfr랜덤 포레스트 모델의.predict()메서드를 사용해train_features와test_features에 대한 예측을 만드세요.returns_monthly의 테스트 세트 구간에test_predictions를 곱해 테스트 예측의 수익률을 구하세요.- 데이터의
train_size부터 끝까지인 테스트 구간에 대해,'SPY'의returns_monthly를 그래프로 그리세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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()