返回列表 发布新帖

怎么样全市场可转债因子分析算法研究?

29 1

今天我们开始学习小果因子分析系统的第一个内容,怎么样对全市场的可转债进行因子分析,检验因子分析,因子的效果,是不是值得做选股交易,后面会涉及到更复杂的因子分析,比如多因子分析,非线下因子分析,非线性多因子分析,还有我们常见的非数值类型的因子分析,最简单的例子就是金叉,死叉,感觉又回到了大学金融工程的课堂,上一个文章我们介绍了因子分析的原理算法研究--什么是股票因子分析原理分析,下面我们利用全市场可转债的的MACD因子分析,来检验MACD这个因子是不是有效果的,打开分析系统,算法研究--怎么样全市场可转债因子分析算法研究https://mp.weixin.qq.com/s/UHBRiURlyAQeoM7Lgettnw?scene=1&click_id=15

3169ebc30ac19d5671023b569a6fff8a.png

分析框架我写了1000多行的代码,分析的内容还是很全面的

ef77a6bcc0aee620b1bfce988de371ef.png

第一步读取全市场可转债的代码,调整为qmt可以识别的格式,数据利用qmt的

c244564bc33df60f90b98b842268c8be.png

第二步利用指数的时间长度,建立数据表的框架,这样可以把不同上市的标的数据合在一个表,没有的数据利用none填充就可以

5a1bbedba8e5b16a7d6d2f99735237fc.png

第三步生成因子数据价格数据,注意数据的时间格式要一样,读取历史数据,计算因子合并因子数据

b1d3da7dcac5f262c082cb839bc768e7.png

把数据转成分析系统可以识别的因子数据框架,2个索引数据

factor_series = factor_df.stack()
factor_series.index.names = ['date', 'asset']
print(factor_series)

014f63fcc947f2bc2996985f28c272ca.png

对因子数据继续分组,设置因子分析的参数,导入因子分析框架

818612b9d0f6fdea2dc141109abb1d37.png

对因子数据分组,处理因子标签

5c97484f093039ecf03d76a579693715.jpg

第四步开始因子分析,启动分析框架

9ac7a23538ccb1e02e97ee9c7c212c6a.png

下面我就截图分析的内容,指标方便参考因子分析的原理

3389b08c7956da4fe23b953be2700e61.png

04d3a8f6705c798b669b28c06791eda7.png

da35fb83348d0437dbd574c0261631c8.png

eb7c9c8b8e433e5e0a9b79e67cd67001.png

d1e299c7a02d9220afa24a7f4e59f084.png

7d06e9818977b2b96e1cae27c950a56d.png

5ebaf055bb08905683199496a23b4ed1.png

b4348f9a98570afb53499d880f828a4c.png

d51ecbef0d58f6b138c8617235f6892a.png

a7bfa509c4e5faed5f71fe28a47d2129.png

96f7bda1f0a8d94ff67ae7feb2476f21.png

>>> 分层收益绩效 (未来1D日) <<<
      日均收益 (bps)  年化收益 (%)  波动率 (年化)    夏普比率  最大回撤 (%)    卡玛比率   胜率 (%)  \
1.0       3.8299   10.1303   21.6363  0.4461  -25.3737  0.3992  51.8898   
2.0       5.3086   14.3096   14.0490  0.9522  -14.8582  0.9631  53.6220   
3.0       4.0799   10.8260   12.1789  0.8442  -19.3124  0.5606  53.5433   
4.0       4.3084   11.4658   11.1815  0.9710  -18.6742  0.6140  55.1969   
5.0       4.2800   11.3861   10.7341  1.0048  -16.1773  0.7038  54.7244   
6.0       3.9451   10.4505   10.6873  0.9302  -19.3975  0.5388  53.4646   
7.0       3.0747    8.0551   10.9213  0.7095  -22.8983  0.3518  52.2047   
8.0       3.5072    9.2387   11.9798  0.7377  -23.3432  0.3958  52.3622   
9.0       0.1229    0.3101   13.7954  0.0224  -41.1866  0.0075  51.9685   
10.0     -4.0875   -9.7896   20.7225 -0.4971  -66.0735 -0.1482  48.7402   
      最大单日收益 (bps)  最小单日收益 (bps)  
