华泰证券-人工智能52:神经网络组合优化初探-220109

《华泰证券-人工智能52:神经网络组合优化初探-220109(26页).pdf》由会员分享,可在线阅读,更多相关《华泰证券-人工智能52:神经网络组合优化初探-220109(26页).pdf(26页精品完整版)》请在悟空智库报告文库上搜索。
人工智能系列52:初步探索基于神经网络的组合优化在基于因子的量化投资流程中,因子生成、多因子合成、组合优化是三个重要步骤。 组合优化一般是指通过凸优化方法将收益预测转换为资产权重的步骤,本文将尝试把组合优化融入到神经网络中,构建端到端的量化投资框架,该框架输入资产的原始数据,通过神经网络进行特征提取和合成,再通过可传播梯度的凸优化层(如CvxpyLayers)优化得到资产权重,目标函数可直接定义为资产组合的收益率或其他指标,并以该目标优化整个神经网络。 本文以资产配置中的风险预算模型为例,测试了基于神经网络的组合优化效果。 在合理限制下,模型在两组资产配置测试中均能获得更好的收益表现。 CvxpyLayers能突破传统组合优化方法的局限相对于因子生成和多因子合成,传统组合优化方法是一个独立的过程,不能传播梯度,因此无法借助神经网络进行端到端的优化,可能会有以下局限:(1)无法通过端到端的方式影响到组合优化的输入(如预期收益、风险预算);(2)组合优化中的参数(如风险厌恶系数)只能通过遍历的方式来确定;(3)一般只进行单期优化。 CvxpyLayers在Cvxpy的基础上,将凸优化过程作为网络层嵌入到神经网络中,使得梯度传播成为可能,从而具有突破以上局限的潜力。 CvxpyLayers项目目前由斯坦福大学凸优化研究组维护。 本文介绍了三个使用CvxpyLayers进行组合优化的案例及代码针对量化投资可能涉及的不同组合优化场景,本文介绍了三个使用CvxpyLayers进行组合优化的案例,并提供相关问题的凸优化形式证明。 具体包含:(1)Softmax函数的凸优化形式;(2)风险预算模型的凸优化形式;(3)马科维茨模型。 其中Softmax函数和风险预算模型的凸优化形式均采用拉格朗日乘子法进行证明。 本文也给出了以上三个案例的样例代码。 本文介绍了基于CvxpyLayers的风险预算模型构建细节实证方面,本文构建了两个基于CvxpyLayers的风险预算模型:(1)因子模型FactorModel:人工构建大类资产因子,然后输入神经网络映射为风险预算,再对接CvxpyLayers优化得到资产权重。 FactorModel整合了因子合成和组合优化两个步骤。 (2)端到端模型LSTMModel:直接将大类资产的原始日频收益率数据输入神经网络的LSTM层映射为风险预算,再对接CvxpyLayers优化得到资产权重。 两个模型都以最大化组合收益作为预测目标,并通过反向传播动态学习更优的风险预算。 LSTMModel整合了因子挖掘、因子合成和组合优化三个步骤。 基于CvxpyLayers的模型在两组资产配置测试中均能获得更好的收益表现我们选取国内外比较典型的股票、债券、商品大类资产指数,测试基于CvxpyLayers的风险预算模型在国内外资产配置和国内资产配置的表现,对比基准为风险平价模型。 在对风险预算的上下限进行合理限制后,FactorModel和LSTMModel均能相对基准获得更好的收益表现。 我们进一步分析LSTMModel的超额收益来源,可知在国内外资产配置中,标普500和彭博贵金属子指数的偏配是主要的超额收益来源;在国内资产配置中,中证500和SGE黄金9999的偏配是主要的超额收益来源。 风险提示:通过神经网络构建的资产配置策略是历史经验的总结,存在失效的可能。 神经网络受随机性影响较大,可解释性较低,使用需谨慎。