存款利息计算器
这个技能做什么
按用户自己给的利率,算存款和储蓄国债的利息:
- 整存整取:到期利息、到期本息、平均每天 / 每月利息;到期自动转存 N 次(利滚利)和单利对比;提前支取(全部或部分)按活期算少拿多少。
- 大额存单:同上,另支持按月、按季、按年付息;金额不到 20 万元会提醒个人起点。
- 零存整取:每月存一笔,到期本息;中途提前支取对照。
- 存本取息:本金不动,每隔几个月领一次利息;提前支取时多领的利息要扣回多少。
- 储蓄国债:凭证式(到期一次还本付息)、电子式(按年付息);提前兑取扣多少利息、手续费多少。
- 活期:按天计息,可以看按季结息滚进本金的效果。
- 阶梯存款:同一笔钱分成几笔不同期限,对比总利息、每年有多少钱到期可以用,和「全部存一种期限」比。
数字一律来自脚本输出,不要心算。
这个技能不做什么
- 不内置、不查询任何银行的利率。利率必须由用户告诉你;用户不知道就请他看银行 App 或网点挂牌,你不替他编,也不说「现在大概是多少」。
- 不推荐银行,不比较哪家银行好,不说「存这个最划算」。
- 只管存款和储蓄国债。基金、银行代销产品、保险、股票、结构性存款一概不算,用户问到就说这个工具不涉及。
- 不打包票:结果只是按用户给的利率算出来的账,实际以存单、银行和国债发行通知为准。
用户说大白话 → 你翻成命令
脚本路径:{baseDir}/scripts/deposit.py。不要让用户记参数,由你从对话里取数。
| 用户这样说 | 你跑这个 |
|---|---|
| 「10 万存 3 年定期,利率 1.5%,到期多少钱?」 | python {baseDir}/scripts/deposit.py fixed --amount 10万 --rate 1.5 --term 3年 |
| 「10 万存 1 年,1.1%,到期自动转存 4 次,一共多少?」 | python {baseDir}/scripts/deposit.py fixed --amount 10万 --rate 1.1 --term 1年 --renew 4 |
| 「3 年定期存了 400 天想取出来,活期 0.05%,亏多少?」 | python {baseDir}/scripts/deposit.py fixed --amount 10万 --rate 1.5 --term 3年 --early-days 400 --demand-rate 0.05 |
| 「只提前取 3 万,其余接着存」 | python {baseDir}/scripts/deposit.py fixed --amount 10万 --rate 1.5 --term 3年 --early-days 400 --early-amount 3万 --demand-rate 0.05 |
| 「30 万大额存单 3 年 1.9%,按月付息,每月拿多少?」 | python {baseDir}/scripts/deposit.py cd --amount 30万 --rate 1.9 --term 3年 --pay monthly |
| 「每月存 1000,零存整取 1 年,利率 1.2%」 | python {baseDir}/scripts/deposit.py installment --monthly 1000 --rate 1.2 --term 1年 |
| 「10 万存本取息 3 年 1.2%,每季度取一次」 | python {baseDir}/scripts/deposit.py payout --amount 10万 --rate 1.2 --term 3年 --every 3 |
| 「买了 10 万 3 年期凭证式国债 1.63%,到期多少?」 | python {baseDir}/scripts/deposit.py bond --amount 10万 --rate 1.63 --years 3 --kind voucher |
| 「电子式国债 2026-04-10 买的,想 2027-06-10 兑了,损失多少?」 | python {baseDir}/scripts/deposit.py bond --amount 10万 --rate 1.63 --years 3 --kind electronic --buy 2026-04-10 --redeem 2027-06-10 |
| 「凭证式提前兑,存单背面写满半年 0.35%、满一年 0.4%、满两年 1.12%」 | python {baseDir}/scripts/deposit.py bond --amount 10万 --rate 1.63 --years 3 --kind voucher --buy 2026-03-10 --redeem 2027-06-10 --tiers 6:0.35,12:0.4,24:1.12 |
| 「5 万放活期一年,0.05%,有多少利息?」 | python {baseDir}/scripts/deposit.py demand --amount 5万 --rate 0.05 --days 365 --quarterly |
| 「30 万平均分成 1 年、2 年、3 年三笔,利率 1.1、1.2、1.5,和全存 3 年比」 | python {baseDir}/scripts/deposit.py ladder --amount 30万 --rates 1年:1.1,2年:1.2,3年:1.5 --split 1年,2年,3年 |
参数速查(给你看的,不念给用户):
| 参数 | 含义 |
|---|---|
fixed / cd |
--amount 金额(可写 10万)、--rate 年利率(百分数)、--term 期限(3个月 / 6个月 / 1年 / 2年 / 3年 / 5年);--renew 自动转存次数、--renew-rate 转存时的利率;--early-days 已存天数、--early-amount 部分提前支取金额、--demand-rate 活期利率;cd 另有 --pay end/monthly/quarterly/yearly |
installment |
--monthly 每月存入、--rate、--term;--early-months + --demand-rate |
payout |
--amount、--rate、--term、--every 每几个月取一次息;--early-months + --demand-rate |
bond |
--amount、--rate 票面利率、--years、--kind voucher(凭证式)/electronic(电子式);提前兑取加 --buy --redeem(日期);凭证式还要 --tiers 满几个月:年利率,…;--fee-rate 手续费(百分数,默认 0.1) |
demand |
--amount、--rate、--days、--quarterly |
ladder |
--rates 期限:利率,…;--amount + --split 期限,…(平均分),或 --parts 期限:金额,…;--horizon 对比年限(默认各期限的公倍数) |
--day-base |
按天计息时一年按几天,默认 360,可改 365 |
--json |
输出结构化结果 |
退出码:0 正常,2 输入有误(错误信息两行:「出错了:…」「下一步:…」,原样转告用户)。
使用流程
- 问清楚:存多少、存多久、年利率多少、哪种存法。算提前支取还要问已经存了多久、活期利率多少。利率只用用户给的。
- 跑脚本:按上表翻成命令。
- 给用户看:先一句话说结果(例如「到期利息 4,500 元,本息 104,500 元」),再原样给表格、存款保险提示和结尾说明。
- 用户追问「那存 5 年呢」「利率降到 1.3% 呢」,改参数重跑,不要心算。
单利和复利(说给用户听的版本)
- 定期存款到期按单利:存 3 年,利息就是本金按年利率算 3 年,中间不利滚利。
- 到期自动转存时,上一期的本金加利息一起变成新本金,所以多次转存会有利滚利的效果;脚本会把「转存」和「单利」两种总利息并排给出。
- 活期一般按季结息,结出的利息并入本金继续计息,效果很小。
- 存本取息、按月付息的大额存单,领走的利息不再计息,总利息和同利率同期限的整存整取一样。
口径(出处见 references/rules-sources.md)
- 整年、整月的定期直接按年数、月数算;按天算(活期、提前支取、每天利息)默认一年 360 天。2026 年 6 月人民银行就《人民币存贷款利率管理规定》征求意见,拟改成一年 365 天;正式施行前默认不变,用户所在银行已改的可以加
--day-base 365。 - 定期提前支取的部分按支取当天的活期利率计息,没取的部分仍按原利率。
- 个人认购大额存单起点不低于 20 万元,各行可能更高。
- 储蓄国债按一年 365 天折算;电子式提前兑取按近年发行通知:不满 6 个月不计息,满 6 个月不满 24 个月扣 180 天利息,满 24 个月不满 36 个月扣 90 天,满 36 个月不满 60 个月扣 60 天;凭证式按当期发行通知的分档利率,脚本不内置,要用户提供;手续费默认本金的千分之一。
- 存款保险:同一个人在同一家银行的存款本金加利息合计 50 万元以内全额赔付。储蓄国债不是存款,不适用存款保险。
- 各行挂牌利率以银行为准,本技能不内置任何银行的利率。
说话方式
- 只说「存」「取」「到期」「利息」「本息」「提前支取」这类储户的说法,不念参数名。
- 结论只陈述数字,不说「划算」「推荐」「稳赚」,不把存款说成投资产品。
- 用户问该存哪家、存什么最好:说明这个工具只按你给的利率算账,可以把几种存法都算出来给他比。
边界
- 结果按分四舍五入,和银行实际可能差几分钱。
- 零存整取漏存、大额存单转让、银行各自的提前支取次数限制,脚本不模拟,只在输出里提醒以银行为准。
- 电子式国债提前兑取时,应扣利息超过上次付息后的利息,差额一般从本金里扣,以银行实际兑付为准。