信用卡分期手续费率与贷款利率间的相互转换

背景

近期遇到的一个真实事件:
中信银行给我打电话,说我的信用卡欠款可以分期归还,手续费折算到每月大约是0.57%。手续费需要在第一个月全额支付。比如我分期12000元,则第一个月应还:
1000+(12000×0.0057×12)=1820.8
从第二个月开始,每个月还1000

另一方面,蚂蚁花呗贷款日息是万2,也就是10000块钱每日利息2块钱,月利率大约是0.6%。

问题来了,中信银行的信用卡欠款,是分期比较划算,还是从蚂蚁花呗借款(12个月,按月等额本息还款)来还划算?

我第一感觉是手续费率较低,当时正好钱荒,所以当场就办理了分期。回头一想似乎不对,于是拿出手机打开支付宝算了算:
蚂蚁借呗

总利息是480.03元,而前述手续费是820.80元,比较下来等额本息要少还不少利息。
其实仔细想想就能明白,无论等额本金还是等额本息还款,用来计算利息的本金都是逐月减少,但用来计算分期手续费的本金则是始终等于借款总额,这个差异点使得分期手续费率与贷款利率之间不能直接比较。

既然不能直接比较,它们之间应如何转换?本文就这个问题做了些探讨。先说下结论,在分期手续费率不高(月费率小于1%)的情况下,通常可以直接按照2倍来估算对应的贷款利率(此时等额本金、等额本息差别不大)。此结论有助于在不同资金操作方式间进行比较。

约定

月手续费率: x
月贷款利率:y
月份数: m
总利息:P
借款总数: A
等效贷款数:A
解释下借款总数与等效贷款数之间的关系:一般银行的手续费分为首月付清或者末月付清,而不是逐月支付
- 如果是首月付清手续费,则用户实际可用款项是借款总数减去手续费,而不是全部借款,此时相当于贷款 A=AA×m×x
- 如果是末月付清手续费,则等效贷款数等于借款总数 A=A
基于以上讨论,引入“贷借比” k=AA

k={1mx1

推导

所谓手续费率与贷款利率的“等效关系”是基于以下条件:双方所计算出来的应付总利息相等
分期手续费率总利息:

P=A×m×x

等额本金

如果是贷款且使用等额本金方式还款,则应付利息为:

  • 第1个月: Ay=Aymm
  • 第2个月: (AAm)y=Ay(m1)m
  • 第n个月: (AA(n1)m)y=Ay(m+1n)m
  • 总利息: P=Ay[m+(m1)+...+1]m=Ay(m+1)2

所以应有:

Amx=Aym+12


y=2mxk(m+1)

等额本息

等额本息下,每月还款额是

X=Ay(1+y)m[(1+y)m1]

推导过程不赘述,参考 这里
总利息:
P=mXA=A{my(1+y)m[(1+y)m1]1}


Amx=A{my(1+y)m[(1+y)m1]1}


kmy(1+y)mk[(1+y)m1]mx[(1+y)m1]=0


kmy(1+y)m(k+mx)(1+y)m+(k+mx)=0(1)

我数学知识忘得差不多了…以上表达式无法直观的看出符号解 y=f(x) ,只好求助于matlab。

代码

matlab是处理数学问题和绘制函数图像首选。

等额本金

function [y] = principal(x, m, pre_pay)
%Matching principal

if pre_pay
    k = 1 - x .* m;
else
    k = ones(1, length(x));
end

y = 2 * m .* x ./ (k .* (m + 1));
end

等额本息

等额本息换算公式较为复杂,(1)并非标准的多项式形式,我们做个转换:
t=1+y ,则(1)转换为

km(t1)tm(k+mx)tm+(k+mx)=0


kmtm+1(km+k+mx)tm+(k+mx)=0(2)

(2)是标准的多项式形式,可以用matlab的roots函数求解,需要过滤掉复数解以及 t=1 的解(注意到roots是求数值解,有一定误差,所以实际代码中采用了更宽松的判断条件)。

function [y] = interest(x, m, pre_pay)
%Matching interest

if pre_pay
    k = 1 - x .* m;
else
    k = ones(1, length(x));
end

rows = length(x);
p = zeros(rows, m + 2);
p(:, 1) = k .* m;
p(:, 2) = -(k .* m + k + x .* m);
p(:, m + 2) = k + x .* m;

y = [];
for i = 1:rows
    t = roots(p(i, :));
    t_rows = 1;
    for j = 1:length(t)
        if isreal(t(j)) && t(j) > 1 + x(i)
            y(t_rows, i) = t(j) - 1;
            t_rows = t_rows + 1;
        end
    end
end

end

结论

以分12期为例。在matlab中使用以下代码来看 y=f(x) 图形变化趋势

x = linspace(0, 0.04);
y1 = principal(x, 12, 1);
y2 = principal(x, 12, 0);
y3 = interest(x, 12, 1);
y4 = interest(x, 12, 0);
y5 = x .* 2;
figure;
plot(x, y1, 'r', x, y2, 'g', x, y3, 'b', x, y4, 'c', x, y5, 'k.'), grid;
xlabel('手续费率');
ylabel('等效利率');
legend('等额本金,手续费首月付清', '等额本金,手续费末月付清', '等额本息,手续费首月付清', '等额本息,手续费末月付清', '2倍手续费率', 'Location', 'northwest');

b=f(a)
可以看到,等效的贷款利率通常远高于对应的分期手续费率。在分期手续费率较小时,等效贷款利率约2倍于手续费率。

开篇提到中信银行的分期月手续费率为0.57%(首月支付),那么对应的等额本息等效月利率是

>> interest(0.0057, 12, 1)

ans =

    0.0111

即1.11%。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值