1.0       519.0975    -1059.7116  
2.0       425.0273     -631.6201  
3.0       340.8297     -502.6342  
4.0       290.7695     -400.5401  
5.0       287.5467     -455.8497  
6.0       350.2365     -464.4760  
7.0       511.0979     -443.0226  
8.0       425.8704     -534.9824  
9.0       482.5497     -621.7107  
10.0      673.6289     -611.9344  
>>> 分层收益绩效 (未来1D日) <<<
      日均收益 (bps)  年化收益 (%)  波动率 (年化)    夏普比率  最大回撤 (%)    卡玛比率   胜率 (%)  \
1.0       3.8299   10.1303   21.6363  0.4461  -25.3737  0.3992  51.8898   
2.0       5.3086   14.3096   14.0490  0.9522  -14.8582  0.9631  53.6220   
3.0       4.0799   10.8260   12.1789  0.8442  -19.3124  0.5606  53.5433   
4.0       4.3084   11.4658   11.1815  0.9710  -18.6742  0.6140  55.1969   
5.0       4.2800   11.3861   10.7341  1.0048  -16.1773  0.7038  54.7244   
6.0       3.9451   10.4505   10.6873  0.9302  -19.3975  0.5388  53.4646   
7.0       3.0747    8.0551   10.9213  0.7095  -22.8983  0.3518  52.2047   
8.0       3.5072    9.2387   11.9798  0.7377  -23.3432  0.3958  52.3622   
9.0       0.1229    0.3101   13.7954  0.0224  -41.1866  0.0075  51.9685   
10.0     -4.0875   -9.7896   20.7225 -0.4971  -66.0735 -0.1482  48.7402   
      最大单日收益 (bps)  最小单日收益 (bps)  
1.0       519.0975    -1059.7116  
2.0       425.0273     -631.6201  
3.0       340.8297     -502.6342  
4.0       290.7695     -400.5401  
5.0       287.5467     -455.8497  
6.0       350.2365     -464.4760  
7.0       511.0979     -443.0226  
8.0       425.8704     -534.9824  
9.0       482.5497     -621.7107  
10.0      673.6289     -611.9344  
>>> 多空组合 (Q10.0 - Q1.0) 绩效 <<<
年化收益: -18.0938%
年化波动: 18.9429%
夏普比率: -0.9552
最大回撤: -75.6687%
胜率: 44.96%

47538f92ad243219f469756bf84a171c.png

fab41d6417a4c9019fa4472396fc9e8d.png

fab41d6417a4c9019fa4472396fc9e8d.png

52f0fe51e4c382fc4ceae55baf910a88.png

7a3592e737b7450ee9d7b96805f9e940.png

34a73f7abe2cbb0214dc13e75949ce0a.png

教程的使用只是框架的冰山一角,模型开发结合了我多年的金融工程经验改进,不懂的问我就可以,加我备注入群可以加入量化研究群

73661ca36af6eca5bb9679f906d2539a.jpg

量化福利,找我开户专业的量化支持

d658a5adb0dd426826feb84f6296b226.png

总结分析MACD不是一个很有效果的指标,需要结合其他的因子分析,生成的分析结果报告

>>> Fama-MacBeth 回归 (因子溢价) <<<
Fama-MacBeth 因子溢价 (1D): 常数项=0.000255, 因子系数=-0.000147
解释: 因子值每增加1单位,未来1D日收益变化 -1.47 bps
------------------------------------------------------------
【1】信息系数 IC 均值(预测方向准确率)
    IC = 因子值与未来收益的相关系数,范围 [-1, 1]。正值表示因子越大未来收益越高。
    当前 IC 均值 = -0.0362
    🔄 评价:负相关,因子值越大未来收益越低(可反向使用)。
------------------------------------------------------------
【2】ICIR(信息比率,IC均值 / IC标准差)
    衡量因子预测的稳定性,越高说明每次预测的可靠性越一致。
    当前 ICIR = -0.1919
    ❌ 评价:较差(<0.2),因子预测忽高忽低,不靠谱。
