数据分析|爬取14455个基金,千万别被人当成韭菜给割了

砾漠继承
• 阅读 477

2021 年初的几个交易日,基金频繁登上热搜榜,新发行的几个基金也是直接在发行当日就售罄,基金发行市场一片火热。

投资固然没错,但是跟风的背后自己会不会成为一棵嫩韭菜,文中你可能会找到部分答案。

ok,下面直接开始分析过程:

一、基金数据爬取

爬虫部分的核心代码比较简单,今天主要说一下流程就行,基金数据的爬取选择了天天基金网,首页长这样的:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

可以看到,对于基金类型:偏股、股票、混合、债券和指数都分的一清二楚,采集字段的时候将每个基金所有的收益率情况拿下来。

ok,那就直接用官网定的标签去爬,采集上图圈出的数据字段。

第二步就是每个基金的详细持仓情况,看图:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

主要包括基金的成立时间、规模、基金经理以及每个季度的详细持仓情况。

限于篇幅,主要代码如下:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

爬取完成后,数据是这样的:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

**很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:721195303**
 

二、基金数据分析

对于五种类型的基金数据,下面主要对股票型基金和混合型基金做对比分析。首先,股票型基金共 1459 个,混合型基金共 4208 个,后面分析和排序的依据均是针对“近一年收益率”这个指标进行的:

1、收益率分布

1459 个股票型基金中1160个近一年收益率不为空;4208个混合型基金中3060个近一年收益率不为空,针对其进行分析:

  • 股票型基金近一年 收益率>0 的有 1119 个,占比 96.5%;整体近一年平均收益率为 47.8%
  • 混合型基金近一年 收益率>0 的有 3047 个,占比 99.6%;整体近一年平均收益率为 48.9%

如下图:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

再来看下整体的收益率分布情况:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

股票型基金的收益率主要分布在 20%-70% 之间,30%-60% 的居多;混合型基金的收益率主要分布在 10%-80% 之间,除 10%-20% 之外,其他主要区间分布较均匀

因此,混合型基金的收益率较稳定,99.6% 的基金近一年都是盈利的,且整体平均收益率为 48.9%

2、资产规模分布

对于资产规模,小一是这样理解的:大资产的基金在收益稳定的同时也会出现船大难掉头的情况,小规模的资金收益波动会较大,但也可以及时规避风险。

因为基金较多,本节只选取近一年收益率的 Top300 的基金分析其资产规模。

另外,资产规模均是截止到 2020-12-31 日的资金资产规模。

一起看图:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

股票型基金的资产规模集中在 0.1亿元-15亿元 区间,其中,大于100亿元 的基金有 7个,占比为 2.3%;混合型基金的资产规模集中在 0.02亿元-17亿元 区间,其中,大于100亿元 的基金也有 7个

因此,不论是股票型还是混合型,10 亿元以下规模的基金占比 55%以上,占比较高

3、干货!收益率前10!

股票型基金近一年收益率的最高是 180.3%Top10 的平均收益是 142.3%

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

混合型基金近一年收益率的最高是 157.3%Top10 的平均收益是 144.9%

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

可以看到,前10 收益率的基金差距比较明显,其中股票型基金差距达到 57.8%

从图中看,混合型基金的近一年收益率与资产规模有关,排名前5 的似乎是个不错的选择

供参考:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

4、买老基 or 买新基?

买老基金好还是新基金好?

想必这个问题对于大家的帮助更大,这一步小一筛选了收益率较高的 前50名 基金进行分析,毕竟抄作业也要抄好学生的作业

绘制其上市时间的分布散点图,如下:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

可以发现,近一年收益率较高的前50个股票型基金上市时间集中在2014-2019年,对应的混合型则集中在2015-2019年

没有想到的是,2020 年整体收益率前50的基金中 上市时间在2019年的只有3个

也就是从数据上可以发现:新成立的基金收益率普遍跑不过老基金

5、干货!基金经理选谁?

对于基金经理的数据我有找过相关资料,明星经理似乎不太能对得上本节的结论

但是从数据来看,又没有问题,所以还是辩证的去看比较合适

买基金要看对基金经理,所以这一步是分析基金经理

同样的,我们取收益率较高的 前50名 基金进行分析,根据基金经理 持有基金的平均收益率 为标准,选取排名 前15 的经理,如下图:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

股票型基金经理的平均收益集中在 110%-120% 之间,而混合型基金经理的平均收益集中在 120%-130% 之间

像混合型基金经理 罗世峰、赵诣 平均收益率可以达到 150%+,遥遥领先其他基金经理,妥妥的基金一哥

6、干货!重仓哪些?

再来说一个大家更感兴趣的内容:基金持仓情况

每一个基金的前 10 大持仓股都可以作为该基金的代表,这个毋庸置疑,所以在爬虫部分我们也就直接爬了前十大持仓数据。

ok,在上一节的范围上我们继续缩减,取近一年收益率排名 前30 的股票型基金和混合型基金

每个基金都有前 10 大持仓股,所以对应的就有 300 个持仓股代表,筛选 持仓股累计占比排名前 30 个 持仓股作为重点观察对象,如图:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

需要说明的是,加粗表示同时出现在股票型基金和混合型基金中。

可以看到,前 15 持仓股基本两边都有持有,且占比很高,主要涉及方向:喝酒+吃药+开车

个人觉得这份清单相当有分量,2020 年下半年的行情主要就是 白酒饮料板块、新能源板块和医疗板块

7、抄作业!明星经理的持仓

最后,我们继续抄作业,抄优等生的优秀作业

上面分析了明星基金经理,也分析了收益率较高基金的持仓情况,下面结合这两者来一个综合

选择股票型明星基金经理 5 人,分别是:李游、孙迪、何肖颉、卢纯青和王伟

选择混合型明星基金经理 5 人,分别是:赵诣、罗世锋、何肖颉、刘彬和曲扬

对应的选择他们管理的基金,过滤近一年收益率在 120% 以下的,如下图:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

其中:标红的表示收益率 低于 120%,对应的基金 不属于我们要抄的最优秀作业

选取 7 个股票型基金和 14 个混合型基金进行再次分析:

数据分析|爬取14455个基金,千万别被人当成韭菜给割了

股票型基金的明星经理在 2020 年末已经 不再继续看好 白酒饮料和医药,比较关注 新能源+科技

而混合型基金的明星经理 则是 一如既往的稳健,依旧是 白酒饮料+医药+新能源

因此:

  • 稳健点的,可以继续选择混合型基金,继续:喝酒+吃药+新能源
  • 激进点的,可以主要关注:新能源细分,次要关注:科技
  • 防守的:白酒+医药

在这里还是要推荐下我自己建的Python学习群:721195303,群里都是学Python的,如果你想学或者正在学习Python ,欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python软件开发相关的),包括我自己整理的一份2021最新的Python进阶资料和零基础教学,欢迎进阶中和对Python感兴趣的小伙伴加入!

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
6个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Jacquelyn38 Jacquelyn38
4年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Stella981 Stella981
3年前
Python之time模块的时间戳、时间字符串格式化与转换
Python处理时间和时间戳的内置模块就有time,和datetime两个,本文先说time模块。关于时间戳的几个概念时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量。时间元组(struct_time),包含9个元素。 time.struct_time(tm_y
Easter79 Easter79
3年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Python进阶者 Python进阶者
1年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这