---
title: "什么是持仓成本？跨交易所如何追踪"
description: "持仓成本就是你为一笔投资付出的钱，包含手续费。本文讲清它怎么计算、为什么转币会让成本丢失，以及怎样在多个账户里把它记准。"
url: "https://sonarfolio.com/zh/guides/what-is-cost-basis"
language: "zh"
published: "2026-10-09"
updated: "2026-10-24"
author: "Sonar team"
---

# 什么是持仓成本？跨交易所如何追踪

持仓成本（英文叫 cost basis，也常说"成本基础"）是你买入一笔投资付出的全部金额，包括佣金和手续费；除以数量，就是 App 里常见的**持仓均价**。它是计算盈亏的起点：当前市值减去持仓成本是浮动盈亏，卖出所得减去所卖部分的成本是已实现盈亏。跨交易所追踪它，意味着记录每一笔买入，并且在账户之间转移资产时，让原始成本跟着资产一起走。

这篇指南介绍这个概念、常见的计算方法，以及成本容易丢失的地方。它说明的是原理，不构成税务建议，各国规则也不相同。

## 持仓成本包括什么

美国金融业监管局（FINRA）的投资者指南[《Cost Basis Basics》](https://www.finra.org/investors/insights/cost-basis-basics)把它描述为买入价格（包括再投资的分红），加上为完成交易支付的佣金和其他费用。

实际中包括：

- **支付的价格**，即股票或加密货币的价款。
- **买入时的佣金和手续费。**
- **分红再投资**，这部分新买入的份额有自己的成本。

之后还可能被**调整**，比如拆股（总成本不变，股数变多）。

### 总成本和持仓均价

- **总成本：** 为一个仓位付出的全部金额。例：以 3,000 美元买入 10 股，手续费 5 美元，总成本 3,005 美元。
- **持仓均价：** 总成本除以数量，这里是每股 300.50 美元。

两者描述的是同一件事。券商通常显示均价；计算盈亏时，需要的是每次卖出对应的总成本。

## 为什么持仓成本很重要

1. **它告诉你真实的盈亏。** 市值 5,000 美元的仓位，如果成本是 3,000 美元就是盈利，成本是 7,000 美元就是亏损。
2. **在多数国家，卖出时计算税款需要它。** 例如在美国，美国国税局（IRS）把数字资产视为财产，其[数字资产页面](https://www.irs.gov/filing/digital-assets)说明，经纪商须就 2025 年 1 月 1 日起的交易在 1099-DA 表上申报收入总额，并自 2026 年 1 月 1 日起就部分交易申报成本。各地规则不同，具体请咨询当地税务机关或专业人士。
3. **它让表现更真实。** 没有成本，工具只能显示市值，无法显示利润。

## 分多次买入时怎样计算

很少有人一次性买够一种资产。卖出一部分时，问题在于卖掉的是哪几笔买入。常见方法：

| 方法             | 先卖出哪部分                 | 说明                                     |
| ---------------- | ---------------------------- | ---------------------------------------- |
| 先进先出（FIFO） | 最早买入的部分               | 许多地方的默认方法                       |
| 个别认定         | 你自己指定的批次             | 需要能区分每一批的记录                   |
| 加权平均成本     | 每一单位都按仓位的平均成本计 | 简单；券商显示的持仓均价通常就是这种逻辑 |

允许使用哪种方法，取决于资产类型和所在地区。用于税务之前，请先向税务机关或专业人士确认。

### 计算示例

以下为说明用的虚构示例，以美元计。你分两次买入 ETH，之后卖出一部分：

| 时间  | 操作 | 数量    | 价格       | 手续费  | 成本       |
| ----- | ---- | ------- | ---------- | ------- | ---------- |
| 3 月  | 买入 | 2 ETH   | 2,000 美元 | 10 美元 | 4,010 美元 |
| 8 月  | 买入 | 1 ETH   | 3,000 美元 | 8 美元  | 3,008 美元 |
| 12 月 | 卖出 | 1.5 ETH | 3,600 美元 | 9 美元  | —          |

卖出所得：1.5 × 3,600 美元 − 9 美元 = 5,391 美元。

- **先进先出：** 这 1.5 ETH 来自 3 月那一批。成本 = 1.5 ÷ 2 × 4,010 美元 = 3,007.50 美元。已实现收益 = 5,391 美元 − 3,007.50 美元 = **2,383.50 美元**。
- **加权平均：** 7,018 美元 ÷ 3 ETH = 每 ETH 2,339.33 美元。1.5 ETH 的成本 = 3,509 美元。已实现收益 = 5,391 美元 − 3,509 美元 = **1,882 美元**。
- **个别认定**（先卖 8 月那批，再从 3 月那批卖 0.5 ETH）：成本 = 3,008 美元 + 1,002.50 美元 = 4,010.50 美元。已实现收益 = **1,380.50 美元**。

同样的交易，三种结果。所以记录很重要，方法也必须前后一致。

*两笔价格不同的买入（上方细条为各自的手续费）平均后，整个持仓得到一个单位成本（虚线）。*
## 为什么跨交易所时成本会丢失

加密货币投资者会遇到一个特有的问题：**交易所只知道发生在自己平台上的事。**

- **转入的币没有成本。** 你在一个交易所买了 BTC，转到另一个交易所，后者看到的是一笔充值，而不是买入，成本可能显示为未知或零。
- **钱包不记录价格。** 自托管钱包显示的是链上交易，而不是你花了多少钱。
- **币币兑换**通常意味着结束一个仓位，并以当时的市价开始一个新仓位。
- **质押奖励和空投**会增加数量，而这部分成本怎么算取决于当地规则。
- **关闭的账户**如果没导出，历史记录也会一起消失。

解决办法是自己保留一份跟着资产走、而不是跟着账户走的记录。

*从一个账户转到另一个账户时，除非你的记录把原始成本随币一起带过去（✓），否则到账时成本未知（?）。*
## 在多个账户中追踪持仓成本的方法

1. **从每个交易所和券商导出完整历史**，包括不再使用的账户。参见[如何把交易记录导出为 CSV](https://sonarfolio.com/zh/guides/export-transactions-to-csv)。
2. **把所有账户集中到一个地方**，让一个账户的提币和另一个账户的充值能被识别为一次转账。参见[如何在一个地方统一管理加密货币和股票](https://sonarfolio.com/zh/guides/track-crypto-and-stocks-in-one-place)。
3. **把自己账户之间的转账配对**，让原始成本跟着币走，而不是被重置。
4. **记录奖励和空投收到时的价值**，按当地规则处理。
5. **每年核对一次。** 确认每种资产的数量和账户一致，没有哪一批缺少成本。

### Sonar 怎样处理持仓成本

Sonar 为每个持仓保存成本：来自你导入的 CSV（会读取总成本或平均成本列），来自通过 Plaid 连接、且券商提供了成本的证券账户，或者来自你手动录入的持仓。浮动盈亏就是当前市值减去这个成本。

*示例投资组合中的比特币持仓：数量、当前价值、持仓成本，以及由此得出的未实现收益。*
对于卖出，Sonar 按**每个账户、每种资产的加权平均成本**计算已实现盈亏。如果有成本未知的数量进入（转入、奖励、没有价格的买入），Sonar 会把成本标为"未知"，而不是去猜。缺口一目了然，你可以之后补上。

Sonar 是投资组合管理工具，不是报税软件，它按平均成本算出的结果，可能和你所在地税法要求的方法不同。你可以随时把交易导出为 CSV，交给表格、会计师或报税工具。Sonar 支持的格式见[从 CSV 导入组合](https://sonarfolio.com/zh/import-portfolio-csv)，也可以在[演示组合](https://sonarfolio.com/zh/demo)里试试。

## 常见错误

- **漏算手续费。** 买入手续费增加成本，卖出手续费减少所得。
- **把转账当成买入。** 成本会被换成转账当天的价格。
- **丢失旧交易所的历史。** 关闭账户前先导出。
- **混用方法。** 在先进先出和平均成本之间切换会改变结果，也可能与税务规则冲突。
- **忘了拆股和分红再投资。** 两者都会改变持仓均价。

## 常见问题

### 持仓成本就是我买入的价格吗？

差不多。它是价格加上佣金和手续费，并根据分红再投资、拆股等事件调整后的结果。

### 把币转到另一个交易所，成本会怎样？

本来什么都不该变：自己账户之间的转账不是卖出。问题在于接收方交易所不知道原始成本。自己保留记录，或者用能同时看到两个账户的工具。

### "成本未知"是什么意思？

意思是平台持有一些无法对应到任何买入的数量，通常来自转入、奖励，或者早于你记录开始时间的历史。补上原始成本之前，这部分的盈亏无法计算。

### 平均成本和先进先出结果一样吗？

很少一样。如果价格一路上涨，先进先出在单次卖出时通常显示更高的收益，上面的例子就是这样。一个仓位从建仓到全部卖出，总收益是一样的，不同的只是收益在什么时候体现。
