source
SACCalculator
SACCalculator (valor_financiado:float, prazo:int, taxa_anual:float)
A simple calculator class
valor_financiado |
float |
Valor financiado |
prazo |
int |
Prazo em meses |
taxa_anual |
float |
Taxa de juros anual |
sac = SACCalculator(205385.45, 420, 9.99)
tabela = sac.tabela()
tabela.head()
0 |
1 |
489.01 |
1636.20 |
2125.22 |
204896.44 |
1 |
2 |
489.01 |
1632.31 |
2121.32 |
204407.42 |
2 |
3 |
489.01 |
1628.41 |
2117.43 |
203918.41 |
3 |
4 |
489.01 |
1624.52 |
2113.53 |
203429.40 |
4 |
5 |
489.01 |
1620.62 |
2109.63 |
202940.39 |
tabela_amortizacao_extra = sac.amortizacao_extra_mensal(valor_amortizado_extra_mensal=5000)
tabela_amortizacao_extra.head()
0 |
1 |
205385.450000 |
489.012976 |
5000.0 |
1636.203997 |
2125.216973 |
199896.437024 |
1 |
2 |
199896.437024 |
489.012976 |
5000.0 |
1592.475754 |
2081.488730 |
194407.424048 |
2 |
3 |
194407.424048 |
489.012976 |
5000.0 |
1548.747510 |
2037.760486 |
188918.411071 |
3 |
4 |
188918.411071 |
489.012976 |
5000.0 |
1505.019267 |
1994.032243 |
183429.398095 |
4 |
5 |
183429.398095 |
489.012976 |
5000.0 |
1461.291023 |
1950.303999 |
177940.385119 |
len(tabela.index), len(tabela_amortizacao_extra)
tabela['Valor da Parcela'].sum(), tabela_amortizacao_extra['Saldo Devedor Inicial'].loc[0] + tabela_amortizacao_extra['Juros'].sum()
(549806.39, 236801.98771555116)
tabela['Juros'].sum(), tabela_amortizacao_extra['Juros'].sum()
(344420.94, 31416.53771555116)
assert SACCalculator(200000, 360, 0.01).tabela().shape[0] == 360
assert SACCalculator(200000, 12, 0.01).tabela().shape[0] == 12
assert SACCalculator(200000, 24, 0.01).tabela().shape[0] == 24
assert SACCalculator(200000, 5, 0.01).tabela().shape[0] == 5