Py学习  »  Python

每年都买排名前十的明星基金,长期是赚是赔?Python告诉你答案【邢不行】

邢不行 • 2 年前 • 256 次点击  

这是邢不行第 82 期量化小讲堂的分享

作者 | 邢不行、密斯锌硒



很多人买基金,都喜欢买历史表现优异明星基金;基金销售推荐产品时,也喜欢拿明星基金的历史业绩作为推销资本。因为大家都默认历史业绩好就代表基金经理有能力,以后也能持续盈利


但事实真的是这样吗?一切还得以数据说话。本文会用Python对基金历史数据进行分析,来解答这个问题:明星基金的业绩到底能不能持续?



01

明星基金


说到明星基金,很多人第一反应可能是“X方达蓝筹精选”。而它的执掌者,正是A股首位千亿级别的基金经理,被称为公募一哥的张坤。


“公募一哥”张坤


2020年,张坤凭借95%的超高收益率得到了大量基民喜爱,在网络上爆火。


最火的时候,甚至一些游戏直播间的弹幕里都有很多人在讨论他。


但到了2021年,原本把张坤吹上天的网友们这次却狠狠把他踩下了地


“跌妈不认”菜坤


因为截至21年9月30日,张坤的收益率只有-10%,甚至都没有跑赢大盘,排名也是相当靠后(1503/1581)。


无独有偶,还有很多在2020年排名靠前的明星基金经理在21年都表现得不尽如人意,收益普遍拉胯


数据来源:天天基金网


这不禁令人困惑,到底上述现象只是特例,还是说所有明星基金都会这样?


只有2020年的明星基金在次年表现不行,还是每年明星基金的次年表现都拉胯?



这样的好奇心是必不可少的,很多时候一些优秀的量化交易策略也来源于此。


接下来我们就收集所有基金的收益数据,用Python编程去处理,看看每年的明星基金次年表现如何。


甚至可以构建一个组合,每年买入排名前十的基金并持有一年,看看一直这样下去能赚多少钱。



02

明星基金次年排名


我们先看每年前十基金的次年排名


首先获取基金的收益率数据,我已经为大家准备好了:


需要数据可以加我微信xbx719获取


如上图所示,每一行就是一只基金08年至今每年的收益率。


这个数据获取难度较大,我也是通过一些专业渠道搞定的。大家如果需要的话可以加我微信xbx719,我直接发给你。


1

举例说明

有数据后我们就以2008年为例,计算当年前十基金的次年排名。


先把所有基金按照08年的收益率从大到小排列并取前十:


2008年排名前十基金次年排名情况


大家不必诧异为何上图中2008年排名第一的基金收益为负。在08年股灾中上证指数从6000多点跌到1600多点,而只亏了3个点的基金自然有排名第一的资格。


但好景不长,08年排名第一的基金到了09年就排在了304只基金的末尾。而其他08年排名靠前的基金在09年的排名也相当靠后


接着我们计算出这十只基金在09年平均排名293位,在全部304只基金中排名百分比是96%(293÷304=96%),表现相当不好


2

次年排名情况

处理完2008年的数据,我们可以用同样的方法,得到09至今前十基金的次年排名百分比


虽然EXCEL也能完成这一步,但相对繁琐,所以我们用Python编程来计算结果。


数据、代码可以加我微信xbx719获取


下图就是Python运行的结果,可以看到2009、2011、2019及2020年前十的基金次年排名较前。


明星基金次年平均排名较好年份


但2008、2014及2018年前十基金的次年排名就相当靠后,都在倒数10%以内。


明星金次年平均排名较差年份


我们再整体看这张图,可以发现每年排前十的基金普遍次年表现不佳,次年排名能进前50%就已经很好了。


当然,仅看排名还不够直接,我们再来看前十基金次年的收益情况如何。



03

次年收益


1

举例说明

我们同样以2008年为例。


先取出08年排名前十的基金,计算其09年的平均收益率,如下图所示:



很多人会觉得能赚到30%就已经很好了,虽然09年排名很靠后,但这个收益毕竟能满足大部分人。


2

明星基金次年收益

接下来我们照例通过Python编程计算其他年份排名前十基金的次年平均收益率。


数据、代码可以加我微信xbx719获取


可以看到2013、2019及2020年前十基金的次年收益都相当不错,超过了20%。


明星金次年平均收益率较好年份


而2010、2015及2017年的前十基金次年都大幅亏损。


除此之外,其余年份前十基金的次年收益都比较少。


明星金次年平均收益率较差年份


至此就讨论完了基金的绝对收益率。但我们都知道一般评价基金表现,更多是看相对收益的。


3

明星基金相对收益

所谓相对收益就是拿基金收益与同期大盘涨跌幅比较,也就是俗称的跑赢或跑输大盘多少。


