首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >APR的Excel VBA公式

APR的Excel VBA公式
EN

Stack Overflow用户
提问于 2015-01-20 16:14:36
回答 3查看 2.5K关注 0票数 0

鉴于以下情况,如何计算年度百分比比率:

A-一开始借款(1000美元),

B-借款人分期支付的贷款最后费用总额(2000年美元),

C-每年复合周期的数目(52周),

K-偿还贷款的期限(60周)

所有在文献中发现的公式都使用名义利率(也是Excel Effective函数),但这里我们没有这个论点。

我的意思是:rate

我已经构建了一个电子表格,在那里我可以通过改变名义利率找到APR与Excel。难道没有更优雅的解决方案吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-01-22 08:40:05

这是APR的代码。对于优化搜索机制和分配给变量(Double,Integer)的类型,我将不胜感激。

宏观的理念是将名义利率(i)从1%提高到非常小的值(step),只要它能使我们更接近于适当计算分期支付的贷款的总成本(B)。

代码语言:javascript
复制
Function APR(A As Double, B As Double, c As Integer, k As Integer, Optional i As Double = 0.01, Optional step As Double = 0.0001) As Double
'Author Przemyslaw Remin, thanks for explanation to Chris Degnen
'
'A - Loan amount we borrow
'B - Total amount we pay back in equal installments in k periods
'c - Number of compoundings per year
'k - Number of periodic payments
'i - Nominal interest rate, here it will be used as iterator to find correct B
'step - how much we change i, the smaller the step the more precision we get
'
Dim target1 As Double
Dim target2 As Double

Do Until target1 < target2 'we do the loop until the target falls
    target1 = ((i / c) / (1 - (1 + i / c) ^ (-k)) - (B / (k * A))) ^ 2
    i = i + step
    target2 = (((i + step) / c) / (1 - (1 + (i + step) / c) ^ (-k)) - (B / (k * A))) ^ 2
Loop

APR = (1 + i / c) ^ c - 1
End Function

感谢Chris对APR计算机制所作的友好解释:43450

票数 2
EN

Stack Overflow用户

发布于 2015-02-10 17:23:30

下面是OP解决方案的修改:

首先,确保B>A,即有一个正利率

然后,假设利率微乎其微:比如说,0.000000000001%

将此数据与年金公式中的其他数据一起使用,以计算从这一假定利率预期的定期付款。由于实际利率高于假定利率,计算出的付款额将小于问题中指定的利率。

将假定利率提高一倍,并重复前一步。最终,计算的付款将超过给定的付款。现在假设的利率过高,而前一个利率太小。

在这两个值之间进行二进制搜索,直到太高的速率和太低的速率收敛到期望的程度为止.

票数 1
EN

Stack Overflow用户

发布于 2015-01-21 23:32:12

这似乎是一个非常不现实的情况,但这是有可能的。我相信有一个更简单的方法可以做到这一点,但您可以使用=PMT公式回到它。

https://www.youtube.com/watch?v=MXf0HU-JQ1Q

下载此YouTube视频中包含的文件,并使用您的值进行更新。现在使用一个虚拟的APR作为一个插头。删除60个句点后的所有行,并sum支付利息的列。您正在寻找这样一种情况,您支付了1,000.00的利息,考虑到贷款为1,000,000,而您说,您支付了2,000.00总额的同等付款。因此,您需要60期的Intest之和应该是1,000。

从这里开始,你可以开始调整APR,记下支付给你的总惰性,直到你达到你的目标。我想出了136.87%,这是不现实的,但正如我说的,你的情况似乎相当不现实,除非我读错了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28050109

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档