一笔买入、一笔卖出#
前段时间把基金从业资格考试的两门科目考完了。准备的过程里,我第一次完整地看到"收益率"这个词下面的各种定义,也发现过去自己对它的把握只有一句话:赚到的钱除以本金。
这句话不算错。100 元买入,110 元卖出,收益率 10%,简单直接。但只要有时间加入进来,或者中间多出几笔钱进进出出,同一段投资经历能算出来的数字就不止一个。考完之后我不想只留下一张证,所以借着这几周把每个口径重新推了一遍:它们各自在回答什么问题,什么时候可以互相替代,什么时候不能。
先看最简单的场景。用 100 元买入一项资产,后来以 110 元卖出。中间没有分红,没有手续费,也没有税。赚到的钱是 110 − 100 = 10 元,相对于投入的 100 元,简单收益率是
$$ r = \frac{P_1 - P_0}{P_0} $$\( P_0 \) 是买入价格,也就是期初投入的本金;\( P_1 \) 是卖出价格,也就是期末收回的金额;\( r \) 是这一段持有期里的简单收益率。代入数字,\( r = 10 / 100 = 10\% \)。
这个定义之所以自然,是因为基准只有一个:期初投进去的那 100 元。只要还是一笔进、一笔出,“赚的钱除以本金"和上面的公式说的是同一件事,怎么算都不会有歧义。让我开始觉得不对劲的,是把它用到第二期的时候。
+50% 再 -50%:加法为什么失效#
一个自然的问题:如果第一年涨 50%,第二年跌 50%,是不是刚好回到原点?我第一反应是"涨跌抵消,不赚不亏”。把数字摆出来就不对了。
- 第一年:100 元涨 50%,变成 150 元。
- 第二年:150 元跌 50%,变成 75 元。
最终不是 100,是 75,亏了 25%。
两个 50% 都没有算错,错的是把它们加在一起。第一年的 50%,基准是 100,涨的是 50 元;第二年的 50%,基准已经是 150,跌的是 75 元。百分比变化永远作用在当前的本金上,而本金在变。所以跨期收益只能一期一期乘起来:
$$ 100 \times (1 + 0.5) \times (1 - 0.5) = 75 $$一般地,n 期的累计收益率是
$$ R = \prod_{t=1}^{n} (1 + r_t) - 1 $$\( r_t \) 是第 t 期的收益率;连乘里的每一项 \( 1 + r_t \) 是那一期的增长因子;\( R \) 是整段持有期的累计收益率。百分比变化作用在会变的基准上,所以跨期收益天然是乘法问题,不是加法问题。
还有一个方向要记住:从 75 回到 100,需要上涨 \( 100 / 75 - 1 \approx 33.3\% \),而不是 25%。跌下去容易,涨回来难。
算术平均与几何平均#
既然两期的收益不能相加,那"平均每年赚多少"该怎么算?这里开始出现两个都叫"平均收益率"的东西。
算术平均把每期的收益率当成普通数字求平均:
$$ \bar{r}_A = \frac{1}{T} \sum_{t=1}^{T} r_t $$几何平均先做连乘,再开 T 次方:
$$ \bar{r}_G = \left( \prod_{t=1}^{T} (1 + r_t) \right)^{1/T} - 1 $$两个公式长得像,回答的问题不一样:
- 算术平均回答的是"随机抽一个时期,这个时期的平均收益是多少",适合描述单期收益的平均水平。
- 几何平均回答的是"资金沿完整路径走下去,每一期等效增长了多少",它直接对应最终财富。
拿 +50%、-50% 这个例子验证。算术平均是 \( (0.5 + (-0.5)) / 2 = 0\% \);但资金实际从 100 变成了 75,明显不是"不赚不亏"。几何平均是
$$ \sqrt{1.5 \times 0.5} - 1 = \sqrt{0.75} - 1 \approx -13.4\% $$反代回去,\( 100 \times (1 - 0.134)^2 \approx 75 \),和最终财富对上了。
两个平均的差距有个名字,叫波动拖累(volatility drag):收益的波动本身会拖慢复利增长。同样的涨跌幅,先跌后涨和先涨后跌,最终财富一样,但都低于按算术平均算出来的结果。跌 50% 要涨 100% 才能回本,就像一件 100 元的商品打对折到 50 元,再想回到 100 元,需要涨的不是 50%,而是 100%。低波动时可以用近似
$$ \bar{r}_G \approx \bar{r}_A - \frac{1}{2} \sigma^2 $$\( \sigma^2 \) 是各期收益率的方差,\( \sigma^2 / 2 \) 是拖累项。在这个例子里,方差是 \( (0.5^2 + (-0.5)^2) / 2 = 0.25 \),近似给出 \( -12.5\% \),和真实值 -13.4% 方向一致但数值有偏差。这是低波动下的近似,波动越大,偏差越大。
| 算术平均 | 几何平均 | |
|---|---|---|
| 回答的问题 | 随机抽一期,平均收益是多少 | 资金走完整个路径,每期等效增长多少 |
| 计算方式 | 各期收益率求和再除以期数 | 各期增长因子连乘再开期数次方 |
| +50%、-50% 的结果 | 0% | -13.4% |
| 与最终财富的关系 | 不直接对应 | 直接对应 |
看完这两个定义我才意识到,很多关于"平均收益"的争论,双方可能各说各的:一个在说某类时期有多好,一个在说长期复合下来有多好。数字都没算错,只是回答的问题不同。
复利、累计收益与年化#
上一节的连乘里已经藏着复利:第二年的涨跌作用在上一期结束后的本金上,而不是最初的本金。每一期的收益都会改变下一期开始计息时的本金,这就是复利。
如果持有两年,第一年收益 \( r_1 \),第二年收益 \( r_2 \),累计收益率是
$$ R = (1 + r_1)(1 + r_2) - 1 $$假设两年累计赚了 21%,也就是 \( R = 21\% \)。很多人(包括之前的我)会顺手除以 2,说年化 10.5%。但正确的年均复合增长是 10%,因为 \( 1.1 \times 1.1 = 1.21 \)。差的这 0.5 个百分点,来自第二年的收益也在第一年的收益上继续赚:第一年赚到的 10 元,第二年同样按 10% 增长。除以 2 得到的 10.5% 是线性外推,它假设只有本金在赚钱,忽略了收益本身的再投资。
把这件事写成通用形式,就是年化收益率:
$$ r_{ann} = (1 + R)^{1/T} - 1 $$\( R \) 是 T 期的累计收益率,\( r_{ann} \) 是"如果每期都以同一个速度复合,等效的每期收益率是多少"。指数 \( 1/T \) 就是开 T 次方。代入上面的例子,\( 1.21^{1/2} - 1 = 10\% \)。
这个换算的用处是把不同持有期放到同一时间尺度上比较。但它也容易被用过头。假设某项投资一个月赚了 5%:
- 线性外推:\( 5\% \times 12 = 60\% \)。
- 复利年化:\( 1.05^{12} - 1 \approx 79.6\% \)。
两个"年化"差了将近 20 个百分点,原因只是口径不同。而且它们都建立在一个假设上:接下来 11 个月都能复制这个月的收益。对已经发生的收益来说,累计收益率是事实,年化是这个事实的等效换算;对未来的收益来说,年化只是换算出来的速度,它不代表未来真的能按这个速度持续赚钱。看到"年化收益率"几个字,我现在的第一反应是问:这是哪段时间的收益、用什么口径换算、有没有扣除费用。
现金流进来以后,收益率属于谁#
前面的大前提是:钱只在一开始投入一次,中途不动。现实中更常见的是,投资者中途会追加,会赎回,会有分红。只要现金流的时间点不同,同一段行情在不同人账上就会变成不同的收益率。这里用一个最小的例子把问题摊开。
简化成一笔两年期的投资:
- 第 0 年,投入 100 元。
- 第 1 年,组合涨了 20%,变成 120 元。此时追加投资 100 元,组合规模变成 220 元。
- 第 2 年,市场下跌 10%,组合从 220 元变成 198 元。
投资者总共投入 200 元,期末拿回 198 元,亏了 2 元。
时间加权收益率#
先看组合本身在这两年里表现如何,把追加资金的影响剥离掉。
- 第 1 段:期初 100 元,期末 120 元,区间收益 +20%。这 20% 是资产自己涨出来的,与后面追加多少钱无关。
- 第 2 段:追加之后的规模是 220 元,期末 198 元,区间收益 \( 198 / 220 - 1 = -10\% \)。
两段连乘:
$$ R_{TWR} = (1 + 0.2)(1 - 0.1) - 1 = 8\% $$这就是时间加权收益率(time-weighted return,TWR)。它把持有期按现金流发生的时点切成若干区间,每个区间单独算收益,再连乘起来。追加、赎回这些动作只影响区间的划分和每段的期初规模,不会把"投资者在坏时点加了钱"算成基金经理的成绩。评价基金经理的投资能力,用的通常是这个口径:它回答的是"这台投资机器本身跑得怎么样"。
金额加权收益率与 IRR 的直觉#
现在换成投资者自己的视角:他的钱是什么时候进去的,最后变成了多少?
把三个时点的现金流写出来:第 0 年 -100,第 1 年 -100,第 2 年 +198。要找的收益率 r 满足
$$ \sum_{t=0}^{T} \frac{CF_t}{(1 + r)^t} = 0 $$\( CF_t \) 是第 t 期的现金流,投入为负,收回为正。这个式子的意思是:找一个统一的折现率,把所有现金流折算到第 0 年,让它们正好互相抵消。这个折现率就是内部收益率(internal rate of return,IRR)。代入本例的现金流:
$$ 100(1 + r)^2 + 100(1 + r) = 198 $$解得 \( 1 + r \approx 0.9933 \),即 \( r \approx -0.67\% \)。
同一个投资者、同一只基金,时间加权收益率是 +8%,他自己的资金体验却是每年亏 0.67%。差别全部来自那笔追加资金:它在组合的高点进场,等于把更多本金放在了接下来要下跌的仓位上。第一笔钱其实还是赚的(100 → 120 → 108),第二笔钱亏掉的幅度盖过了它。
时间加权收益率关心机器本身,金额加权收益率关心"我的钱在哪一天进入这台机器"。 两者没有谁更"正确",只是回答不同的问题。
| 时间加权收益率(TWR) | 金额加权收益率(MWR / IRR) | |
|---|---|---|
| 关心的问题 | 投资本身表现如何 | 投资者自己的资金路径赚了多少 |
| 现金流处理 | 按现金流时点切区间,逐段计算再连乘 | 把每笔现金流的金额和时点都代入求解 |
| 现金流时点是否影响结果 | 不影响,时点只决定分段位置 | 影响很大 |
| 典型使用场景 | 评价基金经理、基金净值收益 | 评价个人账户真实收益、比较不同投资计划 |
这也解释了那个常见困惑:为什么基金公布的收益率和持有人自己的收益经常对不上。公布的数字偏向 TWR,持有人拿到的是自己的 MWR。申购时点、追加时点、赎回时点都在投资者这边,它们决定的才是个人账户的真实结果。IRR 不需要展开数值求解的细节,只要记住它在找的是"让所有现金流现值之和归零的折现率"。也正因为如此,现金流金额越大、发生得越早,对它的影响越明显——折现把早期的钱看得更重。
名义收益与实际收益#
账户里的数字增加,不等于能买到的东西变多。
假设一年赚了 5%,同期物价上涨 3%。100 元变成了 105 元,但去年标价 100 元的一篮子商品,今年要 103 元。账户数字涨了 5%,购买力只涨了
$$ r_{real} = \frac{1 + r_{nom}}{1 + \pi} - 1 = \frac{1.05}{1.03} - 1 \approx 1.94\% $$\( r_{nom} \) 是名义收益率,也就是账户上看到的 5%;\( \pi \) 是同期通货膨胀率 3%;\( r_{real} \) 是实际收益率,衡量购买力的变化。1.94% 比 2% 略小,因为价格水平本身也在动,把 105 元折回去年的价格体系要除以 1.03。
很多资料直接写
$$ r_{real} \approx r_{nom} - \pi $$在上面这组数字里给出 2%,和精确值 1.94% 非常接近。这是低通胀、低收益率下的近似:省略掉的交叉项量级很小,本例只差 0.06 个百分点。如果通胀换成 10%、投资还是 5%,精确值变成 \( 1.05 / 1.10 - 1 \approx -4.5\% \),减法近似给出 -5%,误差就不能忽略了——账面在赚钱,购买力实际在缩水。
这里还有一个容易忽略的前提:两边必须用同一段时间、同一个价格口径。如果投资跨越多年,通胀也要用同期的累计变化,不能拿一个"平均通胀率"随手去减。名义收益描述账户数字,实际收益描述购买力,两者只有在口径对齐之后才能放在一起比较。
今天的 100 元和一年后的 100 元#
把上面的东西串起来,最后会落到一个更基本的问题:今天的 100 元和一年后的 100 元,为什么不等价?
我试着列了一下理由:
- 今天的钱可以立刻拿去投资,晚拿到的钱少了一年的机会。
- 未来存在不确定性,一年后是否真能拿到要打折扣,晚拿到的钱承担了更多风险。
- 通货膨胀会侵蚀购买力,同样 100 元在一年后买到的东西更少。
- 等待本身需要补偿,人天然偏好现在就能消费。
这些理由合在一起,就是货币时间价值。反过来推,把未来的一笔钱换算成今天的价值,用的就是贴现率。一年后的 FV 元,按贴现率 r 折算到今天:
$$ PV = \frac{FV}{(1 + r)^n} $$反过来,今天的 PV 元按收益率 r 增长 n 期:
$$ FV = PV \times (1 + r)^n $$用一组数字验证:一年后确定能拿到 105 元,如果要求 5% 的年回报,这笔钱的现值是 \( 105 / 1.05 = 100 \) 元;如果要求 8%,现值只有 \( 105 / 1.08 \approx 97.22 \) 元。同样一笔未来现金流,贴现率越高,今天的价格越低。
贴现率可以理解为"把钱借给时间所要求的补偿",里面同时装着时间、通胀和风险。前面说的 IRR 就是让所有现金流现值之和等于 0 的那个贴现率,只不过它是从现金流反推出来的,而不是事先给定的。
债券定价、估值模型往后都会用到这套框架:把未来的一串现金流,按一个能反映风险和时间的贴现率折算到今天。区别只在于那时的现金流有票息、到期日、违约风险这些具体结构。这篇先把贴现这件事的直觉建立起来,具体资产怎么定价放到后面。
真正值得记住的几件事#
考完之后我试着不看教材,把这几周理过的东西重新讲一遍。如果一年后再看这篇文章,我希望自己还能从下面这几条里恢复出整体框架:
- 百分比变化作用在会变的本金上,所以跨期收益天然是乘法:+50% 再 -50% 得到 75,而不是 100;亏 25% 之后需要赚 33.3% 才回本。
- 算术平均描述单期收益的平均水平,几何平均描述资金沿完整路径的复合增长;收益有波动时两者会分开,波动越大差距越大。
- 复利意味着每一期的收益都在改变下一期的本金;累计收益率是事实,年化收益率是把它换算到一年尺度上的等效速度,不是对未来的承诺。
- 现金流出现之后,“收益率"必须先回答属于谁:TWR 剔除申赎时点、衡量投资本身,MWR / IRR 把每笔钱的金额和时点算进去、衡量投资者的真实体验。
- 名义收益率看账户数字,实际收益率看购买力;低比例下减法够用,比例一高或者跨越多个时期,就要回到 \( (1 + r_{nom}) / (1 + \pi) - 1 \)。
- 今天的钱比未来的钱值钱,贴现率是把未来现金流换算成今天价格的补偿率;IRR 是让所有现金流现值之和归零的那个贴现率。
- 收益率只有在时间区间、复利口径、现金流处理方式都明确之后才有可比性;看到"收益率"三个字,先问它回答的是哪个问题。
收益只描述了投资的一半。同样赚了 10%,过程中是一路平稳还是先腰斩再翻倍,体验和风险完全不同。下一篇从风险写起:波动、回撤,以及为什么需要夏普比率这样的指标把收益和风险放到一起看。