【发布时间】:2019-04-03 06:32:55
【问题描述】:
我正在做一个 TVM 项目,但不太了解复利如何转化为代码。我正在使用 BA II Plus 财务计算器作为参考。
示例:如果利息按季度计算 5%,则计算 10 年内每月月初支付的 100 美元付款的未来价值。
在财务计算器中:
N: 120 (10y x 12m)
I/Y:5%(年利率)
P/Y:12(每年 12 次)
C/Y:4(每年 4 次)
现值:0
PMT:100
BGN:是的
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
【问题讨论】:
-
你确定结果不对?
-
是的,结果完全错误,因为我的参数中还没有复利。
标签: java calculator financial tvm