公募业绩可持续性分析:11亿到22亿间 业绩持续性最好

公募业绩可持续性分析:11亿到22亿间 业绩持续性最好
2018年09月11日 13:20 新浪财经-自媒体综合

  公募基金业绩可持续性分析 —FOF量化系列

  原创: 包赞 浙商证券 包你点赞量化策略 今天

摘要:

 

 

1、研究背景: 在基金行业日趋成熟的今天,一个重大的课题就是基金业绩可持续性问题,可持续性问题是基金绩效分析的核心。如果业绩不可持续,过去业绩和未来业绩没有关系,那么任何基金选择的模式都是无效的。所以,在公募产品受热捧和FOF基金开始发展的背景下,本文针对该问题,进行深入分析,试图探索可持续性的存在性以及可持续性的影响因素。 

       

2、基金业绩指标: 科学评价基金经理的业绩事关每个基金投资者的利益,甚至涉及到市场有有效性这样的重大问题。传统的评价只依靠收益率或者夏普比这样的单纯指标。这些指标会忽略最大回撤、相对市场表现等重要信息,学术界普遍采用资产定价模型的alpha来衡量投资经理战胜市场的能力。本文采用Fama五因子以及Carhart的动量因子,即MKT、SMB、HML、RMW、CMA、MOM,来构造不同的因子模型,获得不同角度下的alpha,然后利用这些业绩指标,来分别考察业绩的可持续性。 

       

3、可持续性存在性: 为了避免生存偏差以及基金经理变换的影响,文章选取T年和T+1年没有变更过基金经理的基金,其在T年度表现定义为up组合,在T+1年的表现定义为down组合,然后,利用回归分析,探索T年alpha与T+1年alpha的线性关系。实证分析显示,自2010年以来,无论是Fama MacBeth回归还是各年度数据混合在一起的普通回归,都得出业绩可持续性存在的结论。并且,为了严谨起见,文中对回归系数T值的分布进行Bootstrap分析,显示90%、95%置信度下,T值区间的左端都大于2,得出中国公募基金业绩可持续性稳健存在的结论。 

       

