Adjusted price for total return calculation (2)

来源: slow_quick 2024-01-18 13:35:52 [] [博客] [旧帖] [给我悄悄话] 本文已被阅读: 次 (5948 bytes)
本文内容已被 [ slow_quick ] 在 2024-01-18 19:19:02 编辑过。如有问题,请报告版主或论坛管理删除.

Adjusted price for total return calculation (2)

前几天啰啰嗦嗦写了几篇,其实主要是想让大家自己用实际数据去钻研。回贴时玩笑话得罪了anne8网友,还请见谅。

这篇是前一篇的续集,主要公式njrookie网友都已经提供,但我再啰嗦几句。 金融证券的投资回报率要不要包括分红大家都说要。但要不要包括分红再投资的盈亏anne8网友与其他网友有分歧,这个很正常,没有对错。有些人不想把分红再投资,算起来就不一样。但金融业特别是基金管理行业要考虑漂亮的业绩,所以业界标准都要考虑分红再投资。我这里只讲考虑分红+分红再投资的回报,与anne8网友的算法有分歧请理解。

如果某个金融证券有每日收盘价\(P(t)\),那么在没有分红的情况下,每天的total return非常简单,就是 \(P(t)/P(t-1)\),而在某个时间段 \(0 \text{ to } n\) 的 total return,俗话说复利或英文 compounding,就是: \[ [P(1)/P(0)] \times [P(2)/P(1)] \times \cdots \times [P(n)/P(n-1)] = P(n)/P(0) \] 从这个例子我们看到,只要有准确的每天 total return,没有疑问乘起来就是阶段 total return。

当某个金融证券有分红时,要考虑分红再投资,那么什么时候分的红、用什么价钱再投资就成了非常关键的事情。Yahoo Finance 用的算法,njrookie网友说是 textbook 101 中的 continuous reinvestment,7天24小时不间断的那种市场。如果分红发生在时间 \(t\),分红前瞬间股价是 \(P(t)\),分红量是 \(D(t)\),分红后瞬间股价就是 \(P(t+)=P(t)-D(t)\),然后立即就把分红 \(D(t)\)用这个新股价再投资了。如果原来有1股,那么新增加的股数就是 \(D(t)/P(t+)\),总股数是 \[ 1 + \frac{D(t)}{P(t+)} = 1 + \frac{D(t)}{P(t)-D(t)} = \frac{P(t)}{P(t)-D(t)} \] 分红前的1股经过分红然后瞬间再投资就变成了 \(P(t)/[P(t)-D(t)]\) 股。反过来也可以说,分红后的1股是从分红前的 \([P(t)-D(t)]/P(t)\) 股经分红再投资变来的。这个公式不是别的,就是 Yahoo Fiance 上说的 Dividend Multiplier: \[ \text{Dividend Multiplier} = 1 - \frac{D(t)}{P(t)} \] 当然了股市每天下午4点关门,我们并没有连续市场。但我们依然能计算每天的 total return: \(t+1\) 那天收盘时的1股,是前一天 \(t\) 收盘时(尚未分红)\(1-D(t)/P(t)\)股变来的,所以 total return 就是: \[ \frac{1 \times P(t+1)}{[1-D(t)/P(t)] \times P(t)} \] 这个公式的分母正是 Yahoo Finance 里面的 Adjusted Closing Price。对最近的 dividend event,很简单 Adjusted Closing Price = \(P(t) - D(t)\)。

Yahoo Finance 计算 Adjusted Closing Price 时每天都有个当天的 multiplier (both divedends and splits),没有什么事件那个 multiplier 就是1, 否则不是1。这个每天的 multiplier 往回逐项相乘就得到了历史上某一天用到的 cumulative multiplier,这个 cumulative multipler 的经济意义就是: 现在的一股是过去多少股变过来的 。Adjusted Closing Price = Cumulative Multiplier \(\times\) (Unadjusted) Closing Price。这样一来我们计算阶段 total return 就不用翻旧账,直接把两个时间点的 Adjusted Closing Price 相除就行了。

Yahoo Finance 用了教课书上的 continuous reinvestment,这个太学术化。金融业标准稍微有些两样,用的是njrookie网友说的算法: \[ \text{Dividend Multiplier} = \frac{P(t+1)}{P(t+1)+D(t)} \] 这里时间点 \(t+1\) 是 ex-div date。这个公式没有学术气,很简单,你前一天的1股变成了 \(1+D(t)/P(t+1) \) 股,或者反过来说前一天的 \(P(t+1)/[P(t+1)+D(t)]\) 股变成了现在的1股。虽然我不敢100%打包票,这个公式用到 Open End Muutual Fund distribution reinvestment 还是非常符合实际情况的。我这里留个作业,希望好学的网友把你共同基金的 transaction history 打开看看,如果你选了 distribution reinvest,那个 reinvestment 发生在哪一天,是什么价钱。

