我使用Microsoft.VisualBasic程序集来使用rate和Pmt,原因是当我运行我的代码时,它总是给我一个完全错误的号码
我已经彻底阅读了文档,似乎找不出问题所在:
origFee30YearRate = 0.04875M;
double Nper = 360;
double Pmt = Financial.Pmt((double)(origFee30YearRate / 12), Nper, 100000);
double PV = ((Pmt * Nper) * -1) - 1775.25;
var org30APR = (Financial.Rate(Nper, Pmt, PV)) * 12;这些价值观的结果是:
Nper: 360
Pmt: -529.20822384932933
PV: 188739.71058575856我不知道在计算Rate时出了什么问题,Rate的输出是:0.0006268633835987544 where is with 5.14
发布于 2018-11-09 15:27:24
启动origFee30YearRate似乎是不正确的。4.75%应指定为0.0475,而不是4.75。而且,你似乎不正确地改变了付款的标志。
double origFee30YearRate = 0.0475;
double Nper = 360;
double Pmt = Financial.Pmt(origFee30YearRate / 12, Nper, 100000);
double PV = (100000 - (100000 * origFee30YearRate / 365 * 15) - (100000 * (1 / 100)) - 1775.25);
var org30APR = Financial.Rate(Nper, Pmt, PV) * 12;这将返回4.92%的利率,想必你是在试图将利率计算回4.75%?
你没有得到4.75%的钱是因为PVal是你借了多少钱,我不完全确定你为什么要计算它。
double origFee30YearRate = 0.0475;
double Nper = 360;
double Pmt = Financial.Pmt(origFee30YearRate / 12, Nper, 100000);
var org30APR = Financial.Rate(Nper, Pmt, 100000) * 12;另外,如果你想把你的单位变回%,只需乘以100。
var org30APR = (Financial.Rate(Nper, Pmt, 100000) * 12) * 100;对于APR,我相信你只需要减去费用。
var apr = (Financial.Rate(Nper, Pmt, (100000 - 1775.25)) * 12) * 100;https://stackoverflow.com/questions/53228333
复制相似问题