想要成为合格的宽客,搭建量化模型(Alpha模型)是基本功。
想要成为合格的宽客,搭建量化模型(Alpha模型)是基本功。
想要成为合格的宽客,搭建量化模型(Alpha模型)是基本功。
构建量化模型的本质,就是用数理的、可量化的方式,选择股票或投资组合,期望获得超越基准的收益率的投资行为。
一个合格的量化模型,有三大要素:
- 数据驱动:通过大量历史数据和实时数据分析来做出决策,而不是依赖基金经理的直觉和情绪
- 系统化:模型构建完成后,一切交易决策由系统自动执行,尽量减少人为干预,确保操作的统一性、一致性
- 高效性:量化模型通过计算机处理大量数据,可以高效挖掘隐藏的市场机会
常见的量化模型有三类:
Alpha模型,即预测模型,侧重收益
相比其他模型更多的“辅助”功能,Alpha模型最接近量化交易中模型的本质——从历史数据中寻找错误定价的规律,并且此规律可以应用在今后市场中获取超额收益。因此,本文中讨论的模型搭建均以Alpha模型为例。风控模型(组合优化),侧重风险
执行模型,侧重减少冲击和交易成本,有些机构用强化学习来降低执行中的交易成本
量化投资的“黑箱”结构
想要搭建一个合格的Alpha模型,通常有七大步骤:
构建模型之前,宽客需要明确预测目标,即搭建模型是要预测长期的稳健收益,还是实现短期套利的收益。
有的时候会预测一些有用的市场参量,如波动率、成交量、相关性等,这些目标可以为不同的策略类型可以打下基础。
训练模型训练前,宽客需要针对不同类型的数据进行不同的处理(详细内容请参考《量化投研中的数据分类和处理》)。
根据预测目标的不同,宽客选取的因子也不一样。
筛选因子的核心目标,是在庞大的因子库中挑选出能够对目标变量(如股票收益、风险指标等)有显著预测能力的少量因子,同时避免过拟合和信息冗余。筛选因子时,宽客重点关注:
- 预测能力:因子必须能够解释目标变量的变化,有显著的预测效果
- 稳健性:在不同时间段、市场条件和行业中因子表现要保持分布一致性,避免“偶然有效”
- 相关性控制:因子之间的多重共线性可能导致模型性能下降,需要去冗余提升模型鲁棒性
常见的筛选因子的流程有:
- 根据理论逻辑和经济解释,快速判断,初级筛选
- 通过清洗和标准化,对数据进行预处理
- 用统计分析和机器学习等工具,对因子进行一步筛选
- 多因子组合优化,对因子去冗余、分层测试,进行稳健性检验等
一般来说,实际使用的因子数量远远少于因子库。
选择合适的算法和模型是量化投资中至关重要的一步。选择模型时,需考虑数据的特点和策略的需求。
目前,国内量化机构使用的模型主要有线性模型、非线性模型。
- 线性模型,即指假设因变量(目标变量)与自变量(特征变量)之间存在线性关系的模型。
注:线性关系,即量与量之间按比例、成直线的关系
关于线性模型的研究的比较多,相关理论也比较完整,可解释性强。线性模型虽然简单,但威力巨大,唯一的局限就是模型对因子本身质量要求较高。
常见的线性模型有:
- 线性回归:最基本的线性模型,通过最小二乘法(OLS)来拟合数据,预测目标变量
- 逻辑回归:用于分类问题,实际用于估计事件发生的概率
- Ridge(岭模型)和lasso模型:在标准线性回归的基础上加入了正则化项,能够防止过拟合,适用于高维数据
- 非线性模型,指假设因变量与自变量之间存在非线性关系的模型。
由于非线性关系的形式非常广泛,包括但不限于多项式、指数、对数、分段函数等,因此,非线性模型可以捕捉到数据中更复杂的模式和关系。
常见的非线性模型包括:
- 支持向量机(SVM):通过使用核函数(如径向基函数 RBF),将数据映射到更高维的空间,使得数据变得线性可分
- 决策树和随机森林:通过递归划分特征空间,非线性决策和分类
- 神经网络:通过多层神经元和激活函数,能够学习复杂的非线性关系
以最近几年热度很高的神经网络为例,它通过研究人脑、了解人类如何做出决策,从算法领域消除人类情绪在交易中的影响。
神经网络的基本工作原理是,宽客将大脑的工作原理简化为三大步骤:输入参数(Input Layer);大脑根据参数构建复杂参数,即隐藏层(Hidden Layer),如情绪和感觉等,做出决策;决策输出(Output Layer)。
神经网络工作原理示意图
非线性模型的优势在于其强大的拟合能力,能够捕捉到更复杂的市场行为,尤其是市场中的非线性波动、突发事件等。
非线性模型的缺点也十分明显:训练过程通常较为复杂,计算资源消耗较大,且容易产生过拟合问题,尤其是在样本量较小时。
总之,线性模型和非线性模型各有其独特的应用场景。线性模型简单高效,广泛应用于资产定价、风险管理等基础任务中;非线性模型则因其强大的拟合能力,适用于捕捉复杂的市场动态、进行高频交易、市场情绪分析等任务。通过综合两者优点,宽客能构建出更精准、灵活的模型。
选好模型后,宽客可以开始搭建交易模型了。
有了明确的策略和数据后,宽客需要训练和优化模型。
所谓训练和优化模型,就是宽客需要开发一个框架,将代码布置在这个框架上自动学习执行特定的任务,在数据集上自我训练、自我优化(调整计算结果),不断调整,使计算结果尽可能趋于观察到的实际结果。
以神经网络自我训练预测股票收益率为例:
神经网络将筛选后获得的因子输入,期待经过模型自我训练后,可以给宽客尽量精准预测第二个交易日的收盘价。
在训练神经网络时,宽客需要将损失函数用于指导模型参数的更新,以最小化预测误差。
权重与成本函数最优值
宽客通常会用梯度下降(Gradient Descent),控制训练模型的时间和效果。
训练和优化模型时,有几个地方需要注意:
- 训练数据集和测试数据集的划分
模型自我训练基于数据集,因此,训练前需要注意将时序划分开。通常来说,数据分为训练集和测试集,使用训练集来训练模型,测试集用来检验模型的泛化能力,两者不可混淆。 - 超参数调优
模型训练完成后,需要对超参数进行优化,如学习率、树的深度等,常用的优化方法包括网格搜索和随机搜索。 - 模型验证
使用交叉验证等方法,验证模型的鲁棒性,避免过拟合。
回测是检验量化模型有效性的重要步骤。通过将模型应用于历史数据,宽客可以验证模型在过去市场环境中的表现。回测过程中,宽客通常会重点关注:
- 交易成本:包括佣金、滑点等,回测时必须考虑实际的交易成本
- 模型的预测性:即不能出现预测性大幅衰减的情况
- 策略的稳健性:通过多次回测和不同的市场条件,检查模型是否具备持续盈利的能力
当模型在回测中表现稳定时,宽客会将模型应用于实盘交易。由于市场环境是动态变化的,宽客需要关注一切潜在的风险。如实盘交易时,宽客需实时监控模型的表现,必要时进行替换和调整。
总之,模型的选择、替换和更新是一件考验宽客能力的事情,想要拥有适应力强的模型,宽客要对市场环境、模型本身有非常充足的了解。
搭建好一个量化模型,是宽客探索量化世界的开始。
不管多优秀的模型,都会逐渐失效。宽客的投研日常有点像西西弗斯,每天带着坚定的信念,不断挖掘新因子,训练新模型,在因子或模型失效前,挖掘更新的因子或模型。日复一日,年复一年,周而复始。结果固然重要,过程亦弥足珍贵。