同一只股票多次买入再卖出,卖出成本不能用最近一次买入价,也不能凭感觉估,而要按一套固定的成本法逐笔结转。主流做法有两种:先进先出(FIFO),最早买入的先结转;移动加权平均,每次买入后重算单位成本,卖出时按当时的加权单价结转。核心公式是:
本次卖出成本 = 本次卖出数量 × 对应批次(FIFO)或当前加权(移动加权平均)单位成本 本次已实现盈亏 = 卖出收入 − 本次卖出成本 − 交易费用
无论是个人投资复盘,还是公司做账、税务申报,关键都不是只得到一个总数,而是保留每一笔卖出对应了哪几批买入的依据——这正是已实现盈亏计算的核心。下面按"为什么不能用平均买入价 → 两种算法 → 计算实例 → 结转表"逐步讲清。
为什么不能直接用平均买入价
券商软件里的参考成本价可能会受分红、费用、历史导入、转托管和系统算法影响。它适合投资者查看,但不一定能直接作为公司会计底稿。
财务需要的是:某一天卖出 1,000 股时,这 1,000 股到底对应哪几批买入,成本是多少,费用是多少,卖出后还剩多少持仓。
常见成本算法
先进先出法(FIFO)会把最早买入的股票先结转成本。它的优点是逻辑清晰,适合做交易匹配明细,能清楚说明本次卖出对应了哪几批买入。
移动加权平均法会在每次买入后重新计算单位成本,卖出时按当时的加权单位成本结转。优点是只需要维护一个"当前单位成本",账面简单。
与 Sumwow 算我盈 计算器选项的对应关系:本文的"先进先出"对应"成本法:先进先出(FIFO)";本文的"移动加权平均法"对应"成本法:平均成本"——计算器的平均成本采用移动加权方式,每次买入都会重新计算当前单位成本。
企业内部用于会计和税务的成本算法,应保持一致、可解释、可复核。不要一会儿按先进先出,一会儿按平均成本,只为了让某次收益看起来更低。
增值税口径单独提示:财税〔2016〕36号附件2 规定,金融商品转让的买入价可以选择"加权平均法"或"移动加权平均法"核算,选定后 36 个月内不得变更。这是增值税申报的口径,与会计、企业所得税选用的成本算法相互独立。
一个简单例子
某公司买入同一股票,并在 3 月卖出一部分:
- 1 月:买入 1,000 股 @ 10 元/股
- 2 月:买入 1,000 股 @ 12 元/股
- 3 月:卖出 1,500 股 @ 13 元/股(卖出收入 19,500 元)
两种成本法下的结果对比:
| 项目 | 先进先出(FIFO) | 移动加权平均(即"平均成本") |
|---|---|---|
| 卖出对应批次 | 第一批 1,000 股 @10 元 + 第二批 500 股 @12 元 | 加权单位成本 11 元/股((10,000+12,000) / 2,000) |
| 本次结转成本 | 16,000 元 | 16,500 元 |
| 本次已实现收益 | 19,500 − 16,000 = 3,500 元 | 19,500 − 16,500 = 3,000 元 |
| 剩余持仓数量 | 500 股 | 500 股 |
| 剩余持仓成本 | 6,000 元(@12 元/股) | 5,500 元(@11 元/股) |
两种算法下,本次收益和剩余持仓成本都不同,但持仓数量一致。后续这 500 股再卖出时承接的成本也不一样,因此长期持有到全部卖出后,累计已实现收益会回到同一个数字;差别只是体现在不同期间。重点是方法要事先确定并持续使用。
成本结转表应包含什么
- 标的代码和名称
- 买入批次日期
- 买入数量和金额
- 卖出日期
- 本次卖出匹配数量
- 本次结转成本
- 剩余持仓数量
- 剩余持仓成本
- 交易费用和税费
有了这张表,卖出收益、期末持仓成本和汇算清缴底稿才能互相勾稽。如果不想手工拼表,可以用 交易记录盈亏计算器 上传券商交易流水,自动按 FIFO 或平均成本法结转,并导出可复核的明细。
常见问题
多次买卖同一只股票,卖出成本到底怎么算?
先固定一种成本法再逐笔结转。FIFO 把最早买入的批次先匹配给本次卖出;移动加权平均则在每次买入后重算当前单位成本,卖出时按这个加权单价结转。本次卖出成本等于卖出数量乘以对应的批次或加权单位成本,已实现盈亏再减去交易费用。
FIFO 和移动加权平均算出来的成本一样吗?
单次卖出通常不一样,因此每期已实现盈亏也不同。但只要持续使用同一种方法,等到这只股票全部卖出后,累计已实现盈亏会回到同一个数字,差别只体现在不同期间的分布上。所以方法要事先确定并保持一致,不能为了让某次收益更低而临时切换。
券商 App 显示的成本价能直接用于公司做账吗?
不一定。券商的参考成本价可能受分红、费用、历史导入、转托管和系统算法影响,适合投资者查看,但不一定符合会计和税务底稿要求。做账需要能还原"某天卖出多少股、对应哪几批买入、成本和费用各是多少"的连续台账。
卖出一部分后,剩余持仓成本怎么算?
按所选成本法结转后,剩余持仓成本 = 原持仓成本 − 本次结转成本。例如先后以 10 元、12 元各买入 1,000 股,卖出 1,500 股:FIFO 下剩余 500 股成本为 6,000 元(@12 元);移动加权平均下加权单价为 11 元,剩余 500 股成本为 5,500 元。