segunda-feira, 3 de janeiro de 2022

Juros simples e compostos - em R

Em algum momento da sua vida você já deve ter ouvido falar em juros simples e compostos. Juros faz parte da nossa vida, do nosso dia a dia, principalmente quando lembramos das contas para pagar, que são pagas com juros se o débito ocorre após data de vencimento, e de investimendos, em que o juros é o retorno que o banco concede após você investir determinada quantia em um período de tempo. 

Juros faz parte da matéria de matemática do ensino médio e normalmente é ensinado por meior de fórmulas. Mas você já para para pensar em juros como uma função? Já tentou visualizar, por meio de gráficos, o porquê de o juros composto ser maior que o simples? E em questão de investimento, vale a pena investir uma alta quantia de uma vez ou investir essa mesma quantia de forma parcelada durante os meses? Vamos entender o que acontece com juros e brincar um pouco no R.

Primeiro vamos rever o que são juros simples e compostos.

Juro é a remuneração cobrada pelo empréstimo de dinheiro. Isto é, emprestamos uma determinada quantia por um certo tempo e aplicamos uma "taxa de cobrança". 
Por exemplo, se emprestamos 100 reais por um mês a uma taxa de juros de 1% ao mês, o rendimento (ou juros) será de 1 real, o que significa que a pessoa para a qual emprestamos o dinheiro deve nos devolver os 100 reais mais 1 real de juros, totalizando 101 reais.

Quando atrasamos um boleto, pagamos juros sobre o valor da conta, normalmente por dia de atraso. Ou seja, se temos um boleto de 100 reais para pagar e atrasamos 2 dias para realizar o pagamento, supondo que os juros cobrados são de 2% ao dia, pagaremos os 100 reais mais 4 reais de juros. Mas se a cobrança for a juros simples!

Juros simples é o juros calculado a partir do capital inicial, independente do tempo. Por exemplo, se aplicamos 100 reais em um banco a juros simples de 1% ao mês, teremos 1 real de rendimento após 1 mês, 2 reais de rendimento após 2 meses e assim por diante. Se investimos durante 10 meses, obtemos um rendimento de 100*1%*10 = 10 reais. No juros simples, o rendimento é sempre calculado em cima do valor inicial, no caso 100.

E no juros composto? Nesse caso, o cálculo não é feito em cima do capital inicial, mas sim pelo montante a cada unidade de tempo. Confuso? Vamos a um exemplo: se investimos 100 reais em um banco a mesma taxa de 1% ao mês a uma capitalização de juros compostos, qual será o rendimento após dois meses?
Vamos pensar juntos: após um mês teremos 1 real de juros, totalizando 101 reais. Se deixamos o dinheiro investido por mais um mês, sobre qual valor o juros será calculado? Em cima do montante ao final do primeiro mês, ou seja, em cima de 101 reais, o que resulta em um rendimento de 1,01 real. Logo, ao final de dois meses, teremos 2,01 reais e não 2 reais como no juros simples. A tabela abaixo apresenta o rendimento durante alguns meses considerando juros simples e compostos.

Meses J. Simples J. Composto
1 1,00 1,00
2 2,00 2,01
3 3,00 3,03
4 4,00 4,06
5 5,00 5,10

A fórmula para calcular juros simples é: 

 Js = C * i * t 

em que Js = juros simples, C = capital inicial, i = taxa e t = tempo. No caso de juros compostos, temos 

M = C*(1+i)^t 
Jc = C*(1+i)^t - C

em que M = montante (que é o capital mais os juros rendidos) e Jc = juros compostos. Os juros são calculados por M - C.

Normalmente as pessoas visualizam esses fórmulas sem pensar muito sobre elas. Mas, o que acontece se consideramos essas duas fórmulas como funções em relação ao tempo? Faz sentido, uma vez que o juros e o montante são calculados a partir de investimento de capital a uma certa taxa durante um período de tempo. Dessa forma, percebemos que a função de juros simples representa uma reta (função de primeiro grau) e a função de juros compostos representa uma função exponencial. Por isso os juros compostos crescem muito mais rapidamente que os juros simples. Mas, no exemplo, a diferença não pareceu grande, certo? Isso ocorreu por causa dos valores que escolhemos. Para essa diferença ficar mais clara, vamos programar essas duas funções. Dessa forma, podemos brincar com os valores a fim de verificar e comparar o comportamento dessas duas funções.