------------------------------------------------------------
【3】多空组合夏普比率(做多因子最大组,做空最小组)
    衡量因子区分好坏股票后,多空对冲策略的风险调整收益。夏普 > 1 优秀。
    当前多空夏普 = -0.9552
    ❌ 较低(<0.5),直接交易该因子意义不大。
------------------------------------------------------------
【4】平均换手率(每日因子分组中股票变动比例)
    换手率越低,交易成本越低,策略越容易实现。
    当前平均换手率 = 0.8686(每日约 86.9% 的股票换出)
    ❌ 高换手(>60%),频繁交易会严重侵蚀收益。
------------------------------------------------------------
【5】因子自相关系数(一阶自相关,衡量因子值的稳定性)
    数值越高,因子变化越慢,选股逻辑越连贯。
    当前因子自相关 = 0.9544
    ✅ 高稳定性(>0.8),适合低频策略。
------------------------------------------------------------
【6】Fama-MacBeth 因子溢价(单位因子值带来的日度超额收益)
    当前因子溢价 = -1.47 bps
    ❌ 溢价为负,因子反向有效(可取负值使用)。
------------------------------------------------------------
【7】分组收益单调性检验(Spearman秩相关)
    检验因子值越大,收益是否越高(单调递增)。相关系数接近1表示单调性好。
    Spearman相关系数 = -0.7697,p值 = 0.0092
    🔄 单调性反向(递减),可考虑取负因子值。
------------------------------------------------------------
【8】极端值分析(因子值最高10% vs 最低10%)
    比较极端组的平均收益,考察因子两端是否有明显区分。
    最高10%因子值平均收益: -1.06 bps
    最低10%因子值平均收益: 11.97 bps
    极端多空收益差: -13.03 bps
    ❌ 极端组差异小,因子对极端值不敏感。
------------------------------------------------------------
【9】月度IC稳定性(月度IC均值的标准差)
    标准差越小,因子在不同月份的表现越稳定。
    月度IC均值的标准差 = 0.0382
    ✅ 非常稳定,月度IC均值波动小。
------------------------------------------------------------
【10】多空组合最大回撤持续期
    最长的连续亏损天数,反映策略的“痛苦期”。
    最长回撤持续期 = 1226 个交易日
    ❌ 回撤期过长,策略可能长时间失效。
------------------------------------------------------------
【11】分层收益夏普比率对比(最高组 vs 最低组)
    因子值最高组夏普比率: -0.4971
    因子值最低组夏普比率: 0.4461
    ⚠️ 两组夏普差异不大,因子分层效果不明显。
------------------------------------------------------------
【12】因子值分布特征(偏度、峰度)
    偏度接近0表示对称,峰度接近3表示正态分布。极端偏离可能影响分组稳定性。
    偏度 = -4.6156,峰度 = 472.3833
    ⚠️ 偏度较大,可能存在极端值影响。
    ⚠️ 峰度过高,因子值集中,可能降低区分度。
------------------------------------------------------------
【13】最新20日IC趋势(滚动均值变化)
    正值表示近期因子预测能力在增强,负值表示衰减。
    最近20日IC均值变化: 0.0705
    ✅ 近期IC上升,因子表现改善。
------------------------------------------------------------
【14】多空组合卡玛比率(年化收益 / 最大回撤)
    原理:衡量单位回撤风险带来的年化收益,数值越大越好。
    当前卡玛比率 = -0.2391
    ❌ 较差(<0.5),回撤过大或收益不足。
------------------------------------------------------------
【15】多空组合回撤修复天数
    原理:从最大回撤谷底回到前高所需的天数,越短越好。
    当前修复天数 = nan 个交易日
    ❌ 修复极慢,可能策略失效期过长。
------------------------------------------------------------
【16】多空组合月度胜率
    原理:每月正收益的比例,衡量策略月度表现的稳定性。
    当前月度胜率 = 32.81%
    ❌ 胜率低于50%,策略不稳定。
------------------------------------------------------------
【17】多空组合与市场收益相关性
    原理:衡量因子策略是否与市场走势相关,低相关有分散化价值。
    当前相关系数 = -0.1095 (p=0.0001)
    ✅ 低相关,可作为市场中性策略。
