怎么追踪 DCA 定期定额的真实绩效?平均成本与报酬率完整算法

发布于 2026年7月19日

每周固定买 100 镁比特币,买了半年,现在到底赚还赔?这题很多 DCA(Dollar-Cost Averaging,定期定额)玩家答不出来——每次买的价位都不一样,脑袋根本记不住平均成本落在哪,更别提还要把一路加码的运气扣掉、看出「真实报酬率」。

我们做 ExAgg 帮用户算定投绩效时发现一件反直觉的事:很多人牛市尾段用「现价比平均成本」评估自己,越算越觉得「怎么赚这么少」——其实不是策略差,是后期投入的大笔钱还没吃到前面的涨幅,指针本身就用错了。这篇用实际数字讲清楚:平均成本怎么算、为什么「现价比平均成本」比不出真实绩效,以及怎么让 App 接上交易所自动帮你算。

💡 DCA 别只看现价涨跌就下结论。真正要盯的是两个数字:加权平均成本(买贵还是买便宜)和真实报酬率(排除加码后策略到底行不行)。

平均成本怎么算:一个定投小算例

DCA 的核心是「不管涨跌、固定金额分批买」,所以你的成本是一条被摊平的均线,不是单一进场点。正确算法是加权平均成本 = 累积投入金额 ÷ 累积持有数量

假设你分三次定投比特币,每次都投入 100 镁:

  1. 第一次:价格 20,000,买到 0.005 BTC
  2. 第二次:价格 25,000,买到 0.004 BTC
  3. 第三次:价格 10,000(大跌),买到 0.010 BTC

累积投入 = 100 + 100 + 100 = 300 镁。累积持有 = 0.005 + 0.004 + 0.010 = 0.019 BTC

加权平均成本 = 300 ÷ 0.019 ≈ 15,789 镁

注意:三个价格的「算术平均」是(20,000 + 25,000 + 10,000)÷ 3 ≈ 18,333,但你的真实平均成本只有 15,789。因为固定金额在低价时会自动买进更多数量,DCA 天然把成本往下拉——这就是定投的威力,也是为什么你不能用「价格的平均」来估成本。

价格 时间 → 平均成本 15,789 现价 20,000 25,000 10,000 ×多 ● 每次固定投入 100 镁
固定金额定投:低价时(10,000)自动买进更多数量,把加权平均成本(绿色虚线)压到低于价格的算术平均;现价(黄线)在平均成本之上,代表帐面获利。

为什么「现价 vs 平均成本」比不出真实绩效

算出平均成本后,最直觉的做法是「(现价 − 平均成本)÷ 平均成本」当报酬率。以上面例子、现价假设 18,000 来算:(18,000 − 15,789)÷ 15,789 ≈ +14%

这个数字能告诉你「现在帐面赚赔多少」,但它不能代表你的策略或标的表现好不好,原因有二:

  • 它把加码时机混进去了。 你在 10,000 大量加码,把平均成本压很低,报酬率看起来很漂亮——但这是「择时运气」的功劳,不是策略本身。反过来若你都在高点追,同样一段行情会被算得很难看。
  • 它没有时间维度。 分三次、跨半年投入的钱,参与市场的时间长短不同。后期投入的资金根本没吃到前面的涨幅,用单一「现价比成本」会低估或高估真正的区间表现。

换句话说,「现价 vs 平均成本」是资金加权的结果——它同时被市场表现和你的出入金时间点污染,两件事糊在一起,你既看不出选币准不准,也看不出择时差在哪。想深入理解这个陷阱,可以读已实现 vs 未实现损益,搞懂帐面数字和真实落袋的差别。

TWR:把加码干扰切出去

要衡量「策略/标的本身」的表现,基金业的标准做法是 TWR(Time-Weighted Return,时间加权报酬率)。它的思路是:每次出入金(对 DCA 来说就是每次扣款)就切一个子期间,分别算报酬,再几何连乘:

TWR =(1 + r₁)(1 + r₂)…(1 + rₙ)− 1

连乘之后,每段报酬的权重只跟时间有关、跟你当时投了多少钱无关——加码多寡的影响被干净切掉,剩下的就是市场这段路真正给了多少。这正是 DCA 玩家最需要的视角:你想知道的是「这半年比特币的走势,对我这种定投法有没有利」,而不是「我运气好压中低点没」。

开头讲的那个「怎么赚这么少」的错觉,根源就在这:资金加权会让后期大额投入拖累数字,TWR 换个切法就还原了策略本身的表现。完整的 TWR 算法、和资金加权报酬(MWR)的差别,详见 什么是 TWR

怎么自动追踪:接上交易所就不用手算

DCA 追踪最痛的一点是:期数越多、记录越烦。每周扣款一次、半年就是 26 笔,你要记下每次的买入价、数量、还有当下的组合总市值才能算 TWR——靠记忆或翻对帐单根本撑不了几周。

自动化的正确姿势是让工具替你记帐:

  • 接交易所唯读 API:把交易所连进追踪 App,每一笔成交(包含你的定投扣款)自动被读进来,加权平均成本实时更新,不用手动输入。
  • 自动切期算 TWR:每次出入金当下的总市值被记录下来,系统自动几何连乘,同场对比「现价比成本」的简单报酬率,让你一眼看出策略表现和择时效果的差距。
  • 跨所集成:如果你在多家交易所定投,总资产被合并成一个数字,跨所转帐互相抵销,不会被搬钱的动作干扰绩效。
ExAgg 真實績效與報酬率

想先手动试算的话,可以用免费的 DCA 计算机 粘贴每次的买入价与金额,自动算加权平均成本;再搭配 TWR 计算机 排除加码干扰。但要长期、无痛地追踪,还是接上交易所自动算最实在。

常见问题 FAQ

DCA 的平均成本要怎么算?

用「累积投入金额 ÷ 累积持有数量」,也就是加权平均成本,不是把每次买入价格做算术平均。因为固定金额在低价时会买到更多数量,加权后的成本通常低于价格的单纯平均。

为什么「现价减平均成本」不能当作我的定投绩效?

因为那是资金加权的结果,会把「加码时机的运气」混进策略表现里,也没有考虑各笔资金参与市场的时间长短。要看策略/标的本身好不好,得用 TWR 时间加权报酬率,把加码干扰切掉。

DCA 用 TWR 还是简单报酬率?

两个一起看最好。简单报酬率(现价比成本)告诉你荷包现在帐面赚赔多少;TWR 告诉你这段行情对你的定投策略有没有利。DCA 因为天天在制造出入金事件,只看简单报酬率特别容易失真。

定投很多笔,怎么不用手动记帐就追踪?

把交易所用唯读 API 连进 ExAgg,每笔定投成交会自动读入,加权平均成本与 TWR 都自动计算并实时更新,不用逐笔手动输入,也不怕漏记。

结论:让工具帮你把 DCA 算对

  • 平均成本 = 累积投入 ÷ 累积数量,DCA 天然把成本压在价格算术平均之下。
  • 「现价 vs 平均成本」只能看帐面赚赔,不能代表策略绩效——它被加码时机污染了。
  • 想看策略本身,用 TWR 把加码干扰切掉;想看落袋,参考 已实现 vs 未实现损益
  • 手算试试 DCA 计算机,但长期追踪还是接交易所自动算最省事。

ExAgg 会把你在十家交易所与链上钱包的定投成交自动集成,加权平均成本与真实报酬率实时更新,不再靠记忆力对帐。到 App Store 下载 ExAgg,一个画面看完你的 DCA 到底赚不赚。