Yahoo Finance 做的 Adjusted Closing Price 与金融业界用的标准绝大多数情况下差别非常小,这个njrookie网友已经提到。如果 Yahoo Finance 有完整的数据,它家的 Adjusted Closing Price 用于计算 total return 应该还是可以的。其他的网站怎么计算我不太清楚。我现在还在公司上班,我们用Bloomberg数据,据说每年两万多,自己买有些心疼。我下一篇会讲什么情况下这些标准计算会夸大 total return。

Ref: njrookie: How to calculate adj price on ex div day

【顺便提一句,Yahoo Finance上的股价都是已经 split-adjusted,那个 adj. closing 是进一步 dividend adjusted。】

【很可惜,Yahoo Finance 的数据质量不过硬,已经有网友指出 VFIAX(Vanguard 500 Index Fund Admiral Shares)的红利数据缺失,我也能证实。不知退休后还能用谁家高质量免费数据】

【我试了一下 https://dqydj.com/mutual-fund-return-calculator/ (硅谷居士推荐的网站),至少 VFIAX 最近一次红利再投资是对的(match Bloomberg),Yahoo Finance 不对,红利数据缺失】

 

所有跟帖: 

赞你认真,数学牛逼。每一笔分红再投资,你这样确实精确,就是太麻烦了。我都是根据excel 公式算个大概。 -bobpainting- 给 bobpainting 发送悄悄话 (0 bytes) () 01/18/2024 postreply 13:52:34

谢谢谬赞!其实我不怎么计算,都是哪里有拿来就用 -slow_quick- 给 slow_quick 发送悄悄话 slow_quick 的博客首页 (0 bytes) () 01/18/2024 postreply 14:50:35

糊糊涂涂就行了,放眼大picture -品酒- 给 品酒 发送悄悄话 (197 bytes) () 01/18/2024 postreply 13:56:43

就是應該搞明白啊,搞明白細節並不代表沒有大局觀。如果所有的細節都糊里糊塗的,最終的結果肯定是打了折扣的 -samma1- 给 samma1 发送悄悄话 (0 bytes) () 01/18/2024 postreply 14:27:53

这个要赞一下。有理有据,追根求源,精神可嘉 -Runnymede- 给 Runnymede 发送悄悄话 (0 bytes) () 01/18/2024 postreply 14:00:55

感謝分享,非常專業,讚! -samma1- 给 samma1 发送悄悄话 (0 bytes) () 01/18/2024 postreply 14:25:36

可以有分红不再投资,估计很多人因此而大幅降低回报;或compounding 分红股再分红,可 -悠步天- 给 悠步天 发送悄悄话 (206 bytes) () 01/18/2024 postreply 14:30:09

要是碰到老是下跌的东东,分红还是拿去吃顿小笼包更合适,哈哈 -slow_quick- 给 slow_quick 发送悄悄话 slow_quick 的博客首页 (0 bytes) () 01/18/2024 postreply 20:01:10

和稀泥打哈哈 -悠步天- 给 悠步天 发送悄悄话 (0 bytes) () 01/18/2024 postreply 21:00:56

赞专业精神!楼主将来退休以后大概也用不着Bloomberg了。 -鲤鱼洲- 给 鲤鱼洲 发送悄悄话 鲤鱼洲 的博客首页 (0 bytes) () 01/18/2024 postreply 14:48:25

现在太依赖它了 -slow_quick- 给 slow_quick 发送悄悄话 slow_quick 的博客首页 (0 bytes) () 01/18/2024 postreply 14:49:14

赞! -yuanshangdu- 给 yuanshangdu 发送悄悄话 yuanshangdu 的博客首页 (0 bytes) () 01/18/2024 postreply 15:12:42

赞认真, 更赞大气的提到anne8 , 期待"讲什么情况下这些标准计算会夸大 total return" -Wendy666- 给 Wendy666 发送悄悄话 (0 bytes) () 01/18/2024 postreply 15:27:23

请您先登陆,再发跟帖!

发现Adblock插件

如要继续浏览
请支持本站 请务必在本站关闭Adblock

关闭Adblock后 请点击

请参考如何关闭Adblock

安装Adblock plus用户请点击浏览器图标
选择“Disable on www.wenxuecity.com”

安装Adblock用户请点击图标
选择“don't run on pages on this domain”