历史文档

因子管理 (副本)

由qxiao创建,最终由qxiao 被浏览 4 用户

因子管理

提交因子任务

1,开发环境提交任务

{w:100}{w:100}{w:100}2,在开发环境点击“因子研究”按钮,转至因子研究中心查看任务

{w:100}{w:100}{w:100}{w:100}{w:100}

\

提交因子审核

1,在“我的因子”页面点击“发布因子”,发布至有权限的库

{w:100}{w:100}{w:100}{w:100}{w:100}2,库管理员审核因子,审核通过的因子出现在“因子看板”中

{w:100}{w:100}{w:100}{w:100}{w:100}

因子看板

点击因子名可查看详细绩效

{w:100}{w:100}{w:100}{w:100}{w:100}

库成员管理

1,超级账号可以添加因子库

{w:100}{w:100}{w:100}{w:100}{w:100}2,库成员管理

{w:100}{w:100}{w:100}{w:100}{w:100}

因子有效性检验

可用于因子有效性检验的模块包含因子研究看板和因子分析功能

因子研究看板介绍

通过点击上方导航栏中的因子看板按钮进入因子看板界面。通过因子看板功能,我们可以每日对各类因子的最近收益情况进行比对监控,方便我们在构建策略时进行合理的因子选取和组合。

支持通过条件进行查询,查询和展示的指标可以通过自定义看板按钮设置

{w:100}


看板界面包含了多个选项:

  • 分类选项中我们预先定义了估值、成长、财务质量、杠杆、规模、动量、波动率、流动性、资金流、每股因子、技术指标因子、WorldQuant因子和短周期等多个类别的因子。
  • 股票池选项中我们预先定义了全市场/沪深300/中证500/中证800股票池。
  • 回测周期可以选择近1年/近3年。
  • 调仓周期默认按30个自然日轮仓。
  • 过滤股票选项中默认过滤了ST、涨跌停和新股。
  • 手续费和滑点默认在每个轮仓日扣除千分之1.3的印花税和佣金。
  • 默认按因子值从小到大分为五个分位组别,最低分位表示因子值最小的组合,最高分位表示因子值最大的组合。
  • 平台对因子数据统一提供缺失值处理(dropna)、去极值(中位数法+3倍标准差)、标准化处理、行业中性化、市值中性化处理(行业哑变量和对数市值回归计算残差)。其中,市值因子仅行业中性化处理。
  • 收益率统计展示默认展示昨日收益率、近1周1收益率和近1月收益率。
  • 平台每日会计算更新这些选项组合对应的因子评价指标并形成看板。
  • 看板中的因子评价指标包含每个因子最高/最低分位组合的昨日收益率、近1周收益率和近1月收益率以及回测周期阶段内的因子IC序列均值、IR值和拥挤度及估值。

{w:100}{w:100}{w:100}{w:100}{w:100}

我们通过点击看板上每个因子的因子名称链接,可以进入到下图所示的因子详情界面。

{w:100}{w:100}{w:100}{w:100}{w:100}在因子详情界面中包括:

  • 收益分析:展示了因子的分组收益/多空收益时间序列的阶段收益率、最大回撤、夏普比率、收益波动率指标、因子分组收益净值曲线、因子多空(最低分位-最高分位)日收益和净值曲线。

  • 因子分布:原始因子柱状图,去极值、标准化、行业中性化、市值中性化处理处理后的因子柱状图 ,因子行业分布和因子市值分布图。 IC分析:包括因子IC序列(期初因子和当期收益相关性),IC序列的均值和IC序列的标准差,以及IR值=IC序列的均值/IC序列的标准差, |IC| >=0.02比率,IC信号衰减分析:当期因子与滞后n期收益率的相关性,不同换仓周期买入信号的重合度。重合度越高反应因子排序变动大,轮仓交易成本越大。

  • 因子估值分析:展示因子的各分组市净率中位数,反映了所选股票的估值高低。

  • 因子拥挤度分析:用换手率来表征分组股票的交易拥挤程度,因子拥挤度越高表示换手率越高。

  • 因子值最大/最小的20只股票:展示了最近轮仓日按因子大小排序因子值最大的20只股票和因子值最小的20只股票。


    由于计算资源的限制,平台针对看板默认的配置组合进行了每日数据更新,如果自定义分析时间段或是改变轮仓周期、修改因子处理方式等,可以通过因子分析模版更灵活地实现。

