Я занимаюсь проектом TVM и не совсем понимаю, как сложные проценты переводятся в код.В качестве справки я использую финансовый калькулятор BA II Plus.
Пример: Найти будущую стоимость выплат в размере 100 долл. США, осуществляемых в начале каждого месяца в течение 10 лет, если проценты начисляются на 5% ежеквартально.
В финансовом калькуляторе:
N: 120 (10y x 12m)
I / Y: 5% (годовая процентная ставка)
P/ Y: 12 (12 раз в год)
C / Y: 4 (4 раза в год)
PV: 0
PMT: 100
BGN: TRUE
FV: [CPT] [FV] => -15575.41334
Вот метод будущих значений.
static public double fv(double r, int n, double pmt, double pv, int bgn) {
return -(pv * Math.pow(1 + r, n) + pmt * (1 + r * bgn) * (Math.pow(1 + r, n) - 1) / r);
}
Вызовите метод, используя номера из примера
// rate n pmt pv bgn
double fv = fv(0.05/12, 120, 100, 0, 1); // -15592.928894335751 which is wrong