本文解释 TaxAlpha 使用的 FIFO 资本利得计算方法,帮助你理解报告中的数字是如何得出的。
什么是 FIFO?
FIFO(First In, First Out) 即「先进先出」,是国际通用的资本利得税计算方法。
核心规则:卖出时,优先匹配最早买入的那笔。
举例
假设你先后三次买入了苹果(AAPL):
| 时间 | 操作 | 数量 | 价格 |
|---|---|---|---|
| 2024-01 | 买入 | 10 股 | $150 |
| 2024-06 | 买入 | 10 股 | $180 |
| 2025-01 | 买入 | 10 股 | $200 |
2025-03 你卖出 15 股,价格 $220。FIFO 匹配过程:
- 先匹配 2024-01 买入的 10 股($150)→ 盈利 (220 − 150) × 10 = $700
- 再匹配 2024-06 买入的 5 股($180)→ 盈利 (220 − 180) × 5 = $200
总已实现盈利 = $700 + $200 = $900
剩余:2024-06 还剩 5 股,2025-01 的 10 股未动。
做多与做空
TaxAlpha 支持两种交易方向,各自独立维护 FIFO 库存:
做多(LONG) — 买入 → 卖出 先买后卖,赚取价格上涨差价。卖出时按 FIFO 匹配最早的买入。
做空(SHORT) — 卖空 → 买入平仓 先卖后买,赚取价格下跌差价。平仓时按 FIFO 匹配最早的空头仓位。
手续费分摊
交易手续费(佣金、平台费、印花税等)会按比例分摊到每笔匹配中:
- 买入费用:加入成本基准(增加成本 → 减少盈利)
- 卖出费用:从卖出收入中扣除(减少收入 → 减少盈利)
分摊公式
当一个买入批次被部分匹配时:
分摊费用 = 该批次总费用 × (匹配数量 / 买入总数量)
这样确保每笔匹配承担的费用与数量成正比。
计算流程
- 排序 — 所有交易按时间戳排序(与上传文件顺序无关)
- 逐笔处理 — 买入加入库存,卖出从库存中 FIFO 匹配
- 汇率转换 — 每笔匹配使用交割日的央行中间价折算人民币
- 费用分摊 — 手续费按匹配数量比例分摊
- 年度汇总 — 按卖出日期所在年份归入对应税务年度
常见疑问
Q:为什么我的盈亏和券商 App 显示的不一样? A:券商通常展示的是「账户浮盈」(包含未卖出的持仓),而 TaxAlpha 只计算「已实现盈亏」(已完成买卖的交易)。另外,券商不一定使用 FIFO 方法,也通常不做逐笔汇率换算。
Q:做空和做多会混在一起匹配吗? A:不会。TaxAlpha 维护两个独立的库存,做多和做空的 FIFO 匹配互不干扰。
Q:如果同一天有多笔买入,按什么顺序匹配? A:按交易时间戳精确排序。如果时间戳完全相同,按文件中出现的顺序。