Comece agoraComece grátis

Avaliar retornos

Agora vamos ver como a nossa seleção de portfólio teria se saído em comparação a investir apenas no SPY. Vamos fazer isso para verificar se nossas previsões são promissoras, apesar do baixo valor de R\(^2\).

Vamos definir um valor inicial para o investimento de $1000 e, em seguida, percorrer os retornos das nossas previsões e também do SPY. Usaremos os retornos mensais da nossa seleção de portfólio e do SPY e os aplicaremos ao nosso saldo inicial em caixa. Com isso, teremos uma visão mês a mês de como está o nosso investimento e poderemos ver como nossas previsões se saíram no geral versus o SPY. Em seguida, podemos plotar nosso portfólio com base nas previsões e compará-lo ao SPY.

Este exercicio faz parte do curso

Machine Learning para Finanças em Python

Ver curso

Instruções do exercicio

  • Defina as primeiras entradas das listas algo_cash e spy_cash com o mesmo valor (cash).
  • Multiplique o cash no nosso loop test_returns por 1 + r para aplicar os retornos ao nosso cash.
  • Assim como no loop test_returns, no loop de desempenho do SPY, acrescente cash a spy_cash após multiplicar por 1 + r para adicionar os retornos a cash.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

# 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])
Editar e Executar Código