4、可持续性影响因素: 为了更好了解基金业绩持续性相关的因素,从而达到优选基金的效果,我们从投资集中度、基金持有者集中度、规模、交易次数、排名、风险调整后收益角度来考察这些因素的变化对业绩持续性的影响。分析显示:规模在10亿到22亿的基金业绩可持续性最好;投资集中度分布在两端的基金业绩持续性强;交易佣金/规模、平均持仓时间这两个因素也是处在两极端的基金业绩倾向更强的持续性;夏普比最高的一组基金,业绩倾向于在未来反转。       

 

  一、引言与文献综述

  中国公募基金在中国金融市场一直扮演着重要的角色,其专业化程度、透明程度、受机构和散户投资者认可的程度都很高。截至2017年底,公募基金管理8.5万亿人民币,其规模举足轻重,公募基金的投资方向更是市场走向的风向标。在基金行业日趋成熟且被机构和大众热捧的今天,一个重大的问题就是基金业绩可持续性问题,可持续性问题是绩效评估的核心,也是绩效评估的前提。如果业绩不可持续,过去业绩和未来业绩没有关系,那么任何基金选择的模式都是无效的。所以,在公募产品受热捧和FOF基金开始发展的背景下,本文针对该问题,进行分析,试图探索可持续性的存在性以及可持续性的影响因素。

  基金公司内部的风险管理部会基于持仓等信息,用Brinson模型、Barra模型定期做归因分析,并把相关报告反馈到基金经理。其目的是分析一个区间内基金经理的投资行为,帮助其认识和反省过去时间段内的投资决策的正确性,及时纠正错误的想法。所以,现有公募基金风险部通行的分析模式是合适的。而目前做基金研究的很多平台,定期公布基金净值曲线、基金经理学历信息等简单信息,或者基于净值做了归因分析和风格分析,是不够充分的。因为,外部的评价分析,面向个人或机构投资者,是做投资决策的依据,简单的描述历史或者利用Barra模型分析,不能为投资提供很好的建议。因为做投资决策需要利用历史来预测未来,简单的描述分析或者归因分析不仅做不到预测未来,还可能存在谬误,历史表现好的基金,在未来一年处在排名倒数的位置也有过案例。所以,建立一套科学的、逻辑完备的基金评价体系,是目前基金研究的重要课题,对保护投资者利益,帮助公募基金采用科学系统的投资体系都是有重大贡献的。

  2000年以前,很多研究把注意力关注在基金经理上,分析基金经理的跳槽次数、投资哲学甚至SAT分数和业绩的关系,也有很多直接利用收益和排名的相关性来进行分析。 Jensen(1968)利用Jensen指数对1945至1964年的115只基金的风险调整超额收益进行检验,发现基金业绩并不存在持续性。Carlson(1970)在对1948-1967年间的共同基金进行研究后,发现考察期为10年的风险调整收益没有持续性,但考察期为5 年时有一定的持续性。Grinblatt和 Titman(1989)对1974-1984年基金的收益数据进行了统计,证实了考察期为5年的基金业绩持续性存在。Hendricks(1993)对165家基金在1974-1988年间的业绩进行了研究,指出基金业绩具有短期持续性。Malkiel(1995)进一步分析发现不同时期基金业绩的持续性不同。Carhart(1997)只在业绩较差基金组合中找到一些可持续性的证据。Chevalier,Ellison(1999)从基金经理的可观测的特征来分析存活者偏差。这些基金经理的特征包含:基金经理的年龄,是否拥有MBA 学位,大学入学考试成绩(SAT)以及目前的职位等特征。经过研究发现,大量年轻的基金经理获得更高的收益。除了因为年轻基金经理的管理费用低,还和幸存者偏差有关系,年轻的基金经理更容易因为业绩不好而被辞退,这样导致年轻的基金经理更加努力工作而争取留存下来。总的来说,这些研究的角度和方法虽然比较直观,但是,在方法上不够严谨。

  2000年以后,该领域分析越来越深入,方法也更科学、成体系。最显著的特征是,都一致利用多因子模型下的alpha来衡量投资能力,作为业绩的代理指标。Klaas P. Baks(2002)利用四因子模型得出alpha,利用当期alpha和同一基金经理的前一期alpha做横截面回归,得出存在可持续性的结论,并且他把业绩拆分为基金经理、基金管理公司和他们的交叉效应三个部分,得出基金经理对业绩的贡献仅占30%,剩余70%贡献属于基金管理公司的结论。Coval(2005)利用历史收益率和很多基金相同的持仓来创新的构建一种指标来评价单一基金的绩效,证明美国权益基金的业绩具有很强的可持续性。但是 Barras, Scaillet,和Wermers (2009),Fama和French(2008)没有找到可持续性,尤其在他们样本较后面的阶段。

  国外同策略产品,适合按照基金经理来加权,国内是掌管几只不同产品,可能是不同主题方向,而且国内没有严格定义产品策略,无法得知产品间的关系,由于策略不同,产品的规模不同,国内基金经理对不同产品付出的精力也不一样,简单的加权可能会抹杀一些特定产品的特点,获得错误信号,可能前一年一只产品业绩好,是由于实力强,第二年由于运气,风格契合另一只没有投入精力的产品,导致第二支产品业绩好,这样就,错误获得业绩可持续的结论。由此,为了适应中国国情,我们采取的方式是按照产品和基金经理两个维度来共同考察业绩的可持续性。而不是按照国外通常采取的方式,按照基金经理一个维度来考察。这样,业绩可持续性分析的结论可靠性更高。

  本文首先说明数据来源,然后描述各种因子控制下的基金业绩,随后描述业绩的特征,然后利用横截面模型验证基金可持续性,最后,探索不同的特征对基金业绩可持续性的影响。

  需要说明的是,本文的研究范式和Fama&French体系下的经典论文一样,即从业绩的“现象”出发,考察两年间“业绩现象”的联系和关系。而不是一开始去探索业绩的形成因素,利用这个因素来寻找第二年的优秀基金,这样会有中间介质,而且这个介质与现象的联系本身就并不明确,会影响基金选择的准确性。比如前一年学历高的基金经理业绩好于学历低的基金经理,并不代表第二年业绩继续靠前,所以,用学历这个中间介质来分析并不合适。现象学排斥中介的因素, 把直接的把握或这个意义上的直观看作是一切知识的来源和检验一切知识的最终标准, 所以,用现象学分析法研究金融现象时不可以引入中介物或者不能依赖于中间变量, 否则会迷失金融现象的本质。正如胡塞尔(Edmond Hussel,1859-1938)的基本主张“回到事实本身”。

  二、样本与数据

  2.1 数据

  本文只分析权益类基金的业绩可持续性,因为相对于固收类产品,这类产品业绩弹性更大,业绩评价更受关注,而且从分析本身来说,权益类产品都有相对的基准和风险调整方法。权益类基金选取wind分类中的普通股票型和偏股混合型,并且偏股混合型中剔除了债券仓位大于10%的基金,本文选取的大多债券仓位在5%以下。分析时间段是2010年到2017年。一个基金的业绩好坏直接与基金经理的投资能力有关,选基金也是选取基金经理,评价基金主要也是考核基金经理的投资能力,为了更纯粹的分析业绩可持续性,剔除基金经理切换的影响,本文采取的分析方法是,分析T年和T+1年没有切换基金经理的相同基金的业绩,从横截面的角度来考察其可持续性。       

  2.2.数据描述分析

  Robert Litterman和Scheinkman 如表1所述,2010年一共有204只权益类基金,但是在2010到2011年两年间,没有变更过基金经理的只有76只。为了分析的严格,对于排名第二、第三位的基金经理变更的基金也不予包括进我们的分析样本中。产品数据是逐年增加,到2016年产品数量达到538只。因为我们分析的是T年基金在T年和T+1年的业绩可持续性,所以,2017年产品无需统计,沿用2016年选取的可分析产品数量。

  表 1:权益类基金样本描述

  从绝对收益来看,八年期间,有两年是整体上的负收益,从相对收益来看,有三年相对收益为负。平均规模逐年下降,意味着很多新成立基金规模小于平均规模。从持股仓位来看,基本上每年都是在85%以上的高仓位。

  风格特征也是影响基金业绩的重要变量,能够准确把握市场风格的基金经理,往往业绩更倾向于稳健,且持续的表现,本文后面也会探索风格对可持续性的影响。表2,描述的是2016年样本基金的风格情况,可以看出,2016年绝大多数基金的风格是小盘成长风格,但是收益并不好。这也为2017年很多基金转换到大盘价值风格埋下伏笔。

  风格分析利用的方法是带约束的回归,严格来说是二次规划:               

  (1)式右边为风格指数收益率,左边为基金的收益率序列。考虑到不允许做空,所以有非负的约束。本次风格指数选取的是国证风格指数,数据来自万得数据库。

  表 2:2016年样本基金风格描述分析

  三、绩效分析

  科学评价基金经理的业绩事关每个基金投资者的利益,甚至涉及到市场具备有效性这样的重大问题。传统的评价只依靠收益率或者夏普比这样的单纯指标。这些指标会忽略最大回撤、相对市场表现等重要信息,学术界普遍采用资产定价模型的alpha来衡量投资经理战胜市场的能力。       

  3.1 绩效测算模型

  利用基金或者基金组合的收益率和因子收益率的时间序列回归可以得到alpha,来衡量基金的业绩。

  上面(4)-(7)式中,左边的r表示基金的日收益与日无风险收益的差额,右边的各个因子表示因子的日收益率,MKT表示市场日收益与日无风险收益的差值。(4)式表示的是CAPM模型,只有市场的超额收益一个因子。(5)式用来计算Fama–French (1993) alpha,利用的是市场、市值、账面市值比三个因子。本文用到的这三个因子,在构建不同因子的股票多空组合方法上,和Fama原文相同,用不同因子的上50%分位的股票组合收益减去下50%分位组合的收益,得到多空组合下因子的每日收益数据。(6)式是依据Carhart四因子模型,比三因子多了动量因子,动量因子是利用过往十一个月涨幅靠前30%组合作为多头,跌幅靠前30%作为空头,作为未来一个月的多空组合,从而获得日收益率。(7)是按照Fama–French (2013) 的五因子模型来构建定价模型,比三因子多了RMW和CMA因子,分别衡量了盈利能力强弱的股票的收益差异,和新增投资多少的股票组合的差异。

  表 3:因子收益描述统计与因子间相关性(2010-2017)

  表3可以看出,SMB、HML、RMW、MOM因子收益绝对值较大,表示这四个因子可以从横截面上解释股票收益的差异。因子间相关系数除了SMB和RMW较高外,其余均较小,表示多重共线性对因子载荷的影响不大。SMB和RMW的相关系数虽较高,考虑Fama论文中也出现过大约相同的相关系数,并未特殊处理,本文也不做处理,而且本文只研究alpha数值,不涉及因子载荷的参数估计,也不考虑经济学含义,所以,不做处理应当不影响文章结论的准确性。

  3.2 alpha描述分析

  本文从横截面分析T年和T+1年未更换基金经理的同一基金在两年间业绩的可持续性关系。在T年选定好基金样本,见表1,2010年选出的可分析样本有76只,为了便于分析,这76个基金在2010年构成2010年的up组合,在T+1年也就是2011年,构成2010年的down组合,依次类推,我们需要研究的正是每年up组合中基金和down中基金的业绩相关性。在2017年,只有2016年的down组合需要进行计算分析。

  表 4:不同因子下的alpha值平均(右边为t值,原假设均值大于零)

  表4中,列名称中上面一行代表不同因子下当年的up组合中基金的业绩(alpha)平均与T值,下面一行是down组合中基金的业绩均值与T值。从表中,可以看出,不同年份下,不同因子下的alpha值存在差异。但是,大的趋势是,因子数量较多模型下的alpha会偏小,尤其在长期的角度来看。最后一行可以看出,CAPM模型下alpha显著为正,为5.40%,T值为8.91,三因子下,alpha为1.87%,T值下降为3.92;四因子下,alpha为1.48%,T值进一步降为2.70,最后五因子下,alpha为-5.19%,T值为-11.74。

  表 5:不同分位下的单个基金业绩表现(括号类为T值,下面是调整后R方)

  表5是用不同分位数下的单个基金和不同因子回归得出的alpha,时间段是2010-2017。从表5可以看出,随着因子的增多,R方呈现逐渐增大趋势。但是,四因子和五因子给R方提高的程度并不明显,表示分析区间内的这八年,国内基金在动量因子、盈利因子、投资因子上的暴露并不多。主要还是暴露在Fama经典的三因子,即市场因子,市值因子,账面市值比因子上。从不同分位下基金被解释的程度来看,两端好于中间,即表现极端的基金被解释程度高,这是由于2010-2017年这八年间,不同的因子表现也呈现极端情况,市值因子累计收益高达近200%,而动量因子收益是-60%左右,表现极端的基金在极端的因子上暴露较大,所以出现被解释度高的情况。

  表 6:不同分位区间基金组合的alpha表现(上面为等权,下面为市值加权)

  上表可以看出,市值加权的基金组合alpha普遍小于平均加权组合的alpha,表明小规模基金的业绩要好于大规模基金的业绩。

  四、业绩可持续性分析

  4.1 研究方法

  我们很多文献描述了不同的方法来衡量业绩的可持续性,Wermers (2000)利用相关系数来衡量,Klaas P. Baks(2001)利用上一期alpha和本期alpha的简单回归来探测可持续性。本文采用Baks采用的方法,利用线性回归简单直接的来分析同一基金当期alpha和上一期alpha的横截面的相关性。

  如前文所述up,down组合是同一个基金组合在前面一年和后面一年的不同表述,其基金成分是一样的,目的就是研究同一基金在前面一期和后面一期的相关性。最后,我们要假设,因子模型中的残差,和(8)式的残差是相互独立的。

  从2010年到2018年,一共八年,由于考虑到基金经理切换,如前文所述,每年度筛选基金,只考虑当年和下一年都没更换过基金经理的基金,当年的是up组合,下一年的是down组合,这样一共有7年7组的被估计的alpha数据,来估计(8)的系数。由于我们每年度,重新选样本,年与年间样本独立,这样(8)式的估计项,不会随着年与年之间的残差的相关性而造成估计系数的t值被夸大。所以,和Baks不同的是,我们这种分析方式就不需要假设(8)式残差项的分布在各年间相互独立,估计系数更稳健。换句话说,这种方法下,如果得出可持续性存在的结论,那么这个结论更可信。       

  4.2 实证分析

  实证分析第一步是获得前文所述的alpha,利用本文构建好的组合模式,每年得到当年和下一年没用换过基金经理的基金组合,当年的基金组合记为up组合,下一年记为down组合,其实这两个组合是一个组合,为了表达方便这样标记。目的是突出本文分析的是前一年和后一年业绩的相关性,并且期间基金的基金经理没有变更。

  表 7:重要变量解释

  1、分年度计算      首先,利用每年度的up,down组合中的每个基金在不同因子下的alpha估计值,来探索当年的基金业绩能不能持续到下一年。利用横截面回归,去估计(9)式中的系数:

