2017年9月8日,证监会公布首批公募FOF基金名单,标志着公募FOF产品正式落地。FOF(Fund of Funds)是一种通过投资基金,而非直接投资具体证券标的(股票或债券等)来实现分散化资产配置的理财产品。其主要优势在于:(1)FOF投资者不再需要承担研究和跟踪每一类标的(股票、债券等)的繁重任务,而只需要专注于挑选不同领域表现优秀的专业投资管理顾问,从而实现投资流程的分工和专业化;(2)通过投资不同类型、不同风格的基金,实现多样化的资产配置,以适应不同的市场环境和经济周期。
首批发行的六只公募FOF基金产品所使用的策略或团队背景均有明确的量化投资特征。而其中三只产品(南方全天候混合型FOF,嘉实领航资产配置混合型FOF、泰达宏利优选混合FOF)均采用了“风险平价”的资产配置方案。在本文中,我们参考晨星(中国)2017基金评奖的原则,展示如何量化挑选公募基金(第一部分),并对米筐科技开发的专业投研终端RQPro(图1)中集成的“风险平价”资产配置优化器进行简介(第二部分)。最后,我们对一系列量化公募FOF组合进行历史回测,并对组合的表现进行对比分析(第三部分)。
在RQPro中,我们按以下流程对公募FOF策略进行开发和测试(图2):
(1)通过RQData数据模块读取全市场公募基金的数据;
(2)在策略开发环境自定义基金筛选标准,以及设置资金配置优化器;
(3)通过RQAlpha回测模块,测试FOF基金组合一段时期内的历史表现;
(4)重复上述步骤(1)~(3),对FOF基金组合进行调仓。


图1:RQPro基金回测和分析界面

图2:使用RQPro进行公募FOF量化策略研究流程

一 基金筛选
基于晨星(中国)2017年基金评选的原则,在每一期公募FOF组合的基金筛选中,我们设定了如下标准:
(1)基金发行时间长于2年,以保证有足够的历史数据评估其业绩;
(2)现任基金经理任职超过一年,以确保基金风格具有延续性;
(3)同类基金中2年内最大回撤(Maximum Drawdown)排名后30,确保基金具有较优秀的风险管理能力;
(4)以晨星的风险调整后收益指标MRAR(Morningstar Risk-Adjusted Return)从大到小对同类基金进行排序,持有每类排名靠前的15只基金。

二 风险平价优化配置
风险平价(Risk Parity)的资产配置理念由钱恩平博士(Edward Qian)在2005年系统阐释,并一直为著名对冲基金——桥水基金管理公司所践行。桥水基金把该资产配置方式称为全天候策略,其核心理念是倡导应该基于资产风险贡献,而非资产种类来选择资产配置方案。例如,传统的“60/40”资产配置模式建议投资者在组合中配置60%的股票和40%的债券,往往导致前者对于风险的贡献远大于后者。此时组合表现主要取决于股票表现。而风险平价则要求投资组合中各类资产具有相同的风险贡献,从而实现真正的风险分散化。
实践表明风险平价理念能够在不同的经济周期中取得稳定的收益,因而近年来一直备受业界关注。在RQPro的“风险平价”优化器的具体实现中,我们以组合中每一个基金的风险贡献相等为优化目标来实现投资组合的风险分散化。

三 策略历史回测
3.1 基金回测设定
在历史回测中,我们设定了如下条件,以保证其接近于真实情况:
(1)投资范围为当期全市场的股票型及债券型公募基金;
(2)起始资金为一千万,考虑申购/赎回的交易费用(以外扣法计算);
(3)交易是否成功取决于基金是否处于申购赎回期;
(4)分红不用于再投资;
(5)回测起止日期为2014年1月1日和2017年9月14日,调仓频率为月。
为了对风险平价优化器的效果进行检验和分析,我们按照表1构建了一系列测试组合。以表1中的第一个组合为例,我们设定股票型和债券型基金总占比分别为0~10%和90~100%之间,两类基金各持有15个(参见第一部分“基金筛选”),再使用风险平价优化器计算得到每个基金的具体仓位。其余组合的构建方式可依此类推。另外,我们以同期沪深300和中证500为基准组合,对上述公募FOF组合的表现进行对比分析。

