如何高效地生成因子分析报告
由hxgre创建,最终由hxgre 被浏览 4 用户
恭喜各位同学进入最终的决赛阶段!本次决赛将采用线上答辩的方式,要求参数者撰写因子研究报告并提供源码,以压缩包的形式提供。如下图所示,须包含以下两个文件:
- 源码.ipynb:**必须是私榜阶段提交的代码!**不得上传其他代码,平台会逐一核实。
- 因子报告:您撰写的因子研究分析报告,可以是 .pdf 或者 .md 格式。
\
报告生成代码脚本
为了参赛者更加顺利高效地生成因子报告,我们提供了一个完整的例子,供参赛者借鉴。具体请查看以下代码链接:
https://bigquant.com/codesharev3/a2a263ef-3713-4579-bad4-330b914ab448
上述代码主要分成以下几个部分:
1数据生成&因子分析
运行您的因子代码构建因子数据,并如初赛阶段一样运行 M.factorlens.v4 进行单因子分析,==注意:将 M.factorlens 的版本改为 v4!==该版本模块会返回因子分析的结果数据。
在决赛阶段,除了训练集数据,我们也公开了测试集数据,方便参赛者进行多角度测试:
- 训练集数据
- 表名:
cpt_jyc_2025_stock_csi1000_bar1m - 链接:https://bigquant.com/data/datasources/cpt_jyc_2025_stock_csi1000_bar1m
- 时间段:2023-01-01 至 2024-12-31
- 表名:
- 测试集数据
- 表名:
cpt_jyc_2025_stock_csi1000_bar1m_test - 链接:https://bigquant.pro/data/datasources/cpt_jyc_2025_stock_csi1000_bar1m_test
- 时间段:2025-01-01 至 2025-07-31
- 表名:
注意:cpt_jyc_2025_stock_csi1000_bar1m_test存储了2024年9月以来的数据,方便部分参赛者构建时序类因子,但在公榜阶段,打分只选择2025-01-01 至 2025-07-31的因子数据。
2. 获取分析结果
M.factorlens.v4 运行结束后将相关数据返回给变量m,m是dict,包含以下两个值:
- _result:存储 IC均值、ICIR、夏普比率、换手率 四个用于计算排名的指标。
- _detail:存储分组回测、IC分析的相关数据。
**m[“detail”]**存储的是一个BigQuant平台特有的数据格式,可以通过 read_pickle() 读取为 python 的 dict 形式,包含以下内容:
- whole_perf:分组回测中,多头(因子值最大)、空头(因子值最小)、多空组合的整体表现。
- yearly_perf:多头组的年度统计指标
- ic_perf:IC 的时序统计指标,包括:
- g_ic:当日的因子值与未来一日收益率的截面相关性
- g_rank_ic:当日的因子值与未来一日收益率的截面相关性(rank)
- ic_cumsum:g_ic 的累加值
- ic_roll_ma:g_ic 的滚动22日的均值
- group_cumret:分组的收益时序数据
- 第0组因子值最小即空头
- 第9组的因子值最大即多头(这里9取决于您的分组数量)
- ls为多空组的收益率,即第9组减去第0组的收益率
- bm指基准指数的收益率
- factor_name:因子名称
统计 & 绘图
因为 M.factorlens 生成的因子分析结果是基于 BigQuant 平台特有的画图工具,无法转换为 png 等格式,所以,我们提供了多个python代码模版用来绘制相关统计指标和图片,用于生产相关报告材料,详情如下:
- save_image:将image保存到指定目录下,用在 render_factor_data、render_cumulative_returns、render_ic_timeseries 三个画图的函数中。
- render_factor_data:画出原始因子数据和处理后的因子数据的分布对比图,如分布直方图、箱线图、QQ图等。
- render_whole_performance:将多头、空头、多空组合的绩效表现转换为 markdown 格式。
- render_cumulative_returns:画出分组收益率走势图。
- render_ic_metrics:将IC的统计指标转换为 markdown 格式,如 IC均值、IR、IC绝对值>0.02的比例等
- render_ic_timeseries:画出IC的时序图,包括当日IC值、IC时序累计值等。
==注意:上述代码框架只是模版,仅供参考!各位参赛者不必局限于只计算和展示这些指标,我们鼓励参赛者对您构建的因子进行更加深入的分析!==
生成 markdown 格式的报告
参考以下代码,我们可以将前文生成的指标和图片保存到 markdown 格式的文档中。如需下载,右键点击相关的文件夹进行下载。
将 markdown 转换为 pdf
我们接受 markdown 格式的因子报告,如果您想生成更加规整的 pdf 因子报告,可以利用 vscode 中的 Markdown PDF 插件 将 markdown 文件转换为 pdf 文件。
\
培训录屏
\