Getirileri değerlendir
Şimdi portföy seçimimizin yalnızca SPY'a yatırım yapmaya kıyasla nasıl performans göstereceğine bakalım. Bunu, düşük R\(^2\) değerine rağmen tahminlerimizin umut verici olup olmadığını görmek için yapacağız.
Yatırımımız için başlangıç değerini $1000 olarak belirleyeceğiz, sonra tahminlerimizden ve SPY'dan gelen getirilerde döngü kuracağız. Portföy seçimimizden ve SPY'dan gelen aylık getirileri başlangıç nakit bakiyemize uygulayacağız. Buradan yatırımımızın ay ay nasıl gittiğini göreceğiz ve genel olarak tahminlerimizin SPY'a karşı nasıl performans gösterdiğini inceleyebileceğiz. Sonrasında, tahminlerimizden oluşan portföyümüzü görselleştirip SPY ile karşılaştırabiliriz.
Bu egzersiz, kursun bir parçasıdır
Python ile Finans için Machine Learning
Egzersiz talimatları
- Hem
algo_cashhem despy_cashlistelerinin ilk girişlerini aynı miktara (cash) ayarla. - Getirileri
cashüzerine uygulamak içintest_returnsdöngümüzdekicashdeğerini1 + rile çarp. test_returnsdöngüsünde olduğu gibi, SPY performans döngüsünde de getirilericashe eklemek içincashi1 + rile çarptıktan sonraspy_cashlistesine ekle.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Calculate the effect of our portfolio selection on a hypothetical $1k investment
cash = 1000
algo_cash, spy_cash = [cash], ____ # set equal starting cash amounts
for r in test_returns:
cash *= 1 + r
algo_cash.append(cash)
# Calculate performance for SPY
cash = 1000 # reset cash amount
for r in returns_monthly['SPY'].iloc[train_size:]:
cash ____ ____
____
print('algo returns:', (algo_cash[-1] - algo_cash[0]) / algo_cash[0])
print('SPY returns:', (spy_cash[-1] - spy_cash[0]) / spy_cash[0])