广义线性模型通过引入连接函数和非线性变换,扩展了传统线性回归的能力,从而能够捕捉股票收益与因子之间复杂的非线性关系。标准的线性模型假设因变量与自变量呈直线关系,但股票市场中规模、价值等因子对收益的影响往往是非线性的——例如,小市值股票的溢价效应在极端市值处可能减弱或反转。广义线性模型通过两种主要方式解决这一问题:一是在预测变量中加入高次方项(如平方项、立方项),二是使用样条函数对连续变量进行分段拟合,从而在不改变模型整体线性框架的前提下,灵活拟合曲线关系。
高次方项与样条函数的作用
高次方项(如 $x^2$、$x^3$)是引入非线性的最直接方式。例如,在回归模型中加入市值的平方项,可以捕捉市值对收益的边际影响随市值增大而递减的“规模衰减”效应。但高次方项容易在数据边缘产生剧烈波动,导致过度拟合——模型在训练数据上表现优异,但在新数据上预测能力大幅下降。
样条函数则提供了更稳健的替代方案。它将自变量范围划分为多个区间,在每个区间内拟合低次多项式(通常是三次),并在区间边界处保证平滑连接。常见的自然三次样条在数据两端施加线性约束,进一步减少边缘波动。相比高次方项,样条函数能更精细地刻画局部非线性模式,且不易因单个极端值而扭曲全局拟合。
实际应用:Barra非线性规模因子
在量化投资领域,Barra风险模型是广义线性模型捕捉非线性特征的典型案例。Barra的非线性规模因子专门用于提取市值因子中未被线性部分解释的弯曲形态。具体做法是:先对市值取对数,然后将其对市值线性因子回归,取残差作为非线性规模因子。这个残差项实际上捕捉了市值与收益之间的U形或倒U形关系——例如,在中等市值股票上,非线性规模因子可能为正,而在极端大/小市值股票上为负。这一设计使得因子组合能更准确地解释股票横截面收益的差异。
过度拟合的风险与防范
使用高次方项或样条函数时,过度拟合是主要风险。防范措施包括:
- 交叉验证:将数据分为训练集和测试集,选择在测试集上误差最小的模型复杂度(如样条节点数)。
- 正则化:对高次项系数施加L2惩罚(岭回归)或L1惩罚(Lasso),约束系数大小。
- 限制自由度:样条函数的节点数通常不超过自变量个数的1/3,避免过于灵活。
- 经济意义检验:拟合出的非线性形态应与金融理论一致(如规模效应在极端处减弱),而非纯数据挖掘结果。
总结:广义线性模型通过高次方项和样条函数,能在保持模型可解释性的前提下有效捕捉股票收益的非线性特征。实际应用中需平衡拟合精度与泛化能力,避免过度拟合导致失效。
常见问题
广义线性模型与机器学习模型(如随机森林)相比,优势是什么?
广义线性模型的可解释性更强,因子与收益的关系可以直观地用系数或样条曲线展示。对于投资决策,理解“为什么某因子有效”通常比单纯追求预测精度更重要。
样条函数的节点数量如何选择?
通常通过交叉验证确定,常见做法是从3到5个节点开始,逐步增加直到验证集误差不再下降。节点过多会拟合噪声,过少则无法捕捉非线性。
非线性规模因子在Barra模型中如何构建?
先对市值取自然对数,然后将其对市值线性因子回归,取残差作为非线性规模因子。该残差代表了市值中与线性规模因子正交的非线性部分。