← 返回文章库

为什么XIRR算出来和你以为的收益率不一样

2026-07-27 · L0

如果你第一次用XIRR算完自己的账户,发现数字跟心里预期差了一大截,先别急着怀疑工具算错了——大概率是你心里那个”收益率”和XIRR在回答两个不同的问题。 一个问的是”这笔投资涨了多少”,另一个问的是”我实际投进去的每一分钱、按它待的天数算,滚得有多快”。这两个问题的答案本来就不该相等。

我碰到过不止一位读者拿着截图来问:“我明明账户是赚钱的,为什么XIRR算出来是负的?“或者反过来:“我总共才赚8%,XIRR怎么给我算出15%,是不是虚高了?“这两种情况都不是bug,背后各有一套很清晰的道理。搞明白之后,你不但能看懂这个数字,还能顺带看穿很多收益宣传里的把戏。

你心里那个数字,通常是这三个之一

在往下讲之前,得先把常被混为一谈的几个口径分清楚。绝大多数”和XIRR对不上”的困惑,都是拿下面某一个去跟XIRR比较。

第一个是持有收益率,也叫累计收益率,就是”现在的市值加上已经落袋的钱,比总投入多了百分之几”。它完全不管时间。你赚18%,可能花了八个月,也可能花了八年,这个字段一视同仁。

第二个是总收益率除以持有年数。这是最多人手动估算年化的方式,只有在”一次性投入、中途不动”的情况下才勉强能用,而且严格说它算的是单利、忽略了复利效应。只要你分批买过、加过仓,它的前提就塌了。

第三个是产品页面上的”成立以来年化”。它算的是一个假想持有人:从产品成立那天一次性买入,一直拿到今天。这个人不是你。你什么时候进场、进场之后又追加了多少,它一概不知道。

XIRR跟这三个都不一样。它做的事情是:把你每一笔真实发生的现金流,连同各自的日期一起摆出来,反推一个年化利率,使得这些现金流按这个利率折算之后正好抵平。换句话说,它给你投进去的每一分钱按”站岗天数”记工分,站得久的钱权重大,刚进场没几天的钱权重小。关于XIRR本身怎么填、怎么用,我在你的基金真实年化是多少那篇里讲过基本操作,这篇专门讲”为什么结果反直觉”。

情况一:赚的钱不多,XIRR却很高

这是定投的人最常遇到的疑惑。

举个假设的例子(仅为示例,不代表任何真实产品):你每月月初投入1000元,连续投12个月,一共投入12000元;一年后账户市值13000元。你一算总收益率,(13000−12000)÷12000≈8.3%,心想也就那样。可XIRR算出来可能在15%上下。

差距从哪来的?因为这12000元并不是同一天进去的。第一笔1000元站了整整12个月,最后一笔1000元才站了不到一个月,全部12笔平均下来大约只站了半年多。你是用”平均半年多的时间”赚到了8.3%,折算成整年自然会明显高于8.3%。 XIRR算的就是这个折算后的速度,它没虚高,只是把”钱实际待了多久”考虑进去了。

同样的道理,也解释了为什么短周期的XIRR会显得夸张。假设你持有20天赚了2%(仅为示例),按365天折算,年化大约是1.02^(365÷20)−1,四十几个百分点。这个数字数学上没错,但它的含义是”如果这个速度能一直保持整整一年”——而这恰恰是最不该默认的假设。持有期越短,年化的放大倍数越离谱,参考价值越低。 我的经验是,持有不满一年的XIRR,看看就好,别拿去做任何长期判断。

情况二:账面一直在涨,XIRR却难看甚至为负

这种情况更反直觉,也更值得警惕,它揭示的是”资金加权”和”时间加权”的根本分歧。

再举个假设例子(仅为示例):第一年年初你投入1万元,这一年涨了50%,年底变成1.5万元,你很高兴,于是第二年年初追加了50万元。结果第二年跌了10%。年末市值是(1.5+50)×0.9≈46.35万元,而你总共投入了51万元,实实在在亏了4万多。

