VIF方法(方差膨胀因子)因子独立性检验 全流程解读

VIF方法(方差膨胀因子)因子独立性检验 全流程解读    基于因子模型的选股策略是股票市场量化应用最广泛的模型之一。然而很多时候,使用因子模型在实盘运行的绩效并不理想,究其原因可能是由于因子选择的偏差,市场风格轮动等。但还有一个显著的因素,就是选取因子之间可能存在高度的多重共线性,导致模型对股票价格与市场的解释能力存在很大偏误。       为了在筛选因子之初就避免陷入这样的误区。本文介绍一种VIF(方差膨胀检验)方法,来对因子之…

大家好,又见面了,我是你们的朋友全栈君。

       基于因子模型的选股策略是股票市场量化应用最广泛的模型之一。然而很多时候,使用因子模型在实盘运行的绩效并不理想,究其原因可能是由于因子选择的偏差,市场风格轮动等。但还有一个显著的因素,就是选取因子之间可能存在高度的多重共线性,导致模型对股票价格与市场的解释能力存在很大偏误。

 

       为了在筛选因子之初就避免陷入这样的误区。本文介绍一种VIF(方差膨胀检验)方法,来对因子之间的线性相关关系进行检验,从而帮助投资者们在可以选取到独立性更好的因子,增强因子模型的解释能力。

 

 

一、方法介绍

 

 

  所谓VIF方法,计算难度并不高。在线性回归方法里,应用最广泛的就是最小二乘法(OLS),只不过我们对每个因子,用其他N个因子进行回归解释。

 

  其中有一个检验模型解释能力的检验统计指标为R^2(样本可决系数),R^2的大小决定了解释变量对因变量的解释能力。而为了检验因子之间的线性相关关系,我们可以通过OLS对单一因子和解释因子进行回归,然后如果其R^2较小,说明此因子被其他因子解释程度较低,线性相关程度较低。

 

  注:之所以不使用协方差计算相关性是由于协方差难以应用在多元线性相关情况下。给出VIF计算方法:

 

                                                                  VIF方法(方差膨胀因子)因子独立性检验 全流程解读

 

从上文很容易看出,VIF越高解释变量和因变量之间线性相关性就越强。

 

 

二、检验实践

 

 

  数据来源:聚宽量化平台投资研究板块

  选取因子:EPS(每股收益),

  ROE(净资产收益率),

  market_cap(市值),

  pb(市净率),

  ’net_profit_ratio’(销售净利率),

  ’gross_income_ratio’,(销售毛利率)

  ’quick_ratio’,(速动比率)

  ’current_ratio’(流动比率(单季度))

  (后面四个因子来源于聚宽因子库)

 

时间窗口选取:2012.3.4—2018.7.4

回望频率:两个月检

 

 

1. 获取数据:(鉴于篇幅仅展示2012-03-04当日前十支股票相关因子数据)

 

                               VIF方法(方差膨胀因子)因子独立性检验 全流程解读

 

2. 缺失值检验:(鉴于篇幅仅展示2013-03-04当日检验情况)

返回0代表无缺失值,返回其他数字代表缺失值数量

 

                                                      VIF方法(方差膨胀因子)因子独立性检验 全流程解读

 

3. 被检验两两因子间线性相关性预了解(图例,鉴于篇幅仅展示2013-03-04当日检验情况)

 

   VIF方法(方差膨胀因子)因子独立性检验 全流程解读

                                             案例图表示,各因子对市值因子market_cap的解释能力

                                                  蓝色阴影部分,是回归直线斜率95%的置信区间

 

4. 计算并获取每个时点下被解释因子与其余7个因子之间的回归VIF值,绘制时间序列图

 

                                         VIF方法(方差膨胀因子)因子独立性检验 全流程解读

 

  分别是百分比堆积图,和绝对数值图(柱状图)。通过百分比堆积图可以看出,各因子的VIF值全程比较稳定,所以其占据总体的百分比也稳定。柱状图可以看出各因子值细节,各位读者可以去聚宽克隆该研究,即可看到更清晰图片。

 

