每個人都應該瞭解的金融小知識 -- 利率計算

背景

經常收到各個銀行電話推銷可以辦理小額貸款/信用卡賬單分期/萬用金, 或者其他亂七八糟的名字的產品. 遂問電銷人員, 你們這個最後年化利息多少?  這個時候, 一般銷售人員都直接回避這個問題, 美其名曰: “我們不收利息, 我們只收取一定的手續費, 基於您這邊的良好信用, 現在您有一筆5萬的額度是可以立即提現的, 可以分1年還, 每月只需要XXXX元”

可能不太懂的同學, 聽到電銷的宣傳,  感覺這利率還不算貴, 缺錢急用還挺划算的啊. 有可能直接被套路, 就接受了忽悠, 辦理了這個貸款/分期產品.


下面我以浦發銀行實際例子來算一下, 類似產品最後年化利率到底是多少.

如上圖所示, 是浦發銀行的貸款產品(萬用金), 可以看到, 提現10000元, 分12期即分12個月還錢, 等額本息的還款方式, 每月需還款929.51元. 初略地看, 你可以會簡單的認爲這個利率就是, 一共還的錢爲929.51*12, 然後借款本金爲10000元, 那麼年化利率即爲: (929.51*12 - 10000)/10000*100%=11.54% 感覺似乎不那麼高.

然而, 事實上, 這種算法是有問題的, 因爲你借款的本金10000元, 並沒有享受到1年的期限, 以後每個月都還了本金呀.

實際年化利率

我們用網上常見的房貸/借款計算器來算一下, 如果按照年化11.54%來計算, 每月的還款情況應該如下, 即每個月只需要等額本息還款886.34, 比929.51元少不少. 

而如果每個月還款929.51元的話, 其利率遠遠不止11.54%, 直接仍然用那個借款計算器大概估計一下.  貌似現有的網上的工具都只能正向算, 即已知利率和貸款本金計算還款計劃表, 沒有一個工具能從每月還款額反推貸款利率, 初步多次嘗試得到如下逼近的結果.

可以看到, 年化利率達到了20.66%, 比之前預想想象中多了太多了.
所以電話銷售在推銷的時候, 往往不會直接告訴你這個年化利率, 因爲太高了, 說了你可能不太會接受. 而這個利率到底是怎麼計算來的呢? 爲啥會有前後這麼大的差別? 實際上, 你借款本金1W並沒有享受整年, 而是隻享受到了1個月, 因爲1個月之後, 你就有歸還部分本金(和利息).

推導方法

我們來正向推到一下這個等額本息利率的計算過程.
假設借款總額爲A, 月利率爲R, 每月還款額爲M, 抓住一點, 欠款總額爲本金*(1+月利率)則有:

(本來是markdown渲染的公式, 無奈結合table轉成html之後太醜了, 於是就用截圖的方式了, 點開後查看大圖)

所以, 能得到第i個月的欠款情況, 上面的公式可以簡化一下, 因爲被減數M後邊的是一個等比數列, 得到第i個月後, 欠款總額爲

如果知道月利率R, 要計算每個月還款額也可以直接通過上面這個公式得到,

以上述浦發銀行的這個例子爲準, 其中A=10000, M=929.51, 代入上面的公式就可以算出R的值.
不太好直接解方程, 自己寫了段小代碼迭代搜索一下能算出來.

貌似這裏能出一道給程序猿的面試題目了, 哈哈. 碼農朋友們, 看看有哪些方法能夠算出來?  (敲黑板) 我這邊暫時不公佈自己寫的這段代碼, 看看大家有思路?
後面有空可以寫個小程序, 供大家使用.

通過計算得到, 借款10000元, 每月還款額度爲929.51元的情況下, 月利率爲0.0171.7%, 年化利率即爲 20.65% 基本上與文首查到的一致. 月利率出來之後, 還款計劃表也就自然而然能夠出來了.

>>> monthRate = calcMonthRate(12, 10000, 929.51)
>>> print monthRate0.0172138214111
>>> print monthRate * 120.206565856934
>>> schedules = repaymentSchedules(12, 10000, monthRate)
>>> for s in schedules: print s
...
[1, '929.49', '172.14', '757.35', '9242.65']
[2, '929.49', '159.10', '770.39', '8472.26']
[3, '929.49', '145.84', '783.65', '7688.61']
[4, '929.49', '132.35', '797.14', '6891.47']
[5, '929.49', '118.63', '810.86', '6080.61']
[6, '929.49', '104.67', '824.82', '5255.79']
[7, '929.49', '90.47', '839.02', '4416.77']
[8, '929.49', '76.03', '853.46', '3563.31']
[9, '929.49', '61.34', '868.15', '2695.16']
[10, '929.49', '46.39', '883.10', '1812.06']
[11, '929.49', '31.19', '898.30', '913.76']
[12, '929.49', '15.73', '913.76', '-0.00']
期數還款本息利息本金剩餘本金
1929.51172.17757.349242.66
2929.51159.13770.388472.28
3929.51145.87783.647688.64
4929.51132.38797.136891.51
5929.51118.65810.866080.65
6929.51104.69824.825255.84
7929.5190.49839.024416.82
8929.5176.05853.463563.35
9929.5161.35868.162695.19
10929.5146.40883.111812.09
11929.5131.20898.31913.78
12929.5115.73913.780.00

可以看出, 上面的還款計劃表跟最開始網上通過房貸計算器得到的一致, 我們再來看看, 招行的有個現金分期業務.

上面的分期費率12期, 0.75%(表面的月息=(3270*12-36000)/36000/12), 申請分期36000, 每月還款3270. 通過上面的公式, 我們來看一下實際的費率情況, 月息相當於1.35%, 年利率 16.2%, 比表面的年息(0.75%*12=9%)高不少.

>>> calcMonthRate(12, 36000, 3270)
0.013513565063476562
>>> calcMonthRate(12, 36000, 3270)*12
0.16216278076171875

所以, 朋友們, 不要被表面現象所迷惑, 不要輕易被套路. 另外, 碼農朋友們, 思考一下前面留出的問題哈, 看看大家都有什麼方法來算.
歡迎留言討論.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章