表 8:各年度下rho1估计值与t值表 8:各年度下rho1估计值与t值

  从表8中可以看出,不同因子下的alpha可持续性表现不同,总的来看,三因子、四因子、五因子下的系数更加显著,t值更大。这是因为,多因子模型考虑了更多影响收益的因素,多因子下的alpha更能代表基金经理的投资能力,所以,“真功夫”的可持续性更加显著,单因子下的alpha里面蕴含着“运气”成分,所以,运气的可持续性不强拉低了单因子下的alpha显著性。而在多因子模型中,四因子的显著性最强,这说明考虑了动量因素下的四因子模型alpha可持续性更好,更能衡量基金经理的投资能力,也为四因子模型的流行提供了一个新的解释。

  进一步分析实证结果,能看出不同的年份间,度量可持续性的参数rho1的估计值显著性差异也很大。2011、2015、2016年的业绩能够很好的持续到后面一年,其余年份都没发现当年业绩和后一年业绩相关的证据。这表明,市场行情和风格切换情况,能够很显著的影响到业绩可持续性。因为,如果风格切换太快,有些基金经理没能及时把握风格切换的话,那么当年业绩靠前的基金,很可能在次年业绩靠后。当然如果市场上所有基金经理都没把握,一致在次年靠后的话,也会带来负相关的显著性,但是,这种情况是不存在的,所以,在有些基金经理把握了风格轮动有些没有把握的混沌情形下,我们得不出业绩可持续性的证据。从系数的符号来看,在可持续性存在的年份,都是正号,表明前一年业绩和后一年业绩是正相关的,符合直观逻辑,即投资能力强的在下一年会继续强。

  2、不考虑时间因素      分析基金业绩,不是某一年的事情,是长期的工作。其存在性,涉及到基金选择的理论基础,如果实证证明可持续性其不存在,那么很多基金研究和业绩分析工作是无意义的。如果确实不存在,过去完全不能解释未来,不能为未来提供建设性意见,不仅对基金研究人员的工作不利,也对基金行业的发展不利,因为如果机构和散户在长期完全不能把握基金选择的规律,不能从中获得收益,那么他们肯定会选择离开基金市场,造成对基金行业的规模下降,这是对以收管理费生存的公募基金行业的重大打击。

  所以,分析业绩可持续性的意义重大。为了进一步论证可持续性的存在性,我们利用Fama MacBeth回归和不考虑时间因素的普通回归来对业绩可持续性的存在性进行进一步的实证检验。

  表 9:当年alpha和上一年alpha回归

  从上表我们可以看出,无论是Fama MacBeth回归还是混合回归,在三因子、四因子、五因子下,基金的业绩都是可预测的。

  3、可预测性的稳健性      为了严谨起见,我们用bootstrap方法对T值的分布作出进一步估计,具体见下表。从表中我们看出,T值90%、95%的置信区间下的左端点都大于2,证明了业绩可持续性是稳健存在的。

  表 10:bootstrap方法下T值估计

  五、与可持续性有关因素的分析

  为了更好地了解基金业绩持续性相关的因素,从而达到优选基金的效果,我们从投资集中度、基金持有者集中度、规模、交易次数、排名、风险调整后收益角度来考察这些因素的变化对业绩持续性的影响。上述指标数据均来自万得函数。具体分析方法是,先获取各个年份各个基金的因素数据,然后把各个因素按照从小到大分成五组,然后考察不同分位数下的基金的业绩可持续性,也就是计算不同分位数下回归系数的T值,具体指标与分析结果请见表11。

  表 11:各指标分位数分割区间右端点

