多因子组合优化模型指数增强策略的核心是控制投资组合在更多的风险因子上的暴露与基准指数一致,以期获得更小的跟踪误差。因子暴露越大,对应的因子收益越高,风险越大。
所以,模型的优化目标是在给定风险约束下,最大化因子收益,即最大化因子暴露。
常见的风险控制包括风险暴露约束、行业暴露约束、相对于基准跟踪误差约束和个股权重约束等。
策略的组合优化模型形式如下:
线性优化的求解有多种模块可以实现,本文使用scipy.optimize.linprog()函数进行求解。求解过程中记得将目标函数转化为min()函数,约束条件转化为"<="的形式。
☞设计一个简单的策略逻辑:
每月初计算Fama三因子(beta、账面市值比、市值),通过截面回归计算个股预期收益率,组合优化求解个股权重并构建投资组合。(这里仅添加约束条件1、4和5)
进一步编写回测,相关参数如下:
回测结果如下图所示:
策略回测的年化收益率17.96%,最大回撤25.80%,夏普比率0.63,超额收益23.78%。感兴趣的朋友可以对相关参数进行测试,调整因子暴露阈值并进一步添加约束条件。
本期代码已分享至掘金量化社区,欢迎自行下载研究。
持续关注掘金量化,带你进一步探索因子模型!
源码传送门:掘金量化社区-MYQUANT