传统的多因子组合方式,我目前见到过两种:

  • 因子打分。若现有多个因子,当因子值大于零意味着预测价格上涨,因子值小于零意味着价格下跌,那么可以将这些因子对资产一一打分,若某一因子对某一资产的值为正,则+1分,否则-1分。那么择股的时候,可以选取分数较高的股票。
  • 因子合成。这是一种将多个因子合成为一个因子的做法,比如简单求均值、加权求均值等。

这两种方法都有一定程度上的问题。因子打分可以很好地让所有因子都参与到选股中,但是如果因子数量不多,很容易造成存在很多股票的分数相同的情况,不好选股。而因子合成则难以确定权重,特别是在不同因子的数量级差别很大的情况下。

因此,构想一种新的因子组合方法,尽管还没有实现:将所有股票按照所有因子的值从小到大排序,并将这些排序值相加,选取排序值总和最大的股票。如果要剔除相关性较大的股票,只需要剔除排序值总和较小的那一只股票,并继续向下搜索即可。这样的方式可以保证每个因子都具有相同的决策权重,且最后总分相同的情况应当不多。

设想一个问题,假如两只股票在某个因子的数值相同呢?对于这样的场景,可以考虑将两只股票的排名平均一下,比如如果有4支股票在某一因子下并列第一,那么其排名都等于 ${1+2+3+4\over4}=2.5$。

当然,这一因子组合方式也存在弊端,比如无法对因子进行加权,所有因子都具有相同的权重。为了规避这个问题,可以考虑给因子排序后的排名加权,比如某一因子的排名都除以2;也可以考虑将某一因子的值都减少0.5,使得因子排序值相同时,优先考虑另一因子。