Alguém sabe qual é o algoritmo da função TAXA do Excel? Se souber em Java também agradeço.
Função TAXA
Retorna a taxa de juros por período de uma anuidade. TAXA é calculado por iteração e pode ter zero ou mais soluções. Se os resultados sucessivos de TAXA não convergirem para 0,0000001 depois de 20 iterações, TAXA retornará o valor de erro #NÚM!.
Sintaxe
TAXA(nper;pgto;vp;vf;tipo;estimativa)
Nper é o número total de períodos de pagamento em uma anuidade.
Pgto é o pagamento feito em cada período e não pode mudar durante a vigência da anuidade. Geralmente, pgto inclui o principal e os juros e nenhuma outra taxa ou tributo. Se pgto for omitido, você deverá incluir o argumento vf.
Vp é o valor presente ? o valor total correspondente ao valor atual de uma série de pagamentos futuros.
Vf é o valor futuro, ou o saldo, que você deseja obter depois do último pagamento. Se vf for omitido, será considerado 0 (o valor futuro de um empréstimo, por exemplo, é 0).
Tipo é o número 0 ou 1 e indica as datas de vencimento.
Estimativa é a sua estimativa para a taxa. (Se você omitir estimativa, este argumento será considerado 10%)
Para vc receber ajuda, é melhor tentar montar o algoritmo e ir postando suas dúvidas…vc já tem a regra ae, é só começar a fazer…ng vai te entregar pronto!
Bom, vc tem que desenvolver uma função que te retorne numa taxa de juros de um determinado período, então, isso é matemática finaneceira, e retirei essa fórmula da wikipédia:
FV = PV(1 + i)ª
FV: Valor Futuro (do inglês Future Value)
PV: Valor Presente (do inglês Present Value)
i: Taxa de juros (do inglês Interest Rate)
ª: Número de períodos
O cálculo dessa taxa é bem mais complicado que parece, porque envolve resolver uma equação para a taxa, usando um método de aproximações sucessivas.
Procure por “IRR Calculation Java” no Google.
É que o método TAXA do Excel (que é a Taxa Interna de Retorno ou “Internal Return Rate” ) trabalha na verdade com pagamentos de valores desiguais, dados em um intervalo de células. Portanto a fórmula que o Tibúrcio apresentou simplesmente não é suficiente.