5. 全段测试计算时间内,各因子VIF值均值,比较大小(图例)

 

                                       VIF方法(方差膨胀因子)因子独立性检验 全流程解读

 

6. 相比而言quick_ratio这一因子的VIF在窗口期平均值较低,因而这就提示了我们如果在构建因子模型时,采用其余其中因子时可以考虑添加这一因子,增强模型的解释能力。

 

 

三、方法总结与体会

 

 

  使用VIF进行检验的方法主要为,对某一因子和其余因子进行回归,得到R^2,计算VIF,剔除因子中VIF高的因子,保留VIF较低的因子,以此类推,直到得到一个相关性较低的因子组合来增强模型的解释能力。

 

  在实际测试过程中,并非要指定一个VIF阈值,比如某因子的VIF值超过阈值才剔除,而是通过观察所有因子值的VIF值,如果发现该值较大(显著离群),剔除该因子即可。本次我们的几个因子表现都非常出色,VIF值稳定且没有离群较大值,因此,没能找到任何一个需要剔除的因子。

 

点击阅读原文

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132336.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • RestFul风格「建议收藏」

    RestFul风格「建议收藏」RestFul风格概念Restful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。功能资源:互联网所有的事物都可以被抽象为资源资源操作:使用POST、DELETE、PUT、GET,使用不同方法对资源进行操作。分别对应添加、删除、修改、查询。传统方式操作资源:通过不同的参数来实现不同的效果!方法单一,post和get​ http://127.0.0.1/item/queryItem.actio

    2022年6月15日
    28
  • mysql语句和sql语句的区别_mongodb和mysql的区别

    mysql语句和sql语句的区别_mongodb和mysql的区别MySQL和SQL之间的区别有哪些?很多PHP的初学者,对MySQL,MyAdmin和SQL有什么区别并不是很清楚?下面php中文网就带领大家来学习一下MySQL和SQL之间的区别。【推荐阅读:MySQL什么意思】一:什么是SQLSQL是一种数据库语言,可以定义和操作数据库。SQL由ISO(国际标准化组织)标准化,和其他数据库中几乎是相同的方式运行,SQL大致分为三种语言。它在控制和操作数据库时使…

    2022年9月28日
    2
  • Response.ContentType

    Response.ContentType说明一下,类中的HttpContext.Current.Response.ContentType表示要导出文件的类型,下面是对Response.ContentType类型的汇总在ASP.NET中使用R

    2022年7月1日
    19
  • dell T420热插拔安装过程

    dell T420热插拔安装过程

    2022年3月6日
    52
  • Fibers_fiber bundle

    Fibers_fiber bundle要理解Fibers首先需要对抢占式多任务和协作式多任务有所了解抢占式多任务抢占式是指暂停或中断正在执行的计算任务,而不是与其合作。中断后再继续恢复该任务的执行,这种改变又称为上下文切换。其缺点在于操作系统可能会在一个不适当的时间进行上下文切换。例如:Linux的调度程序特权任务Scheduler采用的就是取消进程任务,而不是与其合作。协作式多任务早期的多任务处理系…

    2025年8月21日
    3
  • mysql报错 1142 – SELECT command denied to user ‘root_ssm’@’localhost’ for table ‘user’「建议收藏」

    mysql报错 1142 – SELECT command denied to user ‘root_ssm’@’localhost’ for table ‘user’「建议收藏」错误信息的字面意思是:表“user”拒绝用户“root_ssm”@“localhost”的命令,很明显用户没有权限,那就给他授权呗!一、使用客户端授权(NavicatPremium12)1、使用root用户登陆mysql2、新建查询,输入指令:usemysql;select*fromuserwhereuser=’root_ssm’;SQL语句wh…

    2022年10月1日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号