TOOL / 04
定投回测器
价格是打开页面时从币安公开行情接口现拉的真实月线,不是本地快照。回测能告诉你过去会怎样,不能告诉你以后会怎样——这两件事这一页都会说清楚。
手续费默认 0.1%,是 2026 年 8 月查证的现货普通用户档吃单费率。开了 BNB 抵扣或到了 VIP 档的话改小一点。定投月数从最近一根完整月线往前推。
数据源:币安公开行情接口 data-api.binance.vision,页面加载时拉取。
当前市值
读取中…
正在向币安公开接口请求月线数据。
历史表现不代表未来。换一个起点,同一个策略的结论可能完全相反。加密资产可能在数年内大幅下跌且长期不回本,定投不会让本金变得安全。本页只做数学回测,不构成投资建议。
这个回测怎么算的、它有哪些说不了的事
计算口径
逻辑很简单,但把它写出来你才知道该怎么看结果:
- 向币安公开行情接口请求该交易对的月线,取最近 N 根已收盘的月线,当月还没走完的那根不算;
- 每根月线的收盘价视为那个月的买入价;
- 每月投入固定金额,先扣手续费,剩下的钱按当月价格换成币;
- 最后一根月线的收盘价作为估值价,算出市值、盈亏和年化。
年化用的是复合增长率口径:把「累计投入」当作期初本金、「当前市值」当作期末,按定投月数折成年。这个算法对定投是不公平的——定投的钱是分批进场的,最后一笔只待了一个月,却按整段时间折算。真实的资金加权收益率会比这个数字高一些。之所以还用它,是因为它口径简单、可复现,方便横向比较不同起点。
它做不到的三件事
- 它不能证明定投有效。回测只是把一段已经发生的历史重放一遍。比特币历史上有过从高点跌掉七成以上、并且好几年不回本的阶段,起点落在那里的人看到的数字会非常难看。多试几个不同的定投月数,你会发现结论摇摆得厉害——这个摇摆本身才是有用的信息。
- 它不包含你的真实行为。回测假设你每个月都照买不误。现实里最难的部分是在跌了六成的时候还按计划买下去,大多数人做不到,而做不到的那部分正好是定投理论上最有效的时候。
- 它不含提币、税务和平台风险。算的是账面数字,不是你最终能拿到手的钱。
为什么手续费不能省略
定投是反复买入,每次都付一道费。按现货普通用户档 0.1% 算,三年三十六次,累计吃掉本金的百分之三点几。单看不吓人,但做长期比较时把它抹掉,得到的年化会系统性偏乐观。想把这块压下去,方向是提高档位或开 BNB 抵扣,这两条路各自的账在手续费成本计算器和BNB 抵扣划不划算里算过。
接口拿不到数据时会怎样
页面会直接显示读取失败,并把失败原因写出来,不会拿任何预置数字顶替。所以你看到的每一个结果,要么来自当时真实拉到的行情,要么就是一个明确的错误提示。这一点是有意做成这样的:一个悄悄用旧快照冒充实时数据的工具,比没有工具更糟。
回测方法本身怎么读、怎么避免自己骗自己,写在定投比特币三年到底赚不赚那一篇里。
常见问题
这里的价格数据是从哪来的?
页面打开时直接调用币安的公开行情接口 data-api.binance.vision,拉取该交易对的月线数据,用每根月线的收盘价作为当月买入价。没有本地快照,也没有预先写死的数字,接口拉不到的时候页面会直接告诉你失败,而不是拿旧数据顶上。
回测赚钱,是不是说明定投这个策略有效?
不能这么推。回测只告诉你「在这段已经发生的历史上,这样做会是什么结果」。你换一个起点,结论可能完全相反。比特币历史上有过从高点跌掉七成以上、并且几年不回本的时期,起点落在那种位置的定投者,账面会长期难看。回测的价值在于让你看清波动的幅度,不在于证明某个策略必然赚钱。
为什么要把手续费算进去?
因为定投是长期反复买入,每次都要付一道费。按现货普通档 0.1% 算,投三年三十六次,光手续费就吃掉本金的百分之三点几。这个数字不算致命,但在做长期比较的时候把它忽略掉,得到的年化会比真实情况好看一截。
用月线收盘价买入,和真实定投有差别吗?
有。真实定投多半是每月固定某一天扣款,成交价是那一天的价格,而不是月末收盘价。两者在长期上差别不大,但在单月波动巨大的月份会有明显偏差。这个工具选月线收盘价是为了口径统一、可复现,不是因为它最贴近现实。