我也在银行堆栈交换中发布了这个,但由于它更像是一个算法,我想这里有人能够回答我的问题
我使用的是本网站上列出的公式:
http://www.fdic.gov/regulations/laws/rules/6500-1950.html#fdic6500appendixjtopart226
(如果没有自动滚动,请转到附录J。)
在步骤9中,他们试图找到A =(33.61 *)/(i + 1)的值
,计算为1 + 1 /(i + 1)+ 1 /(i + 1)^ 2 + ...... 1 /(i + 1)^ n
n = 36,我发现= 28.83,
我得到的值A = 33.61 * 28.83 / 1.0104 = 941.3
但是,链接以某种方式到达了数字1004.674391
任何人都可以解释他们是如何得出这个数字以及A'和A'的意思吗?
我正在尝试用C ++编写代码,但在此之前,我需要用铅笔直接计算数学。
答案 0 :(得分:2)
难怪美国经济正朝着希腊的方向发展。
主啊,如果FDIC的人们使用线性插值来寻找利率,那么难怪房主无力偿还贷款线性插值需要知道两个速率,其中年金的当前值高于实际速率的当前值,另一个速率,当前值低于实际速率的当前值
一旦你有两个速率,两个现值,那么你可以使用线性插值公式来近似实际速率
但那你怎么知道现值与实际汇率不一致的两种汇率呢?继续猜测你是否有时间杀人
任何方式回答你的问题,为什么你的A'与FDIC文件中显示的不同,请参阅以下两个A'和A''利率分别为12.5%和12.6%
[Present Value Annuity Due][1] = 33.61 x (1 + 0.010416667) x { 1 - 1/(1 + 0.010416667)^36 }/0.010416667
= 33.61 x 1.010416667 x { 1 - 1/(1.010416667)^36 }/0.010416667
= 33.61 x 1.010416667 x { 1 - 1/1.45217196873 }/0.010416667
= 33.61 x 1.010416667 x { 1 - 0.688623676487 }/0.010416667
= 33.61 x 1.010416667 x { 0.311376323513/0.010416667 }
= 33.61 x 1.010416667 x 29.8921261007
= 33.61 x 30.2035024242
PVAD = 1015.14
A' = PVAD / (1+i)
A' = 1015.14 / 1.010416667
A' = $1,004.67
Present Value Annuity Due = 33.61 x (1 + 0.0105) x { 1 - 1/(1 + 0.0105)^36 }/0.0105
= 33.61 x 1.0105 x { 1 - 1/(1.0105)^36 }/0.0105
= 33.61 x 1.0105 x { 1 - 1/1.45648978356 }/0.0105
= 33.61 x 1.0105 x { 1 - 0.68658222755 }/0.0105
= 33.61 x 1.0105 x { 0.31341777245/0.0105 }
= 33.61 x 1.0105 x 29.8493116619
= 33.61 x 30.1627294344
PVAD = 1013.77
A'' = PVAD / (1+i)
A'' = 1013.77 / 1.0105
A'' = $1,003.23
如果您必须在代码中对此进行编程,我建议您抽空阅读与数值方法相关的材料。请注意,这也是一个猜谜游戏,但比线性插值更优雅
该FDIC页面上列出的公式是关于查找定期结束期间付款的普通年金的现值。您将获得该示例的费率是每月费率,您必须乘以12以获得年费率。还有一种称为年化率的东西,由(1 + i)^ 12 - 1
找到示例显示贷款金额为1,000美元的年度汇率,其中每月33.61美元的付款将在接下来的36个月结束时到期
我将向您展示一种名为Newton Raphson的方法,该方法可以为年金制定利率,从而实现统一的付款系列
您可以使用两种不同的方程式。第一个用于查找年金的未来值,第二个用于查找年金的现值
Excel使用未来价值方程来解决其5个TVM功能,TI BA II plus使用现值方程来解决其5个TVM功能
如果您有任何疑问,可以在网站上给我留言。祝你好运。您可能会发现有关预微积分的一些知识,特别是关于衍生物的东西
此贷款的定期或月费率为0.010687973564,即1.07%
年费率为0.010687973564 x 12 = 0.128255682768或12.83%
Newton Raphson Method IRR Calculation with TVM equation = 0
TVM Eq. 1: PV(1+i)^N + PMT(1+i*type)[(1+i)^N -1]/i + FV = 0
f(i) = 0 + 33.61 * (1 + i * 0) [(1+i)^36 - 1)]/i + -1000 * (1+i)^36
f'(i) = (33.61 * ( 36 * i * (1 + i)^(35+0) - (1 + i)^36) + 1) / (i * i)) + 36 * -1000 * (1+0.1)^35
i0 = 0.1
f(i1) = -20859.0286
f'(i1) = -772196.0009
i1 = 0.1 - -20859.0286/-772196.0009 = 0.0729873910496
Error Bound = 0.0729873910496 - 0.1 = 0.027013 > 0.000001
i1 = 0.0729873910496
f(i2) = -7274.5413
f'(i2) = -301995.7711
i2 = 0.0729873910496 - -7274.5413/-301995.7711 = 0.0488991687999
Error Bound = 0.0488991687999 - 0.0729873910496 = 0.024088 > 0.000001
i2 = 0.0488991687999
f(i3) = -2431.1344
f'(i3) = -124187.6435
i3 = 0.0488991687999 - -2431.1344/-124187.6435 = 0.0293228701788
Error Bound = 0.0293228701788 - 0.0488991687999 = 0.019576 > 0.000001
i3 = 0.0293228701788
f(i4) = -732.3776
f'(i4) = -57078.0048
i4 = 0.0293228701788 - -732.3776/-57078.0048 = 0.0164917006907
Error Bound = 0.0164917006907 - 0.0293228701788 = 0.012831 > 0.000001
i4 = 0.0164917006907
f(i5) = -167.5999
f'(i5) = -32858.4347
i5 = 0.0164917006907 - -167.5999/-32858.4347 = 0.0113910349433
Error Bound = 0.0113910349433 - 0.0164917006907 = 0.005101 > 0.000001
i5 = 0.0113910349433
f(i6) = -17.997
f'(i6) = -26021.5726
i6 = 0.0113910349433 - -17.997/-26021.5726 = 0.010699415611
Error Bound = 0.010699415611 - 0.0113910349433 = 0.000692 > 0.000001
i6 = 0.010699415611
f(i7) = -0.288
f'(i7) = -25192.367
i7 = 0.010699415611 - -0.288/-25192.367 = 0.0106879831887
Error Bound = 0.0106879831887 - 0.010699415611 = 1.1E-5 > 0.000001
i7 = 0.0106879831887
f(i8) = -0.0001
f'(i8) = -25178.8435
i8 = 0.0106879831887 - -0.0001/-25178.8435 = 0.0106879801183
Error Bound = 0.0106879801183 - 0.0106879831887 = 0 < 0.000001
IRR = 1.07%
Newton Raphson Method IRR Calculation with TVM equation = 0
TVM Eq. 2: PV + PMT(1+i*type)[1-{(1+i)^-N}]/i + FV(1+i)^-N = 0
f(i) = -1000 + 33.61 * (1 + i * 0) [1 - (1+i)^-36)]/i + 0 * (1+i)^-36
f'(i) = (-33.61 * (1+i)^-36 * ((1+i)^36 - 36 * i - 1) /(i*i)) + (0 * -36 * (1+i)^(-36-1))
i0 = 0.1
f(i1) = -674.7726
f'(i1) = -2860.8622
i1 = 0.1 - -674.7726/-2860.8622 = -0.135863356364
Error Bound = -0.135863356364 - 0.1 = 0.235863 > 0.000001
i1 = -0.135863356364
f(i2) = 46220.4067
f'(i2) = -1361282.2783
i2 = -0.135863356364 - 46220.4067/-1361282.2783 = -0.101909776386
Error Bound = -0.101909776386 - -0.135863356364 = 0.033954 > 0.000001
i2 = -0.101909776386
f(i3) = 14472.9891
f'(i3) = -417070.1913
i3 = -0.101909776386 - 14472.9891/-417070.1913 = -0.0672082095036
Error Bound = -0.0672082095036 - -0.101909776386 = 0.034702 > 0.000001
i3 = -0.0672082095036
f(i4) = 4620.5467
f'(i4) = -136713.9676
i4 = -0.0672082095036 - 4620.5467/-136713.9676 = -0.0334110286059
Error Bound = -0.0334110286059 - -0.0672082095036 = 0.033797 > 0.000001
i4 = -0.0334110286059
f(i5) = 1412.836
f'(i5) = -50859.7324
i5 = -0.0334110286059 - 1412.836/-50859.7324 = -0.00563196002357
Error Bound = -0.00563196002357 - -0.0334110286059 = 0.027779 > 0.000001
i5 = -0.00563196002357
f(i6) = 345.5376
f'(i6) = -24366.4494
i6 = -0.00563196002357 - 345.5376/-24366.4494 = 0.00854891782087
Error Bound = 0.00854891782087 - -0.00563196002357 = 0.014181 > 0.000001
i6 = 0.00854891782087
f(i7) = 37.705
f'(i7) = -17208.0395
i7 = 0.00854891782087 - 37.705/-17208.0395 = 0.010740042325
Error Bound = 0.010740042325 - 0.00854891782087 = 0.002191 > 0.000001
i7 = 0.010740042325
f(i8) = -0.8934
f'(i8) = -16335.3764
i8 = 0.010740042325 - -0.8934/-16335.3764 = 0.0106853483863
Error Bound = 0.0106853483863 - 0.010740042325 = 5.5E-5 > 0.000001
i8 = 0.0106853483863
f(i9) = 0.0452
f'(i9) = -16356.5205
i9 = 0.0106853483863 - 0.0452/-16356.5205 = 0.0106881114105
Error Bound = 0.0106881114105 - 0.0106853483863 = 3.0E-6 > 0.000001
i9 = 0.0106881114105
f(i10) = -0.0023
f'(i10) = -16355.4516
i10 = 0.0106881114105 - -0.0023/-16355.4516 = 0.010687973564
Error Bound = 0.010687973564 - 0.0106881114105 = 0 < 0.000001
IRR = 1.07%
参考
查找IRR的TVM公式答案 1 :(得分:1)
我不明白你从哪里得到28.83。
sum(1/(1+.0104)**i for i in xrange(36)) == 30.2116668761916
另外,为i
携带更多数字。你使用的是i = .0104,但他们使用的是i = .010416667。