因子分析模版介绍

我们可以通过点击因子看板中的某个因子,进入因子详情界面,点击右上方的自定义分析按钮打开一个因子分析模版。

{w:100}{w:100}{w:100}{w:100}{w:100}

也可以通过新建一个空白可视化策略,如下图所示,拖入输入特征列表和因子分析模块。我们可以在输入特征列表中通过表达式引擎,分行输入多个要分析的单个因子表达式,例如:return_5、pe_ttm_0,并连接到因子分析模块。

{w:100}{w:100}{w:100}{w:100}{w:100}

我们可以看到因子分析模块的属性栏中包含如下参数:

  • 分析报告标题:绘图所用的分析报告标题,默认输出的标题名为“因子分析”+因子表达式
  • 开始日期和结束日期:设置因子分析的起止日期
  • 调仓周期:设置按因子排序进行组合调仓的周期,eg.设置为22表示每22个交易日按因子值排序并分组
  • 股票池:设置分析的股票池范围,以便在给定的股票池范围按因子值大小排序分组。可选的股票池范围包括:全市场、沪深300、中证500和中证800
  • 分组数量:设置按单因子排序后的分组数量,分组数量越大则因子分析越精细分组之间的收益差异越大,更利于观察因子头部/尾部的收益特征,但计算耗时也越长,每组股票的容量也越小。
  • 手续费及滑点:在每个调仓周期扣除换仓的手续费和滑点成交金额总费率。为了方便计算,这里默认每次轮仓按全仓金额扣除千分之一点六。
  • 移除涨跌停股票:设置是否在股票池中移除涨跌停股票。 移除ST股票:设置是否在股票池中移除ST股票。
  • 移除新股:设置是否在股票池中移除新股。
  • 因子去极值和标准化:设置因子在排序分组前是否进行去极值和标准化处理,主要为了排除异常值对排序的影响,标准化使得不同因子之间的数据范围大致相同。
  • 中性化风险因子:设置因子在排序分组前是否进行中性化处理,默认对因子进行行业哑变量和对数市值多元线性回归,将残差作为中性化后的因子值。这样处理通常是避免单纯按因子排序造成的行业或公司大小的偏向性。对于市值因子做中性化处理时无需勾选市值选项,仅对行业进行回归计算残差即可。
  • 输出指标:勾选所要输出的结果图标选项,包含了:
    • 基本特征分析

      基本特征分析包括了因子原始值和经过去极值、标准化、中性化处理后因子值的直方分布图,支持图表下载。可以通过因子直方图分布来观察是否因子本身分布具有左/右偏等特性,可通过对数/平方根等函数对因子表达式进行调整,因为在数据分布的偏度和峰度影响下,可能会把过量的数据认定为异常点。当多个因子的分布都为近似正态分布时,基于均值-标准差标准化得到的zscore 才有可比性。否则样本偏度和峰度的影响会使得个股在某一个因子上的得分明显偏大或偏小,其在多因子中的效用被显著放大或缩小。此外,因子收益率由横截面回归得到,其显著性检验有赖于残差项的正态分布假设,虽然线性回归对解释变量与被解释变量的分布没有要求,但当解释变量和被解释变量满足正态分布时,更容易得到符合正态分布的残差。

    • 分组收益分析

      分组收益展示了每个轮仓周期按因子排序分组,买入并持有各组股票所获取的累计净值曲线。每个轮仓周期中,因子值最小的一组股票为最小分位组,因子值最大的一组股票为最大分位组。同时展示了做多最大分位组股票同时做空因子值最小一组股票所获取的多空组合累计收益率曲线,通过计算 多空组合的日收益率 = (最大分位组股票日均收益率-最小分位组股票日均收益率) / 2 ,然后计算累计净值得到。同时,在上方展示了最小分位组合、最大分位组合、多空组合的回测期累计收益率、最大回撤、夏普比率、收益波动率和昨日、近1周、近1月、近3月、近1年的收益率数值。通过分析各组收益曲线的发散程度,可以判断因子是否显著具备线性区分股票的能力、以及因子方向等关键信息。

    • 分组收益分析

      分组收益展示了每个轮仓周期按因子排序分组,买入并持有各组股票所获取的累计净值曲线。每个轮仓周期中,因子值最小的一组股票为最小分位组,因子值最大的一组股票为最大分位组。同时展示了做多最大分位组股票同时做空因子值最小一组股票所获取的多空组合累计收益率曲线,通过计算 多空组合的日收益率 = (最大分位组股票日均收益率-最小分位组股票日均收益率) / 2 ,然后计算累计净值得到。同时,在上方展示了最小分位组合、最大分位组合、多空组合的回测期累计收益率、最大回撤、夏普比率、收益波动率和昨日、近1周、近1月、近3月、近1年的收益率数值。通过分析各组收益曲线的发散程度,可以判断因子是否显著具备线性区分股票的能力、以及因子方向等关键信息。

    • IC分析

      IC值是每个轮仓周期期初因子值与因子当期收益率相关性分析,绝对值越大说明因子与当期收益率的相关性越显著。这里展示了回测阶段内,每个轮仓周期的IC值并进行了时序展示,计算了IC绝对值的均值和标准差,同时计算了IR = IC序列均值/IC序列标准差 用来刻画因子与收益率相关性的稳定程度

    • 行业分布分析

      行业分布展示了在给定回测时间阶段范围内,去极值、标准化和中性化处理后的因子数据按行业的分布,包括每个行业中处理后因子数据的最大值/上四分位/中位数/下四分位/最小值。

    • 市值分布分析

      市值分布展示了在给定回测时间阶段范围内,去极值、标准化和中性化处理后的因子数据按市值大小的分布,这里按照市值大小划分为超小型、小型、中型、大型和超大型共五个区间进行展示。包括每个市值组别中处理后因子数据的最大值/上四分位/中位数/下四分位/最小值。

    • PB估值分析

      PB估值分析展示了按处理后的因子数据线性分组后,每组股票的市净率中位数,PB估值一定程度上反映了因子的估值程度,我们倾向于通过因子线性分钟能够构建出一个组合,该组合个股PB值较低,以致整体组合的PB值也较低,对于股票多头而言,买入估值处于洼地的组合是更优的选择。同时,我们可以使用该指标进行因子择时,当该因子处于低估值时进行超配,反之,减少配置。

    • 换手率分析

      换手率是反映因子拥挤程度的另一个指标,通过计算各分位组股票的换手率表征股票的博弈剧烈程度,换手率越高说明因子拥挤度越高,可能发生交易踩踏导致因子的快速失效,对于预测因子失效具有一定的参考意义。

    • 信号重合度分析

      对最小和最大分位两组股票,计算了当期和滞后N期所选股票的重合度,重合度高说明因子的排序变动慢、换手率较低即轮仓交易成本较低,反之重合度低说明因子的排序变动快、换手率较高即轮仓成本较高。

    • 股票筛选

      给出了最近一期轮仓日依据处理后的因子排序选出的最大分位和最小分位股票池。

    • 多因子相关性分析

      展示了不同因子时间序列的相关系数,通过相关系数方便我们后续对因子进行相关性分组,尽量避免模型中多个高度相关因子的共线性造成因子冗余,进而提高模型对收益的解释能力和鲁棒性,提高收益预测能力。 同时,提供了多个因子最大/小分位组/多空收益的比对图、IC序列比对图、PB估值序列比对图和拥挤度比对图图,以及各因子最大/小分位组在最近1月、最近1年和回测时间内的累计收益率,以及回测时间段内的IC均值和IR值、最新拥挤度和最新估值。

\

{link}