表 12:各因素不同水平下业绩可持续性分析(括号为系数rho1 T 值)表 12:各因素不同水平下业绩可持续性分析(括号为系数rho1 T 值)

  由于上表按照分位数分组,不同水平下样本量相同,所以,可以忽略样本量因素对模型结果的影响。下面我们结合下图分别分析上表各因素。

  图1:各指标不同分位数下alpha显著性

  (1)平均每户持有份额:       平均每户持有份额衡量基金持有人集中度的指标,从图中看,T值看不出明显规律,表明大多数基金业绩持续性不受该因素影响。

  (2)平均持仓时间:       该指标衡量基金经理持有股票平均时间长度,从T值折线图中看,持有时间最长的一组业绩持续性最强,该组基金中,持有股票平均时间都在半年以上。其次是持有时间最短的一组,该组持股平均时间都在两个月以下。究其原因,可能是因为做相对长线投资的基金经理对自己的持股更有信心,投资手法更为成熟、体系更完善,所以,业绩稳定性高,表现出alpha较强的持续性。持有时间较短的一组展现出高持续性,更好理解,长时间的短线持股,锻炼出内生性的交易系统,因此持续性较好。当然,如果这两组中基金经理业绩持续性强但是持续“较差”,要考虑自己的交易系统是不是有不当之处。

  (3)投资集中度       该指标为前十股票持仓占股票投资比例,分析显示,投资集中度最高的一组可持续性最强,反应这类特性的基金经理未来业绩的可预测性较好。投资集中度最低的一组,可持续性其次,反应足够分散的投资组合的业绩也具备较好的可持续性。

  (4)规模       规模也是业绩可持续性的重要影响因素,规模过大,会有“船大不好调头”的问题,我们从业绩可持续性的角度来看,规模最大的一组,业绩可持续性最差,规模适中的一组,业绩可持续性最好,该组规模在11亿到22亿之间,所以,在基金选择时,如果其它变量都大致相同,那么应该优先选择规模在这个区间的基金,因为业绩可持续性最好。

  (5)交易佣金/规模       该项最直接反应基金经理的换仓频率,分析显示,交易佣金/规模最少的一组,业绩可持续性最好。其次是交易最频繁的一组。这个结论在一定程度上也佐证了平均持仓时间这个变量的分析结论。

  (6)排名       在基金选择时,排名是我们重要的考虑变量,当然我们潜在的假设就是,今年的排名能够代表以后的排名,本文采用万得函数里面的排名,该指标数值越大表示越靠前,所以,分析中的第一组是排名靠后的一组,分析显示,排名靠后的一组,业绩可持续性最差,T值非常小,表明靠后基金的业绩大概率能在下一年度出现反转。可持续型最好的就是排名处于中位数位置的基金。当然,值得庆祝的是,排名靠前的基金可持续性也十分显著。

  (7)夏普比       夏普比作为风险调整后收益,在基金选择中广泛应用,上面说到的排名指标是相对指标,这地方选择夏普比这个绝对数额来衡量基金业绩的可持续性。从表12我们看出,夏普比最高的一组,数额大于1,T值绝对值小于2且为负值,表明夏普比高的基金不仅业绩可持续性不好,还往往会出现反转。可持续性最好的是夏普比适中的一组。

  附录

  1、参考文献

  1 Carhart, Mark, 1997, On persistence in mutual fund performance, Journal of Finance 52, 57–82.

  2 Avramov, Doron, and RussWermers, 2006, Investing inmutual fundswhen returns are predictable, Journal of Financial Economics 81, 339–377.

  3 Brown, Stephen J., and William N. Goetzmann, 1995, Performance persistence, Journal of Finance 50, 679—698.

  4 Baks, Klaas P., Andrew Metrick, and Jessica Wachter, 2001, Should investors avoid all actively managed mutual funds? A study in Bayesian performance evaluation, Journal of Finance 56, 45—85.

  5 Goetzmann, W. J. and Ibbotson, R.G. (1994), “Do winner repeat? Patterns in mutual fund performance”, Journal of portfolio management, (20) (Spring), 9-18.

  6 Kacperczyk, M., Sialm, C. and Zheng, L. (2008), “Unobserved Actions of Mutual Funds” Review of Financial Studies, Oxford University Press for Society for Financial Studies, (21), (6), 2379-2416.

  2、R代码:(代码过长,完整程序请联系:baozan@stocke.com.cn)

  1. #------------------

  2. output=function(return_mat,year){

  3. r=return_mat;

  4. fac_r=fac_R[as.character(year)];

  5. port_r=port_R[as.character(year)];

  6. mom_r=mom_R[as.character(year)];

  7. res1=r;res3=r;res4=r;res5=r;

  8. colname=c(“alpha_1”,“beta_1”,“t_1”,“rsquare_1”,

  9.          “alpha_3”,“beta1_3”,“t1_3”,“beta2_3”,“t2_3”,“beta3_3”,“t3_3”,“rsquare_3”,

  10.          “alpha_4”,“beta1_4”,“t1_4”,“beta2_4”,“t2_4”,“beta3_4”,“t3_4”,“beta4_4”,“t4_4”,“rsquare_4”,

  11.          “alpha_5”,“beta1_5”,“t1_5”,“beta2_5”,“t2_5”,“beta3_5”,“t3_5”,“beta4_5”,“t4_5”,“beta5_5”,“t5_5”,“rsquare_5”)

  12. mat_coef=matrix(0,ncol=length(colname),nrow=dim(r)[2])

  13. dimnames(mat_coef)=list(names(r),colname)

  14. for(kk in 1:dim(r)[2]){

  15.  stockts=r[,kk]

  16.  stockts1=stockts-port_r[,2]

  17.  data=cbind(stockts1,fac_r,mom_r)

  18.  reg1=lm(formula = data[,1] ~ mkt, data)

  19.  reg3=lm(formula = data[,1] ~ mkt + smb + hml, data)

  20.  reg4=lm(formula = data[,1] ~ mkt + smb + hml + mom, data)

  21.  reg5=lm(formula = data[,1] ~ mkt + smb + hml + rmw + cma, data)

  22.  coef1=summary(reg1)$coefficients[,c(1,3)];    adj1=summary(reg1)$adj.r.squared;

  23.  coef3=summary(reg3)$coefficients[,c(1,3)];    adj3=summary(reg3)$adj.r.squared;

  24.  coef4=summary(reg4)$coefficients[,c(1,3)];    adj4=summary(reg4)$adj.r.squared;

  25.  coef5=summary(reg5)$coefficients[,c(1,3)];    adj5=summary(reg5)$adj.r.squared;

  26.  res1[,kk]=resid(reg1);res3[,kk]=resid(reg3);res4[,kk]=resid(reg4);res5[,kk]=resid(reg5);

  27.  mat_coef[kk,1]=coef1[1,1];   mat_coef[kk,2]=coef1[2,1];   mat_coef[kk,3]=coef1[2,2];        mat_coef[kk,4]=adj1;

  28.  mat_coef[kk,5]=coef3[1,1];   mat_coef[kk,6]=coef3[2,1];   mat_coef[kk,7]=coef3[2,2];        mat_coef[kk,8]=coef3[3,1];  

  29.  mat_coef[kk,9]=coef3[3,2];   mat_coef[kk,10]=coef3[4,1];  mat_coef[kk,11]=coef3[4,2];       mat_coef[kk,12]=adj3;

  30.  mat_coef[kk,13]=coef4[1,1];   mat_coef[kk,14]=coef4[2,1];   mat_coef[kk,15]=coef4[2,2];      mat_coef[kk,16]=coef4[3,1];  

  31.  mat_coef[kk,17]=coef4[3,2];   mat_coef[kk,18]=coef4[4,1];   mat_coef[kk,19]=coef4[4,2];      mat_coef[kk,20]=coef4[5,1];  

  32.  mat_coef[kk,21]=coef4[5,2];   mat_coef[kk,22]=adj4;

  33.  mat_coef[kk,23]=coef5[1,1];   mat_coef[kk,24]=coef5[2,1];   mat_coef[kk,25]=coef5[2,2];      mat_coef[kk,26]=coef5[3,1];  

  34.  mat_coef[kk,27]=coef5[3,2];   mat_coef[kk,28]=coef5[4,1];   mat_coef[kk,29]=coef5[4,2];      mat_coef[kk,30]=coef5[5,1];  

  35.  mat_coef[kk,31]=coef5[5,2];   mat_coef[kk,32]=coef5[6,1];   mat_coef[kk,33]=coef5[6,2];      mat_coef[kk,34]=adj5;

  36. }

  37. list(coef_mat=mat_coef,res1=res1,res3=res3,res4=res4,res5=res5);

  38. }

  39. ##----------

  40. for(year in 2010:2016){

  41. year=year;

  42. code_sus=eval(parse(text =paste(“anacode_”,year,sep=“”)));

  43. r0=w.wsd(code_sus,“NAV_adj_return1”,paste(year,“-01-01”,sep=“”),paste(as.numeric(year)+1,“-12-31”,sep=“”))$Data

  44. cr=data.frame(r0[,-1]/100,stringsAsFactors=FALSE);

  45. return=xts(cr,as.Date(r0[,1]));

  46. ind=which(is.na(return),arr.ind = T);

  47. return[ind[,1],ind[,2]]=0;

  48. return_down=return[as.character(as.numeric(year)+1)];

  49. return_up=return[as.character(year)];

  50. assign(paste(“up_”,year,sep=“”),output(return_up,year));

  51. assign(paste(“down_”,year,sep=“”),output(return_down,(year+1)));

  52. print(year)

  53. }

  54. #up_2015   down_2010

  55. res=data.frame(down_2015$coef_mat)

新浪声明:新浪网登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。

免责声明:自媒体综合提供的内容均源自自媒体,版权归原作者所有,转载请联系原作者并获许可。文章观点仅代表作者本人,不代表新浪立场。若内容涉及投资建议,仅供参考勿作为投资依据。投资有风险,入市需谨慎。

责任编辑:石秀珍 SF183

热门推荐

收起
新浪财经公众号
新浪财经公众号

24小时滚动播报最新的财经资讯和视频,更多粉丝福利扫描二维码关注(sinafinance)

7X24小时

  • 09-18 天风证券 601162 --
  • 09-13 顶固集创 300749 --
  • 09-12 长沙银行 601577 7.99
  • 09-12 兴瑞科技 002937 9.94
  • 09-11 捷昌驱动 603583 29.17
  • 股市直播

    • 图文直播间
    • 视频直播间