转自:https://zhuanlan.zhihu.com/p/22823948?refer=jjscience

作者:江嘉键
链接:https://zhuanlan.zhihu.com/p/22823948
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

前一段时间,李腾、陈烨、邓岳、陈志岗几位老师在知乎上发布了一份多因子模型的测试题,其中囊括了多因子建模过程中大部分需要考虑的理论和实践问题:

多因子模型水平测试题 - 科学投资 - 知乎专栏

在过去几个月时间,米筐科技(RiceQuant)量化策略团队对这套经久不衰的量化模型进行了系统研究,相关的产品项目也即将发布。我打算通过回答这份测试题的形式,分享这个过程中获得一些经验和想法。由于题目众多,在这里先对测试题的第一部分的问题进行试答,希望对大家有所帮助。

*************** 多因子模型测试题回答开始 ***************

问题2: 常见的因子类别?

答:我个人倾向于以下简单的分类方式:量价因子、基本面因子和外部响应因子。

量价因子包含一些简单的指标,例如成交量、换手率和日内最高/最低价等;有一些量价因子则较为复杂,例如一些技术分析因子和数据挖掘得到的统计因子;

基本面因子通常是一些反映企业经营状况(市盈率、负债率等)和经营特征(行业因子)的变量。其包括来自于企业自身公布的报表,也可以是其它专业机构发布的一致预期预测(Consensus Forecast)。

外部响应因子则取决于交易选择的证券池。例如如果一个机构是只做股票类证券的交易,那么和债券市场相关的指标对他们而言就是外部响应因子;如果一个机构是做全球资产配置,涉及多个市场和不同类型的证券,那么像某些国家和地区的通胀率、GDP等,对这个机构来说才是外部响应因子。

问题1: A股市场驱动因子能分为哪几大类?

答:因子分类同问题2。

以上三类因子应用于A股市场各自存在优缺点:

量价因子通常对行情变化非常敏感,能够有效捕捉市场的趋势,但简单因子因为广为人知,其影响早已体现在证券价格中(有效市场理论);一部分技术分析因子由于流传甚广,可能存在一定的自我实现效应,但同样地,其影响可能已体现在证券价格中;而另一部分技术分析的描述接近于玄学,存在一定的模糊性;通过数据挖掘获得的,意义不明的统计因子容易出现多重比较谬误(multiple comparison fallacy)的问题。

基本面因子通常被做长期资产配置或者信奉价值投资理念的投资者采用。而在应用中过程中,存在以下困难:1 基本面因子数据获得时间点不统一(取决于企业发布报表的时间和机构发布预测的时间);2 相比量价因子,其数据噪声大、缺失值多,数据质量取决于审计机构的专业性和企业的诚信程度;3 因子取值的分布通常远远偏离正态分布,对于离群值的判断不能用标准差这个常用的统计量; 4 一致预期的数据采集难度较大。

外部响应因子在某些情况下有很强的解释力,但在建模过程中,由于不同因子的量纲千差万别,通常要先估计其响应系数,因此会引起变量误差(error-in-variables)的问题,另外,部分外部响应因子来源于政府发布的数据,其可能存在采样质量差,而且数据被人工删改等问题。

问题3: 除了最常用的回归法,还有没有其他方法可以进行单因子测试?各自优劣是什么?

答:在不使用回归的前提下,如果我们希望测试单因子对于预期收益率的预测能力:

1 直接计算其信息系数(Information Coefficient,IC),并应用精炼预测公式(refined forecast)进一步预测其效果;

2 构建因子对应的投资组合,其构建方法可以简单也可以复杂,例如选择不同的证券池和不同的中性化处理方法,计算其累计收益率;

3 如果希望捕捉非线性关系,也可以考虑使用距离相关系数(distance correlation)或者最大信息系数(Maximum Information Coefficient)等统计量。但任何非线性关系的分析和应用都存在过拟合的风险。

在不使用回归的前提下,如果我们希望测试该因子是否适合于风险预测模型:

可以计算该因子的自相关系数、和模型其它因子的共线性程度、和基准组合的相关程度等。

问题4:单因子测试是否需要纠正版块、市值偏离等问题?如何纠正?