------------------------------------------------------------
【18】IC序列的偏度与峰度
    原理:偏度≠0表示IC分布不对称,峰度>3表示有厚尾风险。
    偏度 = -0.0505,峰度 = 0.4441
    ⚠️ IC分布异常,可能存在极端预测值。
------------------------------------------------------------
【19】IC序列的自相关(滞后1天)
    原理:衡量今日IC与明日IC的关系,高自相关表示预测能力持续。
    当前IC自相关 = -0.0048
    ❌ IC自相关低,因子效果容易反转。
------------------------------------------------------------
【20】IC的滚动波动率(20天)
    原理:IC波动越小,因子越稳定。
    近期IC波动率 = 0.2912
    ❌ 高波动,因子预测忽强忽弱。
------------------------------------------------------------
【21】因子值极端值比例(超出±3σ)
    原理:极端值过多可能导致分组不稳定。
    当前极端值比例 = 1.33%
    ⚠️ 存在一定极端值,建议缩尾处理。
------------------------------------------------------------
【22】因子值滚动标准差的稳定性
    原理:因子截面离散度的变化程度,变化越小越稳定。
    滚动标准差的标准差 = 0.2587
    ⚠️ 离散度变化大,因子区分能力时强时弱。
------------------------------------------------------------
【23】分组换手率的稳定性(各分位组换手率差异)
    原理:各组换手率差异小,说明因子在不同分位组间切换频率一致。
    换手率组间标准差 = 0.3210
    ⚠️ 不同组换手差异大,可能在某些组过度交易。
------------------------------------------------------------
【24】分组收益中位数差异(最高组 vs 最低组)
    原理:中位数差异比均值更稳健,反映典型收益差。
    中位数收益差 = -9.85 bps
    ❌ 中位数差异小,因子效果可能由极端值驱动。
------------------------------------------------------------
【25】分组收益t检验(最高组与最低组)
    原理:检验最高/最低组收益是否显著异于零。
    最高组 p值 = 0.2647,最低组 p值 = 0.3168
    ❌ 最高组收益不显著异于零。
    ❌ 最低组收益不显著异于零。
------------------------------------------------------------
【26】各组最大回撤深度对比
    原理:各组自身的最大回撤,反映极端风险。
    最小组 (Q1.0) 最大回撤: -25.37%
    最大组 (Q10.0) 最大回撤: -66.07%
    ⚠️ 最大组回撤更大,高因子值股票风险也更高。
------------------------------------------------------------
【27】最高组连续盈利/亏损天数
    原理:反映策略的持续赚钱能力和风险暴露时长。
    最长连续盈利天数: 9 天
    最长连续亏损天数: 9 天
    ⚠️ 存在较长连续亏损期,需做好风控。
------------------------------------------------------------
【28】综合评级与最终建议
📊 因子综合评分 (越高越好): -1.47 / 40
各维度评分明细(括号内为满分):
  IC均值 (-0.0362)          → -3.62/10
  ICIR (-0.1919)             → -0.19/5
  多空夏普 (-0.9552)        → -0.96/5
  换手率惩罚 (0.8686)  → 0.00/5
  因子自相关 (0.9544) → 4.77/5
  因子溢价 (bps) (-1.47) → -1.47/5
📝 因子诊断总结
  综合评级: D (较差)
  操作建议: 不建议单独使用,请重新审视因子定义或数据。
💡 针对性优化建议:
   - IC波动大,可尝试对因子值进行平滑或使用滚动分位数。
   - 换手率过高,可延长调仓周期(如5日或10日)或使用衰减权重。
   - 极端组区分度低,可对因子值进行极值处理(如缩尾或标准化)。
   - 单调性弱,可尝试非线性变换(如取对数或平方)。

评论1

落花忆流年楼主
发表于 4 小时前 | 显示全部楼层
不懂的问我就可以作者微信xg_quant

回复

您需要登录后才可以回帖 登录 | 立即注册

主题

4

回帖

2

积分

0

客服专线

400-080-8112

用思考的速度交易,用真诚的态度合作,我们是认真的!
  • 关注公众号
  • 添加微信客服
Copyright © 2001-2026 迅投QMT社区 版权所有 All Rights Reserved. 京ICP备2025122616号-3
关灯 快速发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表