在JavaScript中是否有IRR和PMT函数的精确实现
Is there any accurate implementation of IRR and PMT function in JavaScript?
我正在为我们公司开发一个新的基于web的财务应用程序,该应用程序提供内部收益率和PMT的在线实时非事后计算。因此,我正在寻找在JavaScript中提供IRR和PMT功能的实现/库。请提出建议。
感谢
William
IRR:我刚刚浏览了一下,找到了org.apache.poi.ss.formula.functions.IRR类,这里有它的列表。
只要确保你能遵守许可证。
该库似乎没有直接实现PMT。
关于PMT,您可以简单地自己实现。PMT的详细信息(速率、nper、pv):费率为月费率,指年费率/12。nper是贷款条款,如12,24,36。pv是指贷款金额。
fv=pv * pow((1 + rate), nper);
PMT=(fv * rate) / (pow((1 + rate), nper) - 1);
Ruby中有一个名为Exonio的宝石:https://github.com/Noverde/exonio.
这个gem实现了一些Excel财务公式。
您可以查看这个gem并将计算转换为Javascript。
签出:https://formulajs.info/
我能够使用这个库来执行内置的Microsoft excel函数(如IRR)所需的
以下是一个函数,用于计算贷款的定期付款,给定贷款金额、利率、付款次数和贷款未来价值:
def pmt(rate, nper, pv, fv=0)
pmt = rate * (fv + pv * (1 + rate)**nper) / ((1 + rate)**nper - 1)
return -pmt
end
rate参数表示每个期间的利率,nper参数表示付款期间的总数,pv参数表示贷款的现值,fv参数表示付款期结束时贷款的未来价值。
例如,如果你想计算3年(36个月)内利率为5%、未来价值为5000美元的10000美元贷款的月供,你可以调用这样的函数:
pmt(0.05/12, 36, 10000, 5000)
这将返回您需要每月支付的贷款价值,以偿还贷款的现值和未来价值。
相关文章:
- Node.js使用Series函数(模式?)实现流控制时出现意外结果
- 绑定函数时在IE7中未实现Javascript错误
- 可以使用属性赋值实现多个函数
- 如何在JavaScript中实现子函数
- 为什么在javascript中的模块模式中实现Lazy函数时范围会发生变化
- instanceOf函数在JavaScript中的实现
- Javascript Math.floor 函数失误或实现之谜
- 如何在nodejs中实现异步函数
- 不涉及私有“函数”的“Object.create”的自定义实现
- 在节点中,使用Q,使两个函数并行工作,但只等待第一个函数实现其承诺
- Node.js在返回数据之前返回null的函数/实现回调
- JavaScript - 如何注入不同的函数实现,例如 alert(与 web 和 Node 共享模块.js服务器端)
- 寻找准确的Ruby, Javascript,或R Excel RATE()或IRR()函数实现
- 这部分代码在“Pro JavaScript技术”的JS addEvent函数实现中的目的是什么?
- 如何在Angular 2中通过Javascript函数实现AJAX
- Typescript重复函数实现
- javascript函数实现正则表达式的问题
- 使用自引用函数实现Jquery父子dom的交叉
- 在函数实现之前在.js .下下划线
- 使用一个接受两个参数的函数实现 JS 本机“filter”方法