答:对于收益预测而言,是否需要纠正取决于你对该因子的判断。如果你认为该因子对于行业的预期收益率没有预测能力,就应该实现行业中性,反之不应该实现行业中性;市值偏离是否需要纠正亦是同理。

对于基于净值的业绩归因而言,中性化处理是必须的。市场和市值和影响力很大,不进行中性化处理的话,因子之间的共线性会导致系数估计的方差变大。

问题5:行业归属因子是否应选择动态变化的数据?

答:应该。答案如几位老师所言,不使用动态数据会出现使用未来数据的问题。

问题6:混业经营的上市公司,其行业因子有哪些处理方式?利弊?

答:对于混业经营的上市公司,其行业因子不能简单使用取值为 0 或 1 的哑变量(dummy variable)来表示。此时对行业因子暴露度的处理有两个思路:

1 继续使用哑变量代表行业因子,而虚拟变量的权重可以直接使用等权重,或通过一些财务数据分析来确定;

2 不再使用哑变量,而使用连续变量表示行业因子。其暴露度可以通过该上市公司的收益率对行业收益率做多元回归决定。

第 1 种方法受数据噪音干扰减少,但可能存在欠拟合(underfitting);第 2 种方法受数据噪音干扰较大,可能存在过拟合的问题。而且选择什么变量进行回归存在主观性。

问题7:行业因子采用GICS、证监会、申万、中信等第三方数据更好?还是利用相关性、聚类分析等算法来动态确定更好?各自利弊?

答:就其使用而言,行业因子一般都是模型中风险控制的维度。它的选择应当符合市场上大部分投资者的认知。我个人的观点是,用复杂统计分析或机器学习来构建行业因子一来没有必要,二来由于引入额外的数据和分析步骤,模型的误差也会随之增加。

问题8:规模因子(Size,也叫市值因子)为什么在中国具有如此重大的影响?选择长期暴露小盘股有哪些利弊?

答:就一般而言,中国A股市场的四个特点导致小盘股更受青睐,市值因子影响巨大:

1 证券市场不规范,内幕交易盛行。部分机构投资者(所谓庄家)和公司股东存在不当的合作关系,利用小盘股股价易于操纵的特点获利;

2 相比成熟的证券市场,中国股票市场个人投资者比例偏高,个人投资者而且对股票市场的认识不成熟,希望通过投资股价变化更快的小盘股短时间内获利;

3 大盘股对应的通常为大型国有企业,其分红意愿不强,投资者难以通过价值投资的方式获得收益;

4 此外,《主动投资组合管理》的一个理论分析和模拟给出了一个很有意思的角度:如果做空个股受限,只能通过基准组合实现对冲的话,阿尔法对冲策略的优化结果通常是在小盘股上持有正头寸,而在大盘股上持有负头寸。这个结论也适用于A股市场。

问题9:市值因子应该怎么取?取市值本身、市值对数、市值平方根有什么区别,哪种更好?你认为流通市值和市值哪个信号更强?

答:取市值平方根计算或市值对数,会减少个股之间市值暴露度的差距。具体哪一种因子计算方式更好,流通市值还是市值哪一个更好,可以通过因子测试验证。就直觉而言,流通市值是一个更能精确地反映股票市值变化的变量,效果可能更好。

问题10:换手率应该怎么计算?如遇长时间停牌,如何处理?

答:换手率一般定义为 交易量/流通股本。由于换手率一般是衡量股票流动性的指标,所以根据多因子模型的调整频率,可以用周换手率、月换手率或年换手率作为指标或者流动性因子。

对于长时间停牌的股票,我个人认可的处理方法是剔除该股票。因为停牌通常意味着有重大消息要发布,其复牌后的收益出现异常波动的可能性较大。这种消息面因素导致的特异收益 (specific return) 通常是无法被多因子模型解释的,所以会给模型的参数估计带来额外噪音。

问题11:若某一因子包含长期平均数据(比如5年平均净利润),而中间有数据缺失的片段(比如最近5年中有2年的年报缺失),应该如何处理?现有两种参考方法:设为空值,或取现有数据的平均值充作长期均值。哪种更好?还是无所谓?

答:作为例子,假设我们在处理一个盈利因子,其第2,3年的数据缺失,考虑三种情况:1 存在缺失值的企业盈利线性增加;存在缺失值的企业盈利线性减少;存在缺失值的股票经营情况来回波动。

