基础利率按固定年增长率增长场景下的复利计算方法咨询
利率逐年固定增长场景下的复利计算方案
核心计算逻辑
常规固定利率复利公式不适用于该场景,因为利率本身每年按固定比例增长,需通过逐年滚存本息的方式计算:
- 基础变量定义:
- 初始本金:
principal - 初始年利率:
initialRate(百分比转小数,如5%对应0.05) - 利率年增长率:
rateGrowth(百分比转小数,如10%对应0.1) - 计息总年数:
years - 第k年的执行利率:
currentRate = initialRate * Math.pow(1 + rateGrowth, k-1)
- 初始本金:
- 最终本息和计算公式:本金 * 每一年(1+当年执行利率)的连乘积,公式表达为:
FV = principal * Πk=1 to years [1 + initialRate * (1 + rateGrowth)k-1]
示例计算(对应题目参数)
参数:本金1000美元,初始年利率5%,利率年增长率10%,计息5年,逐年计算结果如下:
- 第1年:执行利率5%,年末本息 = 1000 * 1.05 = 1050美元
- 第2年:执行利率5.5%,年末本息 = 1050 * 1.055 = 1107.75美元
- 第3年:执行利率6.05%,年末本息 = 1107.75 * 1.0605 ≈ 1174.72美元
- 第4年:执行利率6.655%,年末本息 = 1174.72 * 1.06655 ≈ 1252.79美元
- 第5年:执行利率7.3205%,年末本息 = 1252.79 * 1.073205 ≈ 1344.42美元
计息5年后总复利收益约为344.42美元。
适配的JS代码实现
// 基础参数定义 const principal = 1000; const initialRate = 5 / 100; // 初始年利率5% const rateGrowth = 10 / 100; // 利率年增长率10% const years = 5; let finalAmount = principal; for (let k = 1; k <= years; k++) { // 计算当年执行利率 const currentRate = initialRate * Math.pow(1 + rateGrowth, k - 1); finalAmount = finalAmount * (1 + currentRate); } // 复利利息 = 最终本息 - 本金 const compoundInterest = finalAmount - principal; console.log(`最终本息和:${finalAmount.toFixed(2)}美元`); console.log(`复利利息:${compoundInterest.toFixed(2)}美元`);
内容的提问来源于stack exchange,提问作者Frederick Keller
相关产品推荐
相关产品推荐