Vamos definir as funções de juros simples e compostos no R:

juros_simples = function(t,c,i) c*i*t;

juros_compostos = function(t,c,i) c*(1+i)^t - c
Pronto, definimos as duas funções que retornarão os juros de acordo com o valor de capital (c), taxa (i) e tempo (t) que quisermos. Vamos refazer o exemplo da tabela acima, mas com 36 meses, e plotar um gráfico de juros versus tempo. (A vantagem da programação é essa. Imagine o trabalho que seria para fazer a mão?). Vamos ao código:

capital = 100
taxa = 1/100
tempo = 1:36

js = NULL
jc = NULL
for(count in 1:length(tempo)) {
  js[count] = juros_simples(tempo[count],capital,taxa);
  jc[count] = juros_compostos(tempo[count],capital,taxa);
}
Agora temos os juros calculados nos vetores js e jc, que correspondem aos juros simples e compostos respectivamente. Falta plotarmos os gráficos. Vejamos:

plot(tempo,jc,type='l',lwd=2,
     xlab=expression(bold("Tempo (meses)")),
     ylab=expression(bold("Juros")),
     cex.lab=1.1, cex.axis=1.1)
lines(tempo,js,col='blue',lwd=2)
legend("topleft",lwd=2,legend=c('Js','Jc'),
       col=c('blue','black'),bty='n')




Agora conseguimos perceber a diferença de crescimento entre as duas formas de juros. Ainda não te convenci que o juros compostos cresce a uma taxa bem maior que o simples? Vamos trocar os valores. Que tal exagerarmos na taxa?
Coloque a taxa a 10% ao mês e recalcule os juros. Obtemos o seguinte gráfico:


Diferente, não? Como a taxa controla a porcentagem do capital que terá o rendimento, se aumentamos a taxa, aumentamos os juros. Nesse exemplo, notamos o comportamento exponencial do juros composto, enquanto que observamos uma reta para a função de juros simples. Por curiosidade, essa aplicação, após 36 meses, rende 360 reais de juros simples e 2991 reais em juros compostos.

Agora, imagine que você tenha 12 mil reais para investir durante 12 meses. Porém, não sabe se é melhor investir tudo de uma vez ou investir mil reais por mês, para guardar uma reserva caso aconteça alguma coisa. Qual seria a diferença do rendimento nessas duas situações? Vamos considerar a taxa atual de rendimento da poupança: 0,44% ao mês.

Já podemos adiantar que a aplicação em que todo o capital é aplicado resultará em um rendimento maior. Por quê? Pelo fato de que o juros será calculado por um valor maior do que o aplicado mensalmente. Vamos pensar juntos:
_Na primeira situação calcularemos os juros sobre 12 mil reais durante os doze meses.
_Na segunda situação calcularemos juros sobre mil reais durante um mês, o montante mais mil reais no próximo mês e assim por diante.
Logo, a quantidade de capital sobre a qual calculamos o juros será maior na primeira situação por mais tempo. Mas que tal visualizarmos isso? Vamos programar:

   

capital = 12000
taxa = 0.44/100

> juros_compostos(12,capital,taxa)
[1] 649.1602
Logo, obtemos cerca de 650 reais de juros aplicando o capital todo de uma única vez. Para programar a segunda situação, devemos calcular o juros após um mês de aplicação, a esse montante somar mil reais e calcular o juros do próximo mês, até acabarem os 12 meses. Vejamos:

montante = 1000
for(count in 1:11){
  juros = juros_simples(1,montante,taxa);
  montante = montante+juros+1000;
}

> montante-capital
[1] 294.7017
Perceba que, ao final dos 12 meses, o rendimento da aplicação feita de uma única vez foi mais que o dobro da aplicação parcelada.

Agora, você deve estar se perguntando, em qual situação eu parcelaria o investimento e não aplicaria tudo de uma vez? Nossos cálculos mostraram que é melhor investir todo o capital. Porém, nem sempre temos esse capital de uma vez, logo a segunda situação se refere ao investimento de 12 mil reais por mês se você retira, do seu salário por exemplo, mil reais todo mês para investir. É um plano de investimento.

Então, gostaram dessa aula em R? Estudar juros programando nos dá a liberdade de perceber várias coisas que, à mão, seria muito complicado. 

Até a próxima aula!

Nenhum comentário:

Postar um comentário