如果企业盈利线性增加,剔除缺失值再取平均会导致盈利因子暴露度被高估;

如果企业盈利线性减少,剔除缺失值再取平均会导致盈利因子暴露度被低估;

如果在5年时间区间内企业盈利大幅波动,剔除缺失值再取平均对盈利因子暴露度的暴露度误差的影响无法估计。

对于缺失值的处理没有一劳永逸的方法。其合适的处理方式依赖于数据特点、缺失情况(个别缺失还是大段缺失)、我们计算的目标是什么,等等。因此必须要对具体的问题和数据仔细斟酌,才能找到相对合适的处理方法。

问题12:财务数据应该在哪个时点进行更新?比如月频的多因子模型,年报公布时间可能为 3 月或 4 月,是在3月底的时候即时更新那些已出的数据,还是在4月底统一更新使用?

答:在用历史数据对基本面因子取值进行计算的时候,我们应当保证因子所包含的信息和当时市场上投资者获得的信息一致。对于题目中的例子,如果企业是在 3 月份公布年报,则这些股票的因子暴露度应当在 3 月底进行更新;对于没有公布年报的企业,因子暴露度则维持原来的取值。

问题13:有哪些指标可以用来衡量单因子测试的结果?

答:如果希望判断但因子的预测能力,最常见的基本指标是信息率(Information Ratio, IR)。一些业绩评价的常用指标,例如夏普比率,最大回撤等也可以用于单因子效果判断。

问题14:依据单因子测试结果,如何对因子的有效程度进行排序?或者说,如何用单一指标衡量因子有效性?

答:用问题13的指标对因子进行排序则可。在排序的时候,更常见的方法是采用多个股票池对因子进行多次测试 —— 橘生淮南则为橘,生于淮北则为枳。

问题15:所谓的 “alpha因子” 和 “风险因子”,应该怎么进行区分?

答:alpha 因子通常是对特定证券的预期收益率有预测能力的因子;而风险因子通常是投资者认为他们的信息或者策略对于该维度没有预测能力,并希望实现中性化处理的因子 (先验),或对投资组合的风险存在显著边际贡献的因子 (后验)。由此可见,一个因子是 alpha 因子还是风险因子,部分取决于投资者的信息和经验—— 此之蜜糖,彼之砒霜。

问题16:你理解中有效且有逻辑的因子应该包括哪些?有逻辑但效果较差的因子应该包括哪些?如果采用某种方法组合出一个古怪的因子解释力很强,但是看不出因子的经济意义,你该怎么办?

答:如果我知道有效又有逻辑的因子,那当然不能告诉你了;有逻辑但效果差的话,可能是因为该因子的效应已经体现在证券价格中(有效市场理论)。对于表达式非常复杂难解的因子,可通过计算其对特征组合的暴露度来判断其经济学意义。

问题17:如何打磨旧的因子,提高其有效性?

答:一个思路是,把旧因子和新因子进行组合。在旧因子的预测能力未完全衰减至0,且和新因子存在相关性的前提下,旧因子可以增强新因子的预测能力,或者对冲其风险。

问题18:构建因子的新信息源如何寻找?有哪些思路?

答:略。

问题19:现在常用的因子都是易于量化的因子,对于基本面因子、事件驱动因子、市场情绪因子等不易量化的因子,有无合适的处理方法?

答:在我看来,这些因子不难量化,尽管量化的方式可能因人而异。

问题20:本专栏的上一篇文章封面人物是谁?

答:迷糊的乙姬睦美和机智的小蛋。

*************** 多因子模型测试题回答结束 ***************

