加权平均成本怎么算:多笔买入和补仓之后的真实均价

同一个币分三次买进——2.00 买 500 个、1.60 买 500 个、1.20 买 1000 个(数字为演示假设),你的成本价就是 1.50:总花费 3000 除以总数量 2000,公式只有这一条。真正麻烦的在后面:持仓页上写着另一个数,涨回 1.50 你其实还没回本,卖掉一部分之后剩下的成本还能算出两个不同答案。
难的不是算术,是几处容易走偏的地方:加权还是算术平均、手续费算不算、卖掉一部分之后剩下的怎么记、平台那个数字又是从哪来的。
公式只有一条:总成本 ÷ 总数量
加权平均成本的定义很朴素:把每一笔买入的金额全部加起来,除以买到手的总数量。
加权平均成本 = Σ(每笔单价 × 该笔数量) ÷ Σ(该笔数量),也就是"总花费 ÷ 总数量"。
符号说明:Σ 表示对所有买入笔数求和;每笔单价指那一笔实际成交的价格;该笔数量指那一笔买到的币的个数。分子是钱,分母是币,除完得到的就是"每一个币平均花了多少钱"。
关键在"加权"两个字:每笔的权重是它买了多少量,不是它出现过一次。只买了一点点的那笔,哪怕价格极端也带不动整体。
看一个三笔买入的完整例子,数字全部是为演示而假设,不代表真实行情:
| 笔次 | 成交单价(USDT) | 数量(个) | 该笔金额(USDT) |
|---|---|---|---|
| 第 1 笔 | 2.00 | 500 | 1000.00 |
| 第 2 笔 | 1.60 | 500 | 800.00 |
| 第 3 笔(补仓) | 1.20 | 1000 | 1200.00 |
| 合计 | — | 2000 | 3000.00 |
总花费 3000,总数量 2000,加权平均成本 = 3000 ÷ 2000 = 1.50 USDT。
拿它和算术平均比一比:(2.00 + 1.60 + 1.20)÷ 3 = 1.60,高了 0.10。差在第 3 笔买了 1000 个、占总量一半,而算术平均只把它当"三笔里的一笔"。换成你在高位小量加一点,它又会反过来偏低。方向不固定,固定的只有一条:除非各笔金额刚好相等,否则算术平均给不出你的真实成本。
手工列表格容易在数量那一列出错,有零头时尤其如此。平均成本与补仓计算器 就是干这个的:填进每笔的价格和数量直接出均价,也能反过来告诉你"想把均价压到某个数还得再买多少"。
补仓时的问题通常正是反过来问的:均价要压到某个目标,还得再买多少?这一步有闭式解,不用试凑。设现有数量 Q₁、现有均价 C₁、目标均价 T、这次的补仓价 P₂:
还需买入数量 Q₂ = Q₁ ×(C₁ − T)÷(T − P₂)
它的适用区间是 P₂ < T < C₁:补仓价要低于目标均价,目标又要低于现有均价,否则方向反了、方程无解。沿用上面的假设数字,现有 2000 个、均价 1.50,想把均价压到 1.40,而这次买入价 1.20:Q₂ = 2000 ×(1.50 − 1.40)÷(1.40 − 1.20)= 2000 × 0.10 ÷ 0.20 = 1000 个,再投 1200 USDT。验算一遍:(3000 + 1200)÷(2000 + 1000)= 1.40,对得上。这里的数字同样是为演算而假设。
手续费到底要不要算进成本
这是分歧最大的一处,两边都能说出道理。先看看有明文可循的地方怎么规定。美国国税局在虚拟货币交易的常见问答里,把成本基础(cost basis)定义为取得该资产所花的全部金额,原文明确写了包含手续费、佣金及其他取得成本。
请注意适用范围:那是美国的税务规定,写给美国纳税人看的。中文读者所在地怎么规定,本文没有查证,也不给任何税务结论,涉及申报请咨询你所在地的专业人士。
抛开税务,单从"我到底掏了多少钱"看,把买入手续费算进去也更诚实。现货手续费按成交额的一个百分比收取,费率还随账户等级、挂单还是吃单而不同,具体费率去你那家的费率页面看当期数字。
接着上面的例子,假设这三笔一共付了 3.00 USDT 手续费(同样是假设值):
- 不含费的均价:3000.00 ÷ 2000 = 1.5000
- 含费的成本基础:3000.00 + 3.00 = 3003.00,均价 = 3003.00 ÷ 2000 = 1.5015
差 0.0015,看着微不足道,可这只是一次性的建仓费用;真正吃利润的是长期反复进出叠加的次数。各项费用什么时候产生,加密交易手续费全解 讲得全;挂单和吃单为什么费率不同,可以看 maker 和 taker 的区别。
我自己是买入手续费算进成本,卖出手续费单独列一行、不揉进均价。原因很实际:均价常要和别人报的成本对照,揉进一笔还没发生的费用就没法比。重要的不是选哪种,是全程只用一种。
均价不是回本价:盈亏平衡价怎么算
不少人算出 1.50 就松了口气:涨回 1.50 我就解套了。没这么便宜。均价只统计了买入这一侧,而手续费是双边的——买的时候收过,卖的时候还要再收一次。卖价得比均价再高出一点、刚好覆盖离场费用,你才真正不赔不赚。
盈亏平衡卖价 =(总成本基础 + 固定离场成本)÷ [数量 ×(1 − 卖出费率)]
符号说明:总成本基础是买入侧的全部花费(含不含买入手续费,按上一节的选择前后保持一致);固定离场成本指与成交额无关的固定支出,比如提币的网络费,没有就填 0;数量是你打算卖出的个数;卖出费率是按成交额收取的比例,写成小数,取你账户当期实际适用的那一档。
查不到确切费率时,还有个更好上手的近似写法:估一个卖出手续费的金额,加进去再除以数量。
盈亏平衡卖价 ≈(总成本基础 + 预估卖出手续费)÷ 数量
沿用前面的数字,总成本基础取含费的 3003.00,假设卖这 2000 个约付 3.00 USDT 手续费,盈亏平衡卖价 ≈(3003.00 + 3.00)÷ 2000 = 1.503 USDT。它带一点误差,因为卖出手续费本身又取决于卖出金额;把 1.503 代回去重估一次再算,精度就够了。
| 指标 | 本例数值(USDT) | 包含了什么 |
|---|---|---|
| 不含费均价 | 1.5000 | 只有成交金额 |
| 含费均价(成本基础) | 1.5015 | 成交金额 + 买入手续费 |
| 盈亏平衡卖价 | 1.5030 | 上一行 + 预估卖出手续费 |
所以"回到成本价就走"有歧义:回到哪个成本价?按不含费的均价出手,你其实还在小亏。想把这笔账连同盈亏一起算完,盈亏和 ROI 怎么算 那篇接着讲净盈亏怎么扣成本。
卖掉一部分之后,剩下的成本怎么记
建仓阶段的账好算,麻烦的是卖掉一部分、手上还剩一些。"剩下这些的成本是多少"没有唯一答案,取决于你按哪种方法记账,会计上常见的有两种。
移动加权平均法:每次买入后重算一次均价,之后的持仓都按新均价计量。这种方法下,一种常见处理是卖出只减少数量、不改变剩余持仓的单位均价。你卖掉 800 个,剩下的 1200 个仍按 1.5015 计,剩余成本 = 1200 × 1.5015 = 1801.80 USDT。
先进先出法(FIFO):假定先买进来的先卖出去,按入库顺序结转成本,期末余额反映的是较晚买入的那几笔价格。为便于和上一段对照,这一组按不含费的成交价结转。同样卖掉 800 个,这 800 个被认定为最早那笔 2.00 的 500 个加第二笔 1.60 的 300 个;剩下 1200 个由第二笔剩余的 200 个(1.60)和第三笔的 1000 个(1.20)组成,剩余成本 = 200 × 1.60 + 1000 × 1.20 = 1520.00 USDT,折合每个约 1.2667。
同一串交易、同样卖掉 800 个,一个算出 1801.80、一个算出 1520.00,差了将近三百——其中买入手续费只占 1.80,剩下的两百八十全部来自结转顺序不同。两个都对,回答的问题不同,前提是别中途换方法;别人报成本给你时也先问他按哪种记的。另外,美国国税局的问答提到,卖出时若不能逐笔特定识别(specific identification)具体卖的是哪些币,就按先进先出处理——同样是美国规则,不适用于其他地区。
还有一类份额常被漏掉:空投、质押或理财发下来的奖励、活动赠币——它们进到账上时并没有一笔对应的成交价。各种记账口径对它们的处理并不一致:有的按到账当时的市场价入账,有的干脆记作零成本。记作零成本时,分母变大而分子没动,均价被明显拉低;按到账市价入账时,分子分母同时增加,均价是往那个市价的方向靠——到账价低于你现有均价就拉低,高于现有均价反而会抬高。两条路算出来的数能差出不小一截,这也是"自己算的和平台显示对不上"的另一个常见来源。选哪一种本文不替你决定,只提醒一句:把成本报给别人时说清楚这些零成本份额算没算进去。
交易所显示的成本价,为什么和你算的对不上
以币安钱包总览里的"平均成本"为例,官方帮助页(链接见文末资料来源)给了明确定义:该数字指币种增加时的平均市场价格,公式按原文写作"平均成本 = 市场价格(币种增加时的平均市场价格)× 增加的数量 ÷ 增加的总量"。这句照抄下来你是算不出数的——里面的"市场价格"本身已经是一个平均值,怎么取平台并没有公开,所以它只能当作平台对自己口径的说明,不是一条你能拿自己的成交记录复算的公式。同一页还写了三件值得注意的事:数据自 2021 年 8 月 1 日起开始收集;官方声明这个数值可能无法保证绝对准确;用户可以手动覆盖它,覆盖之后不可还原。
摆在一起,对不上就很正常。那个起始日之前买的部分平台没收进来;它取的是币种增加时的市场价格,而你成交的价格未必等于当时的市场价格;手续费算不算在内、持仓减少后均价如何调整,页面都没说——没说的事,不能替它断言。
平台上的成本价适合用来快速瞄一眼,不适合当作你的成本记录本身。
自己留一份账并不费事:每笔记时间、成交单价、数量、手续费四列,导出的成交记录里都有。有了这四列,前面的公式随时能重算。
补仓之前,先想清楚再按计算器
分批买入本身是中性的:它可能是有计划地摊平成本,也可能是被套之后不甘心的加码。公式算的是前者的结果,拦不住后者的动机。补仓确实把均价摊低了,可你手上的币和投进去的钱都变多了,下跌时的实际敞口只会更大——这层差别 定投和补仓有什么区别 那篇专门讲过,这里不重复。
常见问题
均价就是我的回本价吗?
不是。均价只反映买入这一侧的花费,而你卖出时还要再付一次手续费,所以盈亏平衡价一定比均价高一点。一种常见写法是:盈亏平衡卖价 =(总成本基础 + 固定离场成本)÷ [数量 ×(1 − 卖出费率)]。
卖出一部分之后,剩下持仓的均价会变吗?
看你用哪种记账方法。在移动加权平均法下,一种常见处理是卖出只减少数量、不改变剩余持仓的单位均价;若改用先进先出法,则按入库顺序结转,期末余额反映的是较晚买入的那几笔,剩余成本会算出另一个数。各家交易所具体如何处理,并没有统一的公开说明。
交易所显示的成本价能直接当我的成本吗?
建议只当参考。以币安钱包总览的平均成本为例,官方帮助页把它定义为该币种增加时的平均市场价格,数据自 2021 年 8 月 1 日起开始收集,页面同时声明可能无法保证绝对准确,并允许用户手动覆盖,覆盖之后不可还原。该页面也没有说明这个数字是否计入手续费。
本文为方法科普,不构成投资建议或税务意见,不预测价格、不承诺收益、不推荐任何币种。文中价格、数量、手续费金额均为便于演算而假设,不代表真实行情或平台报价;费率以交易所费率页面当期显示为准。成本基础的税务说明仅为美国国税局规则的转述,不适用于其他地区。加密资产波动大,分批买入不能保证盈利,请量力而行。资料来源(外部):IRS: Frequently Asked Questions on Virtual Currency Transactions · 币安帮助中心:如何查看总览平均成本或重置平均成本 · Microsoft Learn: 移动加权平均成本(仅作移动加权平均法的方法定义参考,非加密行业文档),查证于 2026 年 9 月。