量化 - 多因子策略2 : 单因子有效性,多因子相关性,多因子合成

学习目标:

 

 

一、多因子的筛选阶段介绍

 

 

 

1.1 挖掘因子的过程

 

 

二、单因子有效性分析 - 目的

 

 

 

 

三、单因子有效性分析 - 因子IC分析 (信息系数 Information Coefficient)

 

 

 

 

3.1 信息系数IC的定义

 

 

 

什么是因子暴露值

其实就是因子本身在某一天的值。。。

 

 

信息系数IC计算方式 - 斯皮尔曼相关系数

越靠近1,正相关越强;

越靠近-1,负相关越强

 

 

 

3.2 如何求收益率

收益率区间:

 

 

计算公式:

 

 

3.3 案例:单因子某天的IC分析

需求:

 

 步骤:

 

 

 

3.4 因子分析工具 - Alphalens

 

 

alphalens独特的数据结构

 

 

factor数据结构:

 

 

 

price数据结构:

 

 

alphalens常用API

注意:这部分API需要传入数据的格式,是上一part return的merged_data

 

 

3.5 案例:使用alphalens进行单个因子的IC分析

。。。

3.6 因子IC效果图分析

三种图形分析

 

 时间序列图 + 移动平均图

 

 

因子IC分布直方图

 

因子IC Q-Q图

 

 

 

3.7 因子有效性分析表格填充

IC > 0.02

 

 

 

 

IR = IC mean / IC std -- 代表因子的稳定性

 

 

 

四、单因子有效性分析 - 因子收益率分析

 

 

为了得出如下结论:

 

 

4.1 什么是因子收益率

 

 

 

 

注意:这里求出来的系数(因子收益率),应该只有一个值!

 

 

4.2 因子收益率计算

 

 

计算数值结果

 

 

分位数分组结果

这里1-5的含义是:根据所选因子(这里是earnings_per_share)在所选股票列表(近3000只股票)中的因子值,按照0.2,0.4,0.6,0.8分成5组

可以看到大于0.8的这一组 -- 也就是第5组,平均收益表现最好。其因子方向是“因子降序” -- 因子越大越好

因此如果该因子将来用在回测中进行选股,就要选择因子值大的那部分股票进行交易。

 

 

 

 

4.3 因子在周期内的平均收益 率

 

 

 

 

 

五、单因子测试框架 和 单因子回测框架搭建

 

 

5.1 单因子测试框架

 

 

将所有统计的因子打分排名

 

 

5.2 单因子回测框架

这里的1-5组,依然是之前说的:按照0.2,0.4,0.6,0.8分成5组 。真实回测一次,验证是否是第5组收益最好。

 

5.3 分类因子

 

 

六、多因子相关性分析

通过之前的各种代码,从5.3节每一类的因子中,筛选出表现最好的1-2(数量自定)个因子后,需要对这些因子的IC序列进行斯皮尔曼相关系数计算。

一般来说,同类别的相关性强一些;不同类别的相关性弱一些。

需要把(同一大类别里)相关性较高的,找出来。

 

 

6.1 如何计算因子间的相关性

 

 

 

结果样例:

这里把相关性大于0.7的都标红了,表示相关性高。

 

 

七、多因子合成

应用PCA(主成分分析)进行多个高相关因子的合成。

是在回测的时候,做因子合成进行选股。

对于因子的暴露值--某一天的因子值(而不是因子的序列值--一段时间的因子序列)进行合成。

 

7.1 多因子合成代码

 

posted on 2022-04-24 00:55  frank_cui  阅读(7176)  评论(2)    收藏  举报

导航

levels of contents