Simulando investimentos com python

Simulando investimentos com python

Neste artigo, vamos aprender como simular um investimento em CDI e comparar com a poupança, usando python e matplotlib. O CDI é um indicador que representa a taxa média de juros das operações interbancárias, e é usado como referência para muitos produtos financeiros. A poupança é a modalidade de investimento mais popular no Brasil, mas nem sempre é a mais rentável.

Usaremos, como exemplo, um investimento de R$ 20.000,00 em CDI, com uma taxa fixa de 11,65% ao ano, reinvestindo os juros, e comparar com a poupança, usando a taxa média de 2023, que foi de 4,15% ao ano.

Para representar esses valores em python, vamos usar variáveis, que são nomes que guardam dados na memória. Para criar uma variável, basta escolher um nome e atribuir um valor usando o sinal de igual. Por exemplo:

# VARIÁVEIS
capital = 20000 # Valor inicial em reais
prazo = 12 # Prazo em meses
taxa_cdi = 0.1165 # Taxa de CDI anual
reinvestir = True # Se reinvestir os juros ou não

Note que usamos o símbolo # para fazer comentários no código, ou seja, explicações que não são executadas pelo python, mas que ajudam a entender o que o código faz.

Abaixo, está o script completo, pronto para testes.

# Importar as bibliotecas necessárias
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# Definir os parâmetros do investimento
capital = 20000 # Valor inicial em reais
prazo = 12 # Prazo em meses
taxa_cdi = 0.1165 # Taxa de CDI anual
taxa_poupanca = 0.0415 # Taxa de poupança anual
reinvestir = True # Se reinvestir os juros ou não

# Calcular o rendimento mensal do CDI e da poupança
cdi_mensal = (1 + taxa_cdi) ** (1 / 12) - 1 # Fórmula de juros compostos
poupanca_mensal = (1 + taxa_poupanca) ** (1 / 12) - 1 # Fórmula de juros compostos

# Criar um dataframe para armazenar os resultados da simulação
simulacao = pd.DataFrame()
simulacao["Mes"] = np.arange(1, prazo + 1) # Coluna com os meses
simulacao["CDI"] = capital # Coluna com o valor inicial do CDI
simulacao["Poupanca"] = capital # Coluna com o valor inicial da poupança
simulacao["Diferenca"] = 0 # Coluna com a diferença entre o CDI e a poupança

# Iterar sobre os meses e atualizar os valores
for i in range(prazo):
    # Calcular os juros recebidos no mês pelo CDI e pela poupança
    juros_cdi = simulacao.loc[i, "CDI"] * cdi_mensal
    juros_poupanca = simulacao.loc[i, "Poupanca"] * poupanca_mensal
    # Atualizar os valores no dataframe
    simulacao.loc[i, "CDI"] = simulacao.loc[i, "CDI"] + juros_cdi
    simulacao.loc[i, "Poupanca"] = simulacao.loc[i, "Poupanca"] + juros_poupanca
    simulacao.loc[i, "Diferenca"] = simulacao.loc[i, "CDI"] - simulacao.loc[i, "Poupanca"]
    # Se reinvestir os juros, somar ao valor do próximo mês
    if reinvestir and i < prazo - 1:
        simulacao.loc[i + 1, "CDI"] = simulacao.loc[i, "CDI"]
        simulacao.loc[i + 1, "Poupanca"] = simulacao.loc[i, "Poupanca"]

# Mostrar o resultado da simulação
print(simulacao)

# Mostrar o valor final e a diferença entre o CDI e a poupança
valor_final_cdi = simulacao.loc[prazo - 1, "CDI"]
valor_final_poupanca = simulacao.loc[prazo - 1, "Poupanca"]
diferenca_final = simulacao.loc[prazo - 1, "Diferenca"]
print(f"Valor final do CDI: R$ {valor_final_cdi:.2f}")
print(f"Valor final da poupança: R$ {valor_final_poupanca:.2f}")
print(f"Diferença final: R$ {diferenca_final:.2f}")

# Criar um gráfico plot para mostrar a evolução dos valores
plt.plot(simulacao["Mes"], simulacao["CDI"], label="CDI")
plt.plot(simulacao["Mes"], simulacao["Poupanca"], label="Poupança")
plt.xlabel("Mes")
plt.ylabel("Valor (R$)")
plt.title("Simulação de investimento em CDI e poupança")
plt.legend()
plt.show()

Espero que este script seja útil para você. Por favor, note que este é apenas um exemplo e não uma recomendação de investimento. Você deve fazer sua própria pesquisa e análise antes de investir em qualquer produto financeiro. Além disso, as taxas de CDI e de poupança podem variar ao longo do tempo, portanto, verifique sempre as fontes oficiais. 😊

Se você quiser saber mais sobre python, você pode consultar alguns sites que oferecem tutoriais e cursos online, como [Python Brasil] , [Curso em Vídeo] ou [DataCamp] .