• 量化 多因子策略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 多因子合成代码

  • 相关阅读:
    linux设置开机服务自动启动
    Redis相关指令文档
    Redis配置文件详解
    redis在windows下的安装
    WIN2003+IIS6+FastCGI+PHP5.3的安装配置
    研究生生活点滴一
    数据链路层
    C++中的static成员
    在构造函数中调用构造函数
    Java和C++的不同
  • 原文地址:https://www.cnblogs.com/frankcui/p/16184205.html
Copyright © 2020-2023  润新知