论文:运用混合算法进行带有高阶矩的投资组合选择:来自上交所的实证性证据
Bilian Chen,Jingdong Zhong, Yuanyuan Chen. (2019). A hybrid approach for portfolioselection with higher-order moments: Empirical evidence from Shanghai StockExchange[J]. Expert Systems With Applications, 145, 113104.下载地址:
https://doi.org/10.1016/j.eswa.2019.113104
一
摘要
偏度和峰度,即三阶矩和四阶矩,是用来概括分布函数形状的统计量。最近的研究表明,投资者在做有利可图的投资决策时,会考虑这些高阶矩。遗憾的是,由于带有高阶矩的多目标问题难以求解,关于带有高阶矩的投资组合选择问题的文献较少。本文提出了一种新的混合方法解决带有偏度和峰度的投资组合选择问题,其中不仅包括多目标优化,而且包括数据驱动的资产选择和回归预测,这里运用了两阶段聚类技术、径向基函数神经网络和遗传算法。利用上海证券交易所的历史数据,我们发现带有高阶矩的模型的样本外性能明显优于传统的均值-方差模型,并验证了混合算法的稳健性。
二
模型及研究方法
1.高阶矩投资组合模型
考虑n个资产的投资组合问题,表示n个资产的配置权重向量,其中,为资产的期望回报向量,为资产回报的协方差矩阵。期望回报和回报的方差、偏度和峰度计算公式如下:
因为对于投资者来说大的偏度和小的峰度是有吸引力的,所以我们通过增加偏度和峰度改善经典均值-方差投资组合模型的表现,因此高阶矩模型为下面的多目标优化问题。
为了解决上述问题,我们将其转换为下面的非线性规划:
其中、、和是非负投资偏好因子,分别反映均值、方差、偏度和峰度。
2.遗传算法求解高阶矩投资组合模型
注意到模型是一个带约束的非线性优化问题。解决这个问题不可避免地需要大量计算量,甚至得不到全局最优解。遗传算法作为一个启发式计算智能工具,不仅有很快的搜索速度,而且减少落入局部最优解的风险。我们将应用遗传算法解决这一问题,详细步骤如下:
Step 1:个体编码。
我们将资产权重变为二进制串,其长度取决于所需要的精度,本文的精度为,变量取值范围为0到1,根据二进制串长度计算,我们获得唯一的满足的整数m,因此每个染色体长度有nm个二进制数,每m个二进制数表示一个资产的权重。
Step 2:种群初始化。
假设初始群体有L个染色体,我们随机产生L个有nm个二进制数的可行的二进制串,特别,一个染色体中的由每m个二进制数解码得到,例如,如果变量对应的二进制串为,则其十进制值可如下计算:
Step 3:适应度计算。
根据模型,我们定义适应度函数评估个体
其中P是惩罚因子,为了剔除不满足约束条件的个体。第l个染色体的适应度为,种群适应度总和为
Step 4:个体复制。
为了选择染色体进行复制,我们计算每个染色体进行复制的累计概率
轮盘选择算法被计算机模拟次,每一次随机得到0到1中的一个数s,当,个体l被复制为新种群的一员,这个算法表明高适应度的个体有高概率被选择,保证更优的可行解有更大的可能性复制到新“种群”中。
Step5:个体交叉。
每次交叉中的染色体数量等于种群规模乘于交叉概率(),种群中有L个个体,那么就有L个染色体参与交叉。为了确定具体交叉染色体,我们用计算机产生L个随机数表示种群中的染色体,按值的递减顺序排列,前L个染色体被选择进行交叉。
Step6:个体突变。
假设突变概率是,也就是说,有百分之一的基因有0-1的逆转。我们举一个例子阐明交叉和突变的过程,假设有两个3bit的父母个体,一个是110,另一个是011,如果交叉的位置在第3个bit,那么两个子个体就是111和010。
遗传算法连续重复上述步骤,直到进化种群达到给定的边界,种群中的最优解就是遗传算法选择的高阶矩投资组合优化的最优解。
3.混合算法优化高阶矩投资组合模型
在混合算法中我们采用遗传算法、两阶聚类和径向基神经网络,方法的具体流程如下。
Step 1:计算收益。
当第t天是除息日,第t天带有现金红利的日收益率计算如下
其中表示结算价,、、、和分别表示红利股、增股、分股、现金股利、每增股价格。当第t天不是除息日,第t天的收益率计算如下
Step 2:选择资产。
我们用两阶聚类分析N个风险资产的收益率,来选择n(,第一阶段,使用k最近邻分类法产生N’(作为初始子簇,然后,接下来的点根据他与已存在点的相似性归入最近的子簇。第二阶段,根据子簇间的相对互联性RI和相对紧密度RC,将子簇合并成最终簇,最后获得n个簇,RC和RI计算公式如下:
其中和分别表示子簇i中的和子簇i和j间的边的权重和,边的权重是两点距离表示相似性,表示子簇i中的数据点数,和分别表示子簇i中的和子簇i和j间的边的权重的平均。通过两阶聚类,我们选择簇中的中心点,他们之间在互联性和紧密度都有最长的记录,为了实现投资组合风险的预分散。
Step 3:预测收益。
因为投资者关注的是收益的未来分布而不是历史分布,所以我们通过RBF神经网络预测资产未来收益率。RBF神经网络有三层:输入层、带有非线性RBF函数的隐藏层和一个线性输出层,第一层中的l个神经元对应输入向量,是每个资产的历史收益,l是历史数据的长度。第二层是有J个神经元,我们将核函数设置为高斯函数,这意味着神经元j的输出可以被表示为
参数是神经元j的基函数的中心参数,是相应的宽度参数,是欧几里得范数。最后一层是带有K个神经元的输出层,我们计算隐藏层信息的加权和,得到网络的最终输出
其中为输出神经元k和隐藏神经元j的连接权重。
RBF神经网络的关键是更新参数、和,符合精准要求的网络被用来预测组合未来的收益分布,在预测之后,我们就能计算每个组合未来收益的四个目标值,均值、方差、偏度和峰度。
Step 4:设置风险偏好。
我们根据投资者的风险偏好设定模型中的偏好因子,然后通过遗传算法搜寻最优解。
Step 5:搜寻最优组合。
计算最优组合的收益,如果它满足投资者的期待,那么它就是投资方案,如果不满足,将期望加入多目标优化问题中作为新的约束,并重新搜寻最优解。
三
数据
数据集是从2010年1月4日到2017年2月20日的上证50指数的最新成分股的日交易数据。上证50指数将上交所的股票根据总市值和营业额进行排序,然后选择前50只作为指数的成分股,因此上证50指数的成分股是最具代表性股票。
为了验证被提出模型和方法的有效性和稳健性,我们用2010年1月4日到2016年12月30日的数据作为样本内数据训练和测试模型,然后用2017年1月1日到2017年2月20日(30个交易日)的数据作为样本外数据评估模型和方法的表现。
四
结论
利用上交所的历史数据进行实证分析得到,均值-方差-偏度-峰度(M-V-S-K)模型选择出来的最优投资组合的样本外表现比经典的均值-方差模型和均值-方差-偏度模型的好。
其次,通过比较遗传算法和其他被广泛使用的算法,遗传算法给出的最优投资组合在收益和风险管理表现要优于模拟退火算法和混合罚函数算法的,后面这两个算法在解决非线性规划时被广泛使用。
讨论时刻:
1.因为投资者对偏度和峰度的不了解,风险偏好参数的设置可能是不切实际的,并不能反映投资者的主观意识,甚至投资者对其根本就没有主观意识。
2.这篇文章中只考虑了静态的投资组合选择问题,随时间变化的投资组合问题也是值得进一步研究的,这样才能更完整的看到模型的有效性。
如果有好的建议,请留言给我们。
"大于研究"是华南理工大学经济与贸易学院、金融工程研究中心的老师和学生对外分享研究成果和学习的心得的公众号。
对我们的研究感兴趣的可以联系fofscut@scut.edu.cn