2010年基金与同期大盘对比


比如2010年前十基金的次年平均收益率虽然只有-25%,但同期大盘下跌26%,对比下来还跑赢了大盘1%。


我们依次计算出每年前十基金的次年相对收益表现,具体如下:


当年前十基金次年表现统计


将表格转化为柱状图会更加直观:


每年前十基金次年相对收益率


可以看出最惨烈的是2008年,次年收益跑输了大盘64%。


在过去13年中每年前十基金在次年总共跑赢了大盘7次,跑输了6次,总体来说情况五五开。



04

前十基金策略


理解了前十基金的次年收益表现后,我们可以尝试构建一个交易策略:


每年末买入当年排名前十的基金,持有一年后再根据新排名调仓。


最后计算持有它们的累计收益率,看看到底能赚多少钱。



鉴于这个策略的计算比较复杂,我们依然用Python编程来实现,需要相关的代码和数据可以加我微信xbx719免费获取。


需要代码可以加我微信xbx719获取


1

回测结果

回测结果如下:


回测结果


蓝线代表了我们前十基金组合。假设在2009年初始投入1元买入该组合,经过这么多年的辗转反侧,最终变为2.12元,本金翻了一倍。


黄色曲线是同期沪深300指数,大概翻了1.5倍。


很明显前十基金的投资组合并未跑赢沪深300指数,可以说表现真的非常不好。


所以今后基金销售给你推荐过去表现非常好的基金时一定要慎重,因为它们之后的表现往往会不尽如人意。



并且这个结论在专业的圈子里面算是路人皆知的。


比如在美国,当有一个基金今年表现极好的时候,它面临的并不是接踵而来的投资者或基金规模暴涨,反而可能是赎回


因为很多专业的投资者都知道,当年表现好的基金在次年可能会拉垮。


2

原因追溯

如果更深入的去研究的话,其实当年排名靠前的基金次年表现不佳也是有相应理论支撑的。


比较重要的一个原因是市场风格会不断转换。比如去年蓝筹股表现不错,今年则可能是中小盘股崛起。基金经理很难在市场风格的突变中连续踩对赛道


另外一个原因就是基金的规模扩充。去年表现好的基金会吸引很多新投资者涌入。而基金规模的扩大则会提高获取收益率的难度。



另外,公募基金很多时候追求的是规模而非收益。基金帮你赚再多的钱也无法从中分成,反而规模越大基金赚取的管理费越多。


这种环境下,明星基金或排名靠前的基金其实也只是基金公司扩充规模的工具罢了。


其他原因就不一一列举了。总之以后再遇到推销明星基金的,一定要慎之又慎



05

后记


有同学就会问,明星基金不适合购买,那什么基金适合呢?这时我们还是要做相应的研究。


比如可以试试排名后十或前10%的基金它在第二年的表现会怎样。


或者从基金经理的角度出发,只看过去一年的收益排名是否客观?延长到3年或5年又会如何。


另外我们也可以观察不同规模下排名前十的基金次年表现如何。



上述的这些问题,都是很不错的探究基金的方向。大家拿到数据和代码后可以自己把玩一番,选择感兴趣的角度进行研究,用 Python编程来验证。也可以加我微信xbx719与我一起讨论。


如果本期文章超过100点赞,我们很快就再写一篇文章来讲解更多选基金的好思路。


归根到底一句话,我们用数据说话。



联系作者


往期文章推荐


神秘指标一出现,市场立马就变天 | 用Python计算成交量集中度(附代码)【邢不行】

Python量化避雷指南:一直买负债最多的公司,会亏成啥样?【邢不行】

用Python量化定义MACD,找出A股全部12万次顶底背离,胜率究竟有多少?附代码【邢不行】

从零编写60%+胜率的短线择时信号!零基础python量化投资代码详解【邢不行】

邢不行 | 妙用北向资金找出大盘买点、卖点,跟着操作6年4倍【附代码】

常见量化投资误区合集,量化交易新手脱坑指南 | 邢不行

期权骚操作:逃顶比特币,还能额外赚【比特币逃顶系列1】

邢不行 | Python量化 + 数字货币 + 轮动 = 4年1000倍【附代码】

抱团股会一直涨?无脑执行大小盘轮动策略,轻松跑赢指数5倍【附Python代码】

BTC涨这么多,还能买吗?要卖吗?| 量化定投策略告诉你答案【附代码】

【交易回顾】没用Python做量化回测,少赚100w | 股指期货妙用案例

听说MACD是技术指标之王?我们用Python来验验成色

复权不复权,天差与地别 | 量化投资中如何最准确的计算股票前后复权价(附代码)


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/126449
 
256 次点击