Simulação de rentabilidade anual

Uma coisa bem comum quando se pensa em começar a investir é fazer projeções para o futuro e constatar o efeito dos juros compostos em nosso patrimônio.

Abaixo irei fazer uma pequena projeção em alguns anos, demonstrando o efeito explosivo que o tempo exerce em relação ao investimento.

O estudo foi feito utilizando Jupyter Notebook, para saber como instalar clique aqui.

Abra o Jupyter selecione a pasta desejada e crie um novo Notebook de Python 3

Vamos começar a digitar nosso código.

Primeiro vamos importar as libs necessárias para esse exemplo.

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker

Agora vamos inicializar e parametrizar os objetos para manipular o gráfico

#Quantidade de anos para simular
years = np.arange(20)

#Configurao do tamanho da imagem
plt.rcParams["figure.figsize"] = [12.0, 10.0]

#Retorna objeto para manipulacao do grafico
ax = plt.gca()

#Adiciona título na imagem gerada
plt.title("Rentabilidade do Patrimonio")

#Alterar a etiqueta de exibicao do eixo x
plt.xlabel("Anos")

#Alterar a etiqueta de exibicao do eixo y
plt.ylabel('Patrimônio')

#configuracao da escala do eixo X, como passei todos os anos ele ira adicionar todos eles na escala
locator = ticker.FixedLocator(years)

ax.xaxis.set_major_locator(locator)

#formata para adicionar o separador de milhar na escala do eixo Y
ax.yaxis.set_major_formatter(
 ticker.FuncFormatter(lambda x, p: format(int(x), ','))
)

Após a configuração básica do gráfico podemos nos preocupar com a geração dos dados, o que eu vou fazer é simplesmente uma rotina que vai considerar o patrimônio inicial, somar o aporte mensal e depois aplicar a taxa de juros hipotética do mês.

Primeira simulação com um patrimônio inicial de R$ 10.000,00, aporte mensal de 1.000,00 e uma rentabilidade de 13% ao ano.

#percentual hipotetico anual
rentabilidade_anual = 13

#calculo simples para descobrir o percentual mensal pronto para calcular
aliquota_mensal = (1 +(rentabilidade_anual / 100) / 12)
patrimonio_atual = 10000
aporte_mensal = 1000
evolucao_patrimonio  = []

Com as informações básicas podemos fazer o script para calculo, que basicamente irá fazer o calculo em todos os meses de cada ano.

#percorre cada ano
for n in years:    
    #percorre cada mes do ano
    for m in range(12):        
        patrimonio_atual += aporte_mensal                
        patrimonio_atual = patrimonio_atual * aliquota_mensal    
    
    #Adiciona no array valor patriminio no ano
    evolucao_patrimonio.append(patrimonio_atual)       

Agora podemos adicionar as informações geradas no gráfico

#Adiciona as informacoes geradas para plotar no grafico, primeiro parametro é o eixo x, o segundo o eixo y, e o terceiro e a legenda do grafico
#Os dois parametros do eixo x e y devem ter a mesma quantidade de elementos
plt.plot(years, evolucao_patrimonio, label='Rentabilidade maior')

Para exibir o gráfico propriamente dito, basta executar os métodos abaixo:

#exibe as legendas do grafico
plt.legend()
#adiciona grid no grafico
plt.grid()
#finalmente exibe
plt.show()

Após digitar todo esse código, pressione Ctrl+Enter que o Jupyter Notebook executa o script, se digitou tudo corretamente irá visualizar o gráfico abaixo.

 

Caso queira brincar com a simulação, basta alterar as variáveis de tempo, rentabilidade anual, patrimônio inicial e aporte mensal.

Mesmo sendo uma demonstração bem simplista, podemos constatar o quanto é importante o tempo quando se trata de investimento, caso tenha alguma dúvida sobre o matplotlib, basta utilizar os comentários.

Até mais =)

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *