上一篇笔记,我们已经为因子分析准备好了数据。这一篇笔记,我们就进行因子分析。分析过程在 Alphalens 中非常简单,核心是读懂它的报告。
Alphalens 框架
Alphalens 的主要模块是 utils, tears, performance 和 plotting。
utils 主要功能是提供数据预处理,我们已经在上一篇笔记中,已经使用过 get_clean_factor_and_forward_returns 这个方法,实际上是由quantize_factor get_clean_factor和compute_forward_return 这样三个方法构成的。
在这个方法运行时,它会输出这样的提示信息:
Dropped 4.1% entries from factor data: 4.1% in forward returns computation and 0.0% in binning phase (set max_loss=0 to see potentially suppressed Exceptions).
max_loss is 35.0%, not exceeded: OK!
它涉及到因子分析框架的几个步骤,在我们的课程中,对其原理有详细讲解。作为一个快速入门,我们就跳过这些细节。我们只要知道,看到最后的 not exceeded: OK!就大功告成。

这张导图显示了Alphalens的模块组织情况:

performance 模块提供因子分析的基础功能,plotting 模块提供图形绘制功能。而 tears 模块则是将 performance 与 plotting 的操作组合起来,向用户生成报告。
utils 与 tears 模块是用户接口,我们可以只使用这两个模块中的功能,而不去管 performance 与 plotting 模块具体是怎么工作的。
现在,我们来查看 factor_data(请回顾上一篇笔记,以了解这个数据是如何生成的):

列"1D"等代表了对应行所属的时间戳之后的 N 天的收益。factor 则是当时的因子值,factor_quantile 则是该因子在当天中的分层。因此,第一行记录表明,对于 000001 这个标的,在 1 月 3 日,因子为 1.13,属于第二组(由小到大,从 1 开始)。该资产在随后的一天、五天和十天内,累计涨跌幅分别为 4%, 4.9%和 8.8%。

接下来的

本文介绍了如何在Alphalens框架中进行因子分析,包括数据预处理、回报分析(如日均回报和分层回报)、统计特性检查以及图形展示(如violin图和累积回报图)。作者强调了换手率因子的单调性对策略的重要性,并指出Alphalens在某些场景下的局限性。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



