ПочатиПочніть безкоштовно

Оцініть дохідність

Подивімося, як би показав себе наш добір портфеля порівняно з інвестуванням лише в SPY. Зробимо це, щоб перевірити, чи є наші прогнози багатообіцяльними, попри невелике значення R\(^2\).

Ми задамо початкову суму інвестиції $1000, після чого пройдемося циклом по дохідностях за нашими прогнозами та за SPY. Ми використаємо місячну дохідність для нашого портфеля і SPY та застосуємо її до нашого початкового грошового залишку. Так ми отримаємо помісячну картину динаміки інвестиції та зможемо побачити, як наші прогнози спрацювали загалом порівняно зі SPY. Далі побудуємо графік нашого портфеля за прогнозами й порівняємо його зі SPY.

Ця вправа є частиною курсу

Machine Learning для фінансів у Python

Переглянути курс

Інструкції до вправи

  • Встановіть перші елементи списків algo_cash і spy_cash на однакову суму (cash).
  • У циклі test_returns помножте cash на 1 + r, щоб застосувати дохідність до нашого cash.
  • Аналогічно до циклу test_returns, у циклі для продуктивності SPY додавайте cash до spy_cash після множення на 1 + r, щоб нарахувати дохідність до cash.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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])
Редагувати та запускати код