可如果只看”产品的表现”,两年一个+50%、一个−10%,年均还是正的。你的XIRR却会是个负数。这两个数字都对,因为它们回答的问题不同:产品的时间加权收益率衡量的是”标的本身涨得怎么样”,跟你何时投多少钱无关;XIRR衡量的是”你这个人的钱赚得怎么样”,它老老实实反映了你在小仓位时吃到了涨、在大仓位时吃到了跌。

这也是行业里评价基金经理用时间加权收益率、而评价投资者自己的账户用XIRR的原因——基金经理管不了你什么时候申购赎回,但你自己的加仓节奏,是你自己的责任。很多人常年跑输自己买的基金,差额基本就出在这里:追高加大仓位、下跌时缩手甚至赎回。XIRR会把这笔账毫不留情地摊在你面前,这恰恰是它最有价值的地方。

情况三:数字不对,其实是填错了

排除掉上面两类”正常的不一样”,剩下的差异往往是录入问题。常见的有这么几种:

  • 正负号搞反。 投入(申购、买入、转入)填负数,收回(赎回、卖出、到手的分红,以及”现在还没卖、按当前市值计”的那一笔)填正数。符号反了,结果会离谱到自己都不信。
  • 忘了填最后那笔市值。 还没卖出的部分,必须以今天的日期、当前市值填一笔正数,否则工具会以为这笔钱有去无回。
  • 日期用了确认日还是扣款日不统一。 场外基金申购通常是T日提交、T+1确认份额,赎回到账更晚。日期偏一两天对长周期影响很小,但对只持有一两个月的账户,影响不能忽略。统一用”钱实际离开或到达你银行卡的那天”是最不容易乱的做法。
  • 现金分红重复计或漏计。 选了红利再投资的,钱没出账户,不用额外录;分红打到卡里的,必须按到账日填一笔正数。
  • 费用口径不统一。 如果你填的是”实际从卡里扣走的金额”,申购费就已经含在里面了;如果填的是确认的净申购额,那这部分费用就没被算进成本,XIRR会偏乐观。赎回费、可能涉及的税费同理。

把这几条对着自己的记录核一遍,多数”数字诡异”的问题就消失了。想边核边算,直接用XIRR真实年化计算器把现金流一条条填进去,改一条看一次结果,比闷头推公式直观得多。

XIRR也有它算不了的事

得说清楚它的边界,否则容易走向另一个极端——把XIRR当成唯一标准。

它不衡量风险。 两个账户XIRR都是8%,一个是全程平稳走过来的,一个是中间腰斩过又涨回来的,在XIRR眼里没有区别。收益率数字永远回答不了”这个过程你扛不扛得住”。

它对未来没有预测力。 XIRR是对已发生现金流的总结,不是对未来的承诺。过去三年的XIRR不代表未来三年会重复,任何把历史年化直接外推的说法都该打问号。

极端现金流下解可能不唯一。 当现金流的正负号来回切换很多次(频繁大额进出、中途清仓又重新建仓),数学上的内部收益率可能存在多个解,不同工具给出的结果甚至会不同。遇到这种账户,更稳妥的做法是分段算——比如按清仓的那个节点切成两段,各自算各自的。

不同人算的XIRR不能直接比高低。 你的XIRR只对你自己的现金流负责。两个人拿同一只产品,进场节奏不同,XIRR天差地别,这不说明谁更”会挑产品”,只说明节奏不同。

小结

XIRR和你心里那个收益率对不上,大多数时候不是谁算错了,而是口径不同:持有收益率不看时间,产品年化不看你,XIRR只看你实际投进去的每一分钱待了多少天。定投的人容易算出”比总收益率高”的XIRR,那是时间被折算了;越涨越加仓的人容易算出”比产品表现差”的XIRR,那是你自己的节奏被记了账。真正需要动手排查的,是正负号、市值那一笔、日期口径和费用这几个录入细节。把这些理顺之后,XIRR会成为你账户里最诚实的一面镜子——它不夸你,也不哄你,就把每一分钱的实际效率摆出来给你看。至于看完之后怎么改进节奏,那是另一件需要慢慢练的事了。


本文为投资教育内容,不构成任何投资建议。投资有风险,决策需谨慎。