多因子模型水平测试题试答(因子部分)相关推荐

  1. 多因子模型水平测试题

    from:https://zhuanlan.zhihu.com/p/20343666 本试题由李腾.陈烨.邓岳. @陈志岗 整理,欢迎补充! 1 试卷说明 测试目标:多因子模型是量化股票组合投资领域的 ...

  2. 多因子模型与细分行业多因子测试源码(以医疗行业为例)

    研究内容 本文主要研究内容是基于rank IC分析医疗板块四大类因子(风格类.技术类.盈利能力类.基本面类)盈利预测能力,以及在此基础上构建医疗板块多因子rank IC赋权模型. 本文将分为以下三个板 ...

  3. 国家普通话水平测试官方软件,国家普通话水平测试题

    2017年最新的普通话测试题目开启了,小编今天为大家带来了一款最新的国家普通话水平测试题,里面有很多关于普通话的测试方法和测试的习题,你可以每天早上练习,把所有的发音都读标准了,肯定能过得到一甲哦. ...

  4. SQL Service水平测试题

    SQL Server 技术水平测试题 一. 语言测试题  (50分) 注:只需写出语句,不必列出执行结果 前提:假设现有两张表,以[A0190](人员编号)为关联.表结构分别如下描述: A01  (人 ...

  5. minitab怎么算西格玛水平_16:三因子二水平全因子实验设计和MINITAB应用训练

    16: 思慧慧咨询官网――精益生产.六西格玛黑带.绿带.TRIZ创新发明.实验设计DOE.价值工程.全面设备管理(TPM)培训和项目咨询​www.sihuide.com 分享地址: 千聊入口1 htt ...

  6. 计算机图学测试题及答,计算机图形学试卷

    1. 计算机图形学考题 一.单项选择题(本大题共10小题,每小题3分,共30分)提示:在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内.错选.多选或未选均无分 1)灰度 ...

  7. 文科学业水平测试题软件,学业水平测试:文科备战理科篇

    原标题:学业水平测试:文科备战理科篇 我们文科生的学业水平测试 作为一个文科生,我不知道对于学业水平测试你们是用什么心态去对待的,是看得很重还是丝毫不看重?毕竟除了某些专业有要求之外,一般学校对学业水 ...

  8. 华为机试——质数因子

    题目描述 功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 ) 最后一个数后面也要有空格 输入描述: 输入一个long型整数 输出描述: 按照从小 ...

  9. 计算机影响因子10.0什么水平,论文的影响因子是什么?由什么决定?_1 论文影响因子10.0什么水平...

    过去的场景在心中回响,过去的笑声在耳边回响,大学去世的时间,宴会即将结束,有多少人不想满足他们的心,有多少人不想成为希望.希望大家能记住未来美好的时光.为了不让大家感到遗憾,今天我们会讨论论文的影响因 ...

最新文章

  1. 【牛腩新闻发布系统】开发前的准备01
  2. 从程序集/类库下面取文件
  3. MSSqlServer基础学习01
  4. 会话管理 轻量php框架_SpringSecurity+JWT权限管理训练营-1基于RBAC模型的权限管理系统...
  5. 查看linux代码版本,如何查看 Linux Mint 版本号和代号 | Linux 中国
  6. 年薪20万的前端工程师成长线路指南!
  7. Day 45 Ansible批量管理
  8. 数据库系统概念第六版 第六章练习题6.11
  9. Python 每日一记1启程
  10. 使用Typora+PicGo+Gitee+坚果云搭建免费高效的个人云笔记
  11. HBuild——创建表格
  12. QQ群发消息c语言编程,简单写一个实现QQ群发功能的软件
  13. Well-ordered String
  14. 每天禅道超时任务、超时未开始任务发送飞书提醒
  15. Mysql 新建用户并且授权用户的访问数据库权限以及可以对数据的操作类型
  16. 支付宝转账-提取根证书失败 AlipayRootCert Is Invalid
  17. 理解时间:时间时区那些事
  18. pytorch训练网络冻结某些层
  19. Eslint +Vue配置
  20. HackTheGame

热门文章

  1. C语言将华氏温度转换为摄氏温度
  2. can sdo 报文
  3. VirtualBOX 虚拟机安装 OS X 10.9 Mavericks 及 Xcode 5,本人X220亲测
  4. poi设置word表格单元格宽度_java poi 设置word 格式如表格一类的
  5. 计算机没网络本地连接接下来,电脑本地连接没有了网络连接的本地连接不见的解决方法...
  6. 几次安全实习面试简单记录
  7. c++画直线、矩形、圆、椭圆
  8. MySQL及数据库相关
  9. ¥符号在安卓上显示只有一个横杠的问题
  10. 不管是否情愿,5G要来了,运营商该做的事一样也不能少