如何计算储蓄账户达到一定金额所需的每月还款额?

How to calculate the monthly payment needed to reach a certain amount in savings account?

我正在尝试使用 Javascript 在给定年利率、储蓄起始金额、最终金额和时间量的情况下,获得在储蓄账户中达到一定金额所需的每月付款让它成长。这是一个例子:

PV=1000
FV=10000
Nper = 5 * 12 = 60
Rate = 1% /12 = 0.0083%

不知何故答案是5.51,但我尝试的每个公式都会给出不同的结果。在 excel 上,它是这样使用来得到这个答案的:PMT(0.083%,60,1000,-10000),我尝试了以下方法:

var pv = 1000;
var fv = -10000;
var i = 0.01 / 12;
var n = 60;

function payment() {
  return (pv - fv) * (i) / (1 - (Math.pow(1 + i, -n)));
}

这没有给出想要的答案。这给了我 188.03 而不是 145.51。知道为什么吗?这不是正确的等式吗?谢谢!

这是 PMT 的正确方程。我添加了一个用于验证的快速集成。资料来源:https://gist.github.com/maarten00/23400873d51bf2ec4eeb

const pv = 1000;
const fv = -10000;
const i = 0.01 / 12;
const n = 60;

function pmt(rate_per_period, number_of_payments, present_value, future_value, type){
    future_value = typeof future_value !== 'undefined' ? future_value : 0;
    type = typeof type !== 'undefined' ? type : 0;

    if(rate_per_period != 0.0){
        // Interest rate exists
        var q = Math.pow(1 + rate_per_period, number_of_payments);
        return -(rate_per_period * (future_value + (q * present_value))) / ((-1 + q) * (1 + rate_per_period * (type)));

    } else if(number_of_payments != 0.0){
        // No interest rate, but number of payments exists
        return -(future_value + present_value) / number_of_payments;
    }

    return 0;
}

document.getElementById("showPayment").innerHTML = pmt(i, n, pv, fv);
<div class="showPayment" id="showPayment">

</div>