Vyhodnocení výnosů
Pojďme se teď podívat, jak by si naše sestavené portfolio vedlo v porovnání s investicí do SPY. Tím ověříme, jestli jsou naše předpovědi slibné – i přes nízkou hodnotu R\(^2\).
Nastavíme počáteční hodnotu investice na 1 000 $, a pak projdeme výnosy z našich předpovědí i ze SPY. Použijeme měsíční výnosy z výběru portfolia a SPY a aplikujeme je na počáteční hotovost. Získáme tak měsíční přehled o tom, jak se investice vyvíjí, a uvidíme, jak si naše předpovědi celkově stojí oproti SPY. Nakonec portfolio z předpovědí vykreslíme a porovnáme ho s SPY.
Toto cvičení je součástí kurzu
Machine Learning for Finance in Python
Pokyny k cvičení
- Nastav první prvek v seznamech
algo_cashispy_cashna stejnou hodnotu (cash). - Ve smyčce přes
test_returnsvynásobcashvýrazem1 + r, aby se výnosy promítly docash. - Stejně jako ve smyčce pro
test_returns– ve smyčce pro výkonnost SPY připojcashdospy_cashpo vynásobení hodnotou1 + r, čímž přičteš výnosy kcash.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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])