RQPro 公募FOF策略实例——晨星基金筛选和风险平价配置
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策略实例——晨星基金筛选和风险平价配置的更多相关文章
- JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置
众所周知,在进行接口测试的过程中,需要创建不同的场景(不同条件的输入,来验证不同的入参的返回结果).因而,在日常的自动化接口监控或商品监控等线上监控过程中,需要配置大量的入参来监控接口的返回是否正确. ...
- JMeter学习-014-JMeter 配置元件实例之 - 用户定义的变量 参数化配置
前文讲述了通过 CSV Data Set Config 实现参数化配置(详情敬请参阅:JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置), ...
- 通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术
通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages( JSP)技术.Velocity.Tiles.iText 和 POI.Spring MVC ...
- java 学习笔记(三)ZooKeeper集群搭建实例,以及集成dubbo时的配置 (转)
ZooKeeper集群搭建实例,以及集成dubbo时的配置 zookeeper是什么: Zookeeper,一种分布式应用的协作服务,是Google的Chubby一个开源的实现,是Hadoop的分布式 ...
- 【从零学习经典算法系列】分治策略实例——高速排序(QuickSort)
在前面的博文(http://blog.csdn.net/jasonding1354/article/details/37736555)中介绍了作为分治策略的经典实例,即归并排序.并给出了递归形式和循环 ...
- 转载:MySQL:亲测备份策略实例(线上真实备份案例)
是否为线上库的备份而烦恼过,这里提供一个完整的备份从属数据库的备份方案,亲测可用 说明: 备份从库,按周计,每周进行一次全备 每周一的早上六点进行全备,其他时间备份中继日志 在从库上启用rsync服务 ...
- Java中的策略模式,完成一个简单地购物车,两种付款策略实例教程
策略模式是一种行为模式.用于某一个具体的项目有多个可供选择的算法策略,客户端在其运行时根据不同需求决定使用某一具体算法策略. 策略模式也被称作政策模式.实现过程为,首先定义不同的算法策略,然后客户端把 ...
- linux防火墙,高级策略策略实例详解(实例一)
双线服务器的控制问题: 要求:写出这个电信用户访问到双线web服务器时的IP变化过程(只写源IP,目标IP,和做SNAT还是DNAT等) 你觉得有没有问题? 实验环境: 精简一点可以使用下面的四台虚拟 ...
- Tomcat三实例cluster多播方案共享session再配置
昨天已经将两实例cluster多播方案共享Session配置成功,其中的关键就在于server.xml中,engine->channel->receiver节点中address得写成自己的 ...
随机推荐
- mysql数据库-注释相关介绍
mysql执行的sql脚本中注释怎么写? mysql 服务器支持 # 到该行结束.-- 到该行结束 以及 /* 行中间或多个行 */ 的注释方格: mysql; # 这个注释直到该行结束 mysql; ...
- mysql 安装-zip版
1.千万不要自己新建data,使用命令:mysqld --initialize会自动生成一大堆文件 2.没有ini文件就自己新建:
- GCD之Apply
dispatch_apply函数是dispatch_sync函数和dispatch_group的结合体.该函数将按指定的次数将指定的block追加到指定的dispatch queue中,并等待全部处理 ...
- 我的Spring学习记录(三)
学习了AOP之后就可以应用一下了,所以这次我们了解一下Spring的声明式事务. 事务在我们的很多方面都可以体现,就拿我们平时的买卖活动,或者是银行的转账来说,这些活动要么是成功,要么是失败,比如:张 ...
- TCP/IP(五)传输层(TCP的三次握手和四次挥手)
前言 这一篇我将介绍的是大家面试经常被会问到的,三次握手四次挥手的过程.以前我听到这个是什么意思呀?听的我一脸蒙逼,但是学习之后就原来就那么回事! 一.运输层概述 1.1.运输层简介 这一层的功能也挺 ...
- Java钉钉开发_01_开发前的准备
源码已上传GitHub:传送门 一.准备事项 1.1 一个能在公网上访问的项目: 参见:Java微信开发_02_本地服务器映射外网 1.2 一个钉钉账号 去注册 1.3 创建一个应用 登录钉钉后台 ...
- java集合系列——List集合之ArrayList介绍(二)
一:List概述 List是 java.util包下面的类,从<a href="http://blog.csdn.net/u010648555/article/details/5604 ...
- 实例讲解webpack的基本使用第三篇
这一篇来讲解一下webpack的htmlWebpackHtml插件的使用. 先来思考一个实际问题:我们现在在index.html引用的js文件是写死的.但是我们每次打包后的文件都是动态的,那么我们怎么 ...
- Codeforces Round #410 (Div. 2)C. Mike and gcd problem
题目连接:http://codeforces.com/contest/798/problem/C C. Mike and gcd problem time limit per test 2 secon ...
- C# 7.0 新特性:本地方法
C# 7.0:本地方法 VS 2017 的 C# 7.0 中引入了本地方法,本地方法是一种语法糖,允许我们在方法内定义本地方法.更加类似于函数式语言,但是,本质上还是基于面向对象实现的. 1. 本地方 ...