最早开始思考这个问题应该是在一年多前,突然发现自己不知道这些年的投资回报到底是多少,觉得这个问题非常严重。开始搜索了相关资料,发现这个看似非常简单的问题,其实一点也不简单;总结了下至少能到找到两种不同的方式计算投资收益率,但发现两种都有不同程度的问题,我举两个特例来说明下问题:
第一种时间加权法(Time Weighted)
这个方法也叫基金净值法,将投资区间分成若干段,每段之间不考虑现金出入,这样每一段都可以用简单收益率法计算其收益率。时间加权收益率 = (1 + 各段收益率)的连乘 - 1。
先假设一下小李的投资记录:
三年过去了,小李的投资记录到底如何?
可以用先公式简单算下
也可以通过跟踪基金净值的方式得到
三年后基金的净值从1.0涨到了1.57,年化跟公式计算一样差不多就在16.3%。
年化收益16.3%看着挺好,但如果我们仔细看下账目,三年总共投入了1000,但最后只剩下945,这不是明明亏损了吗?怎么还能算出这么好的收益?这里其实已经体现出了这个算法的问题,它并不考虑基金启动后资金的流出流入所造成的投资人的盈亏,所以它只适合对那些管理基金的经理人,因为资金的流出流入并不受他的控制,但不能因为投资者自己在申购和赎回的时机点上出现的问题,影响基金经理的收益率,他只对流入后的资金负责。所以总体来说时间加权法(基金净值法)也不太适合作为个人投资者用来衡量投资收益。
第二种金钱加权法(Money Weighted)
金钱加权法本质上就是内部收益率法(即IRR)。将初始投入视为现金流入(大于0),期末资产视为现金流出(小于0),那么金钱加权收益率即是使得现金流的全部折现后加总等于0的折现率,主要是将金钱的时间价值包含在内。简单使用EXCEL的IRR函数计算就可以了。
继续假设小李的投资记录:
假设小李在14年年初在股市投入50W,在牛市中第二年资产变成150W,取出110W;随后在15年熊市中经历了大跌,资产缩水只剩下10W;在16年初追加投入50W,又经历了一年亏损;到17年年初时资产只剩下20W。使用EXCEL进行一下计算:
发现这三年的年化收益居然有76%,感觉好像哪里不太对路,简单看下这三年总共投入100,产出130,这年化76%怎么看怎么都觉得挺自欺欺人的。这里最重要的点其实就是在高位取出的这110,这个110因为是以50为成本进行计算的,所以对整个平均年化收益的贡献很大;但同时这也是问题所在,短期爆发的高收益并不能持续,取出的这110之后很难再持续获得之前那么高的收益率了,但这个算法并不会考虑这种问题,只会简单地试图用一个平均化内部收益率来使折现后的现金流相匹配,所以其结果自然就容易发生扭曲,造成错觉。在没有太多不对称性出现的时期使用还是可以的,但现实世界充满了不对称性,正所谓三年不开市,开市吃三年。
其实这两组数据还隐含地体现了一个非常重要的点,那就是投资中择时的重要性。一个投资标的好不好,或者有没有前景,跟你能不能从中赚到钱那真的是两回事。
复式记账( double-entry bookkeeping)
既然这两种方法都存在问题,那投资收益率该如何计算呢?慢慢我发现其实投资收益率可能本身真没什么意义,因为计算模型本身只是在试图模拟现实,它并不是现实,既然公式并不能很好的匹配现实,那就开始跟踪现实吧;也就是跟踪净资产规模的变化来判断自己过去的决策,还可以做其它分析,更适合回顾自己的决策。那自然就发现要用到会计的内容了,因为会计就是用来跟踪商业活动的,会计使用的语言就是复式记账(double-entry bookkeeping);这里我更喜欢把它称之为一种语言,后来我慢慢发现学习大多数知识的过程,其实要么是在学一种语言,要么就是在学这种言语的历史。具体记账的方式可以简单的使用Excel或者Google文档的表格就可以了。
会计中一条最基本的等式:
资产 = 负债 + 所有者权益
这个等式还可以扩展一下:
资产 + 费用 = 负债 + 所有者权益 + 收入
篇幅有限我并不想写很多复式计账的细节,这些细节可以百度Google,但最重要的还是自己在实际操作过程中的体验和理解,我主要想梳理下其中主要的逻辑脉络,大概有三个重点:
- 账户分类
首先需要对相应的资产,负债,所有者权益这些总账户进行细分,再分类出各个需要的子账户,自己记账可以很灵活,账户的分类和命名可以自己灵活安排;当然如果专业点的话可以按照会计准则中的会计科目表来分类账户。但我还是选择简单自由些,由于是自己的账,所有者权益可以直接忽略掉,剩下的资产和负债在账户分类时遵循一些简单的规范,如资产类账户按流动性逐渐变差来排序,负债类按应付周期从短期到长期来排序,如图:
- 日志账本
日志账本记录的就是平时发生的资金变动,买入什么,卖出什么,还有什么收入等等;其实就是每次发生资金变动,就记录一个条目,指明资金从哪个账户流动到哪个账户,并且数额必须是对称的(所以才叫复式记账),日志账本也是平时操作的最多的了。自己记账有一个好处就是记录条目的颗粒度可以非常灵活;由于我主要用于记录投资活动,所以其它无关紧要的变动的记录颗粒度可以很粗,比如平时消费可以在月底对账时将差额全部补记为一笔日常消费就可以了。
日志示例 账户间资金流动
- 报表生成
定期核对各个账户账本,这个也很简单,在平时记录的日志账本中简单的使用下Excel的筛选功能,就可以很轻松的筛选出一段时间内特定账户的出入账,这样就可以汇总到上该账户上期的余额中。最后可以生成资产负债表,损益表等。
其实复式记账系统很像一个状态机系统,日志账本就是记录一段时间段内发生的资金变动条目,每过一段时间再汇总形成报表;用计算机术语来说就是一段时间内发生的事件,这些事件在这段时间的累积使系统演变到了另一个状态,就像是状态机状态的迁移。在这里报表就只是某个时间点企业的一个状态快照(snapshot),所以光从报表对一个企业进行分析其实是很不足的,缺失了变迁过程的很多细节。
我不是账务出身,可能有些地方并没有那么严格地遵循标准,但这可能也是一种好处,我可以更灵活处理,我只需要对自己的账目负责,不需要受到很多行业标准束缚,这些对我来说都只是工具而已。
网友评论