Introdução à Análise de Portfólios em Python
Charlotte Werger
Data Scientist
Retorno anual: Retorno total ganho em um ano-calendário
Retorno anualizado: Taxa de retorno anual inferida de qualquer período
Retorno médio: Retorno total em um período longo, distribuído pelos períodos menores
Retorno acumulado (composto): Inclui o efeito de reinvestir juros, dividendos e ganhos de capital
$$

$$
$$
N em anos: $rate= (1 +Return)^{1/N} -1$
N em meses: $rate= (1+Return)^{12/N} -1$
Converta qualquer período para taxa anual:
# Ver início e fim da série temporal
apple_price.head(1)
date
2015-01-06 105.05
Name: AAPL, dtype: float64
apple_price.tail(1)
date
2018-03-29 99.75
Name: AAPL, dtype: float64
# Definir o número de meses
months = 38
# Calcular o retorno total
total_return = (apple_price[-1] - apple_price[0]) /
apple_price[0]
print (total_return)
0.5397420653068692
# Calcular o retorno anualizado em meses
annualized_return=((1 + total_return)**(12/months))-1
print (annualized_return)
0.14602501482708763
# Selecionar período de três anos
apple_price = apple_price.loc['2015-01-01':'2017-12-31']
apple_price.tail(3)
date
2017-12-27 170.60
2017-12-28 171.08
2017-12-29 169.23
Name: AAPL, dtype: float64
# Calcular o retorno anualizado em 3 anos
annualized_return = ((1 + total_return)**(1/3))-1
print (annualized_return)
0.1567672968419047
Introdução à Análise de Portfólios em Python