3.2 结果分析
在表1及图3~4中,我们给出了上述组合及基准组合的表现对比。从这些结果中可以看出:(1)公募FOF组合中股票型基金比例越高,收益及风险(年化波动率及最大回撤)相应递增;(2)风险调整后收益指标(年化夏普率及累积收益与最大回撤之比)表明债券型基金比例越高,收益-风险比越高;(3)从各项指标对比可以看出,这一系列公募FOF组合表现优于沪深300和中证500两个基准组合,说明公募FOF产品有可能带来优于被动指数投资的投资回报。
此外,值得注意的是,在表1从上至下的10个组合中,我们通过调节各类基金的比例,能够使得公募FOF组合展现出清晰的风险及收益梯度。因此,通过合理的产品设计,公募FOF基金能够依据投资者的风险偏好,提供多样化的选择,以适应投资者不同的理财计划及资产配置需求。

表1:公募FOF基金组合表现


图3:公募FOF组合收益-风险对比(年化收益-年化波动率,累积收益-最大回撤)。其中红点对应上述公募FOF组合,蓝点对应沪深300和中证500

图4:公募FOF组合回测期内累积收益,组合1~10与表1由上至下顺序相同

三 总结
以上,通过参考晨星的基金评选标准,以及使用风险平价资金配置优化器,我们构建了一系列公募FOF组合。通过对这些组合进行分析,我们证明了公募FOF基金能够取得明显优于被动指数跟踪的投资表现,同时通过合理的产品设计,公募FOF组合能够展现出清晰的风险及收益梯度,适合于为不同风险偏好的投资者提供合理的资产配置方案。
为了简化回测流程,本文的基金筛选部分完全基于定量指标实现。在实际操作中,基金管理人可以进一步参考基金的尽调信息,及对单个基金进行细致的穿透分析和绩效评估(可通过米筐科技的绩效分析产品RQBeta实现),从而确保所选基金符合自己的投资计划。
随着国内理财观念的成熟,投资者在选择资产配置方案时,开始更多地关注在收益和风险之间取得平衡,并开始接受分散化投资等科学的资产配置观念。而通过投资公募FOF产品,投资者能够选择专业的投资管理人来实现分散化、科学化的资产配置。但另一方面,公募FOF产品在现阶段仍属于较新的理财产品。囿于历史业绩的缺乏,一般投资者未必能理解公募FOF的产品特点和投资表现。RQPro除了为公募FOF基金管理人提供完整的量化策略研发和历史回测支持,同时也可以生成相应回测和分析报告,从多个维度为投资者展示FOF产品的风格特征和业绩回报。米筐科技也将继续不断丰富相关的投研和分析功能,为公募FOF产品的蓬勃发展提供支持。

RQPro 公募FOF策略实例——晨星基金筛选和风险平价配置的更多相关文章

  1. JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置

    众所周知,在进行接口测试的过程中,需要创建不同的场景(不同条件的输入,来验证不同的入参的返回结果).因而,在日常的自动化接口监控或商品监控等线上监控过程中,需要配置大量的入参来监控接口的返回是否正确. ...

  2. JMeter学习-014-JMeter 配置元件实例之 - 用户定义的变量 参数化配置

    前文讲述了通过 CSV Data Set Config 实现参数化配置(详情敬请参阅:JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置), ...

  3. 通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术

    通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages( JSP)技术.Velocity.Tiles.iText 和 POI.Spring MVC ...

  4. java 学习笔记(三)ZooKeeper集群搭建实例,以及集成dubbo时的配置 (转)

    ZooKeeper集群搭建实例,以及集成dubbo时的配置 zookeeper是什么: Zookeeper,一种分布式应用的协作服务,是Google的Chubby一个开源的实现,是Hadoop的分布式 ...

  5. 【从零学习经典算法系列】分治策略实例——高速排序(QuickSort)

    在前面的博文(http://blog.csdn.net/jasonding1354/article/details/37736555)中介绍了作为分治策略的经典实例,即归并排序.并给出了递归形式和循环 ...

  6. 转载:MySQL:亲测备份策略实例(线上真实备份案例)

    是否为线上库的备份而烦恼过,这里提供一个完整的备份从属数据库的备份方案,亲测可用 说明: 备份从库,按周计,每周进行一次全备 每周一的早上六点进行全备,其他时间备份中继日志 在从库上启用rsync服务 ...

  7. Java中的策略模式,完成一个简单地购物车,两种付款策略实例教程

    策略模式是一种行为模式.用于某一个具体的项目有多个可供选择的算法策略,客户端在其运行时根据不同需求决定使用某一具体算法策略. 策略模式也被称作政策模式.实现过程为,首先定义不同的算法策略,然后客户端把 ...

  8. linux防火墙,高级策略策略实例详解(实例一)

    双线服务器的控制问题: 要求:写出这个电信用户访问到双线web服务器时的IP变化过程(只写源IP,目标IP,和做SNAT还是DNAT等) 你觉得有没有问题? 实验环境: 精简一点可以使用下面的四台虚拟 ...

  9. Tomcat三实例cluster多播方案共享session再配置

    昨天已经将两实例cluster多播方案共享Session配置成功,其中的关键就在于server.xml中,engine->channel->receiver节点中address得写成自己的 ...

随机推荐

  1. Spring-Boot:6分钟掌握SpringBoot开发

    构建项目 从技术角度来看,我们要用Spring MVC来处理Web请求,用Thymeleaf来定义Web视图,用Spring Data JPA来把阅读列表持久化到数据库里,姑且先用嵌入式的H2数据库. ...

  2. Openlayers系列(一)关于地图投影的理解

    背景 近期开发以MongoDB为基础的分布式地理数据管理平台系统,被要求做一个简单的demo给客户进行演示.于是笔者便打算向数据库中存储一部分瓦片数据,写一个简单的存取服务器,使用Openlayers ...

  3. Unity GameObject Class

    GameObject  Note : gameObject 指的是当前挂着的对象. class in UnityEngine / Inherits from:Object     Descriptio ...

  4. MyBatis框架(三)动态SQL,分页,二进制存入数据库图片

    一.动态sql语句,分页 1, <if>条件 <if test="key!=null"> 拼接sql语句 </if> 2, <choose ...

  5. Java多线程Runnable与Callable区别与拓展

    我们先来分别看一下这两个接口 Runnable: // // Source code recreated from a .class file by IntelliJ IDEA // (powered ...

  6. CentOS服务器上的 git 包版本控制

    本文衔接上文"记录一次无聊的(经历了Nodejs -> Shell -> C)的探索问题过程",服务器上git版本是1.8.3.1,使用的pm2来管理nodejs进程, ...

  7. mac pycharm 里table键设置为4个空格键

    Operation flow: File--Default Settings editor--code style--python

  8. servlet文件上传2——复合表单提交(数据获取和文件上传)

    上传文件时表单enctype属性必须要更改为<enctype='multipart/form-data'>:采用post提交表单,元素需要有name属性: 利用第三方jar包(common ...

  9. 一个基于Asp.net MVC的博客类网站开源了!

    背景说明: 大学时毕业设计作品,一直闲置在硬盘了,倒想着不如开源出来,也许会对一些人有帮助呢,而且个人觉得这个网站做得还是不错了,毕竟是花了不少心思,希望对你有所帮助. github地址:https: ...

  10. C语言定义从URL中获取键值的接口

    环境:centos7下,对客户端http请求进行解析,来获取有效键值(包括汉字). 头文件 /* 这是一份关于从Http请求信息中提取键值的接口声明的头文件 */ #ifndef _HEAD_H_ # ...