赵澄 秦楚 刘炜 周洁
作者简介:赵澄(1985—),男,博士,高级工程师,研究方向:金融工程、人工智能;
秦楚(1996—),女,硕士研究生,研究方向:金融工程、量化投资。
文章编号:1005-9679(2023)03-0117-08
摘 要:
包含丰富种类衍生变量的股票数据有利于更全面地分析市场变化,但其同时包含连续和离散数据,难以充分利用,并且高维数据的训练效率不高,且各维度之间存在不同程度的相关性,使得机器学习预测的效果欠佳。对此,研究提出了一种两阶段降维方法,通过结合无监督和有监督降维,在除去冗余特征、降低特征间相关性的同时,可以有效地将离散数据融入连续数据,将降维结果作为时变数据通过长短期记忆神经网络(Long Short-term Memory , LSTM)进行分析预测。实验结果证明,预测模型在预测精度、鲁棒性和回测收益方面相比于传统方法,均得到了提高。
关键词:
两阶段降维;
高维复合数据;
股票趋势预测;
深度学习;
长短期记忆网络
中图分类号:
TP 391
文献标志码:
A
Abstract:
Stock data containing a rich variety of derived variables are useful for more comprehensive analysis of market changes, but they contain both continuous and discrete data, which are difficult to fully utilize. Moreover, the inefficient training of high-dimensional data and the varying degrees of correlation among dimensions make machine learning prediction ineffective. In this regard, a two-stage dimensionality reduction method is proposed, which can effectively integrate discrete data into continuous data by combining unsupervised and supervised dimensionality reduction to remove redundant features and reduce correlation between features. The dimensionality reduction results are analyzed and predicted as time-varying data by Long Short-term Memory (LSTM) neural network. Experiments prove that the prediction model has been improved in terms of prediction accuracy, robustness and backtesting gain compared with the traditional method.
Key words:
two-stage dimensionality reduction; high-dimensional complex data; stock trend prediction; deep learning; LSTM
本文从高维复合数据的处理入手,提出一种基于两阶段降维的时序数据预测模型,并通过实际市场回测进行验证,结果表明本文提出的方法在预测精度、鲁棒性和回测收益方面相比于传统方法均有提高。
1 相关工作
为了减少各个因子间的相关性,降低数据的噪声,研究人员使用无监督降维技术来进行降维。Chong等人使用主成分分析(Principal Component Analysis, PCA)处理财务时序数据以更好地预测股票价格,实验表明PCA提高了模型预测精度,但它只限于处理线性可分的数据。针对股票数据非线性的特点,Yu等人将局部线性嵌入(Local Linear Embedding, LLE)用于降低影响股票价格特征的维度,实验结果表明该方法在降维的同时保留了股票数据的流形结构,提高了预测模型的泛化能力,但对参数精度的要求较高。
相比于无监督降维,有监督降维侧重于发现类别间的判别特征,可以利用先验信息提取重要特征。如Ntakaris等人基于线性判别分析(Linear discriminant analysis, LDA)实现在线特征选取,从270个股票市场因素中提取重要特征,结果表明该方法能够取得较好的预测效果,但受限于降维的维度,在处理高维复杂数据方面可能造成重要信息丢失。Jiang等将随机森林(Random Forest, RF)等基于树结构的方法提取重要特征用于模型预测,从实验结果看出其预测性能有所提高,但股票数据间的相关性可能导致有监督降维选取出冗余特征,并且过度拟合结果也会影响模型泛化能力。
本文针对结合了财务数据、技术指标、行业板块数据构建的复合股票数据,提出一种两阶段降维方法。该方法通过结合无监督和有监督降维的方式,在除去冗余特征、消除特征间相关性的同时,根据标签数据获取对股票趋势預测影响重要的特征,合理地融合了离散和连续型数据,并将获取的时序特征通过LSTM进行趋势预测。
2 方法
2.1 复合数据描述及数据预处理
2.1.1 数据描述
本文获取的股票市场因子如表1所示,包括43个基本面因子、23个技术面因子和2个行业概念因子,行业概念根据申万二级划分,行业为124类,板块为247类,如表1所示。
2.1.2 数据预处理
为了更好地预测股票走势,本文对于股票连续数据进行了以下的预处理:
1)股票市场的波动性和一些特殊事件可能导致数据出现偏离正常逻辑的离群值,可能降低模型的泛化能力。因此,我们采用绝对值中位数法(Median Absolute Deviation, MAD)来处理离群值,如公式(1)所示:
2)股票数据也会出现缺失值、股票停牌、数据获取失败等,本文取缺失值前后现有值的平均值来填充。
3)不同数据间的影响使得选取出的股票具有不希望看到的偏向,如股票市值和投资取向的高相关性导致选出的股票比较集中在某些特定市值区间,本文通过中性化来减少偏差和影响,如公式(2)所示:
其中,残差εi为因子i中性化后的值,Di表示i因子值,β表示市值的权重,MktVali表示i股票的总市值。
4)不同股票数据间单位尺度不统一,本文通过Z-score将数据集标准化,消除特征间单位和尺度差异的影响,如公式(3)所示:
其中,FCi表示标准化后i特征的数据集,i表示i特征均值,δ为标准差。
对于行业、板块类的离散数据,通过一维离散向量无法有效表示市场信息,直接作为特征输入模型又不符合实际的金融市场状况,而独热编码将行业特征映射到高维空间使其欧氏距离更合理。它通过将板块类型编码为多个1和多个0的形式以表现不同板块在样本中的影响,使模型可以有效提取板块信息,编码方式如公式(4)所示:
其中,FDt表示t时刻编码后的数据集。
2.2 两阶段降维——LLE-PCA_RF
本文结合有监督和无监督降维方法提出了一种两阶段降维方法——LLE-PCA_RF,该方法的具体流程如图1所示。在第一阶段中,针对连续数据高维非线性的特点,使用非线性降维方法LLE处理,而独热编码向量化的离散数据经过行业划分后二次PCA降维处理,第二阶段通过RF提取出第一阶段重要的股票特征,用于股票趋势预测。该方法针对离散和连续数据的特性分别采用无监督降维方法在降低维度的同时减少特征间的相关性,而有监督降维根据先验知识确保了降维后的重要信息不丢失。
2.2.1 LLE降维
图1第一阶段的股票连续数据(FC)包括基本面、技术面的众多指标,具有高维非线性的特点。而线性降维方法难以有效处理非线性数据,基于流形学习的LLE降维方法通过在低维保持高维空间的流形结构以提取数据信息,它划分局部区域以线性表示样本点,并计算降维前后的权重系数使其尽可能相同以最小化误差。对于股票数据来说,相关性较高的股票数据点间的欧氏距离相近,局部区域内可以线性表示,LLE能尽可能在保留不同股票数据间的非线性结构的同时减少输入模型的特征维度。
3 参数设置及优化
3.1 第一阶段降维参数
对连续型股票数据使用LLE降维,其降维效果主要受降维后的维度和邻近值k的影响。本文先采用最大似然方法估计降维后的维度,然后在确定维度的基础上优化邻近值k。通过最小化重构误差(Reconstruction error)确定最佳的近邻点k,结果如图3所示。从图3中可以看出,最优的k值为6。
对编码后离散型股票数据进行PCA降维,过PCA降维后的主成分解释数据集的累计比例如表2所示。这些主成分是根据其解释能力进行排序的,表2列出的第一个主分量表示最大特征值对应的特征向量,即最有影响力的主分量。从表2中可以看出,前27个主成分可以解释数据集近90%的变化,之后的成分解释能力不足10%,因而可以忽略。
3.2 第二阶段降维参数
为了保证计算重要特征的稳定性,本文将决策树数量m设置成相对较大的值,为1000。图4反映了上述特征对股票趋势预测的影响程度,并按照降序排列。从图4中可以看出,第26位之后的特征对股票趋势预测的贡献程度低于1%,可以忽略。
3.3 降维比例参数
本文对一、二阶段的降维比例参数P和连续、离散数据的取值比参数G进行了分析。两参数不同取值在测试集上股票预测正确率的结果如图5所示。从图5中可以看出,参数的取值对预测结果有较大影响,当P取值为13且G取值为8时,预测准确率最高。
3.4 LSTM参数设置
通过实验调参,LSTM的参数设置如下:1)向量长度根据时间步长设置为5;
2)LSTM隐藏层数设置为2层,每个隐藏单元数量为45;
3)激活函数采用Relu函数。
4 實验设置和结果分析
4.1 实验设置
本文选取沪深300市场(HS300)作为研究对象,剔除了被标记为特殊处理(Special treatment, ST)、上市未满3个月、停牌以及退市的股票。使用的原始数据集来源于聚宽量化交易平台。数据集时间段为2009年1月至2020年1月,训练集和测试集划分比例为4∶1。实验是在CPU为2.90GHz Intel Corei 5,内存为16GB的计算机上运行的,编程语言为Python 3.7,集成开发环境为PyCharm。
4.2 实验对比分析
为了进一步验证本文方法的有效性,将从三个方面对比分析:1)将两阶段降维与其他降维方法进行比较,评估该降维方法对模型性能预测的效果;
2)评估降维结果对不同学习模型的性能;
3)根据模型预测结果进行模拟交易,评估该方法在市场交易中的可行性。对比实验均对HS300市场成分股进行测试,结果取平均值。
4.2.1 降维方法对比分析
将PCA、LLE、RF、LLE-PCA、PCA_RF、LLE-RF与本文提出的两阶段降维方法进行对比,通过准确率(Accuracy)、召回率(Recall)和马修斯相关系数(Matthews correlation coefficient, MCC)指标评估降维方法对模型趋势预测的影响,指标计算公式如下:
Accuracy=TP+TNTP+FP+TN+FN(17)
Recall=TPTP+FN(18)
MCC=TP×TN-FP×FN(TP+FP)(TP+FN)(TN+FP)(TN+FN)(19)
其中,TP、TN、FP、FN分别为预测上涨趋势正确、预测上涨趋势错误、预测下跌趋势正确以及预测下跌趋势错误。
不同降维方法在测试集上的预测结果如表3所示,结果显示,LLE-PCA_RF在准确率、召回率以及马修斯相关系数方面均优于其他模型。因为LLE-PCA_RF针对不同统计特性的股票数据分别采用相对合适的方法消除股票数据的冗余以及相关性,并通过RF的重要性度量提取出对股票趋势预测重要的特征,而单阶段的PCA、LLE、RF无法在降低维度的同时既考虑股票数据间的相关性,又选取出影响股票市场的重要特征。尽管PCA_RF、LLE_RF的准确率、召回率相对较高,但马修斯相关系数远不如本文提出的LLE-PCA_RF方法。此外,RF的马修斯相关系数值在所有模型中最低,可能是特征间相关性影响了LSTM的整体预测结果。
不同降维方法在训练集和测试集的平均预测准确率如图6所示。从图6可以看出,相比其他降维方法,LLE-PCA_RF在训练集、测试集都明显有着更高的准确率,同时整体预测结果较为稳定,鲁棒性更好。LLE-PCA_RF在训练集上达到了约85%的准确率,而且在测试集上也达到了约60%的准确率。RF、LLE、PCA这些方法无法处理离散型数据,因而无法充分利用数据,以至于结果不如LLE-PCA_RF。
不同降维方法在训练集和测试集的迭代过程中的loss变化曲线分别如图7、图8所示。从图8中可以看出,相比其他降维方法,LLE-PCA_RF在测试集上的loss最低值更低,且由于过拟合产生的loss上升更平缓,这是因为LLE-PCA_RF不单纯依靠于RF这样的后验式降维算法,因而提高了其抗过拟合性。
4.2.2 模拟交易对比分析
本文针对LLE-PCA_RF_LSTM、LLE_RF_LSTM以及LLE-PCA_RF_RNN方法在HS300市场进行模拟交易对比,根据模型预测趋势结果进行买卖操作,当预测收益率大于0时,买入该股票,而预测收益率小于0时,卖出该股票,同时与买入并持有策略(Buy_Hold)进行对比。交易时间为2019年1月至2020年1月,在交易过程中不考虑产生的交易费用。通过累计收益率(Cumulative return, CR)、年化收益率(Annualized rate of return, ARR)、夏普比率(Sharpe Ratio)、波动率(Volatility)、最大回撤(Maximum Drawdown, MDD)来评估模型在市场中的性能,计算公式如下:
模拟交易回测结果如图9所示,所有模型均优于买入持有策略模型。从图9中可以看出,在整个交易过程中,LSTM模型的超额收益波动率较大,且收益远远低于LLE-PCA_RF_LSTM、PCA_RF_RNN以及LLE_RF_LSTM模型,这说明降维处理后的数据去除了噪声,更好地表现了市场变化,提高了时序数据处理的效率。从图9中可以看出LLE-PCA_RF_LSTM的超额收益逐步增加并一直高于其他模型,在交易过程中取得了最高的收益。
不同模型在HS300市场的整体表现如表4所示。LLE-PCA_RF_LSTM在年化收益率、夏普比率、最大回撤这些指标上的表现均优于其他模型,同时保持较低的最大回撤,表明该模型合理平衡了收益和风险程度。经过两阶段降维处理的LSTM模型有效提取了市场的重要信息,从而提高了模型预测精度和稳定性;
而单个LSTM模型的表现显然不如其他模型,其波动率指标最高,达到了0.221;
另外,无论是单层降维方法还是其他降维方法,结果均不如LLE-PCA_RF_LSTM模型,这也验证了LLE-PCA_RF_LSTM模型在HS300市场能更好地处理高维复合数据,并获取稳定的超额收益。
5 总结
本文针对将复合数据用于股票预测问题提出了一种两阶段降维方法。通过结合有监督和无监督降维方法对连续和离散数据进行处理,在减少冗余、相关特征的同时选取出对股票趋势预测重要的特征。实验对比了不同降维方法,验证了两阶段降维方法的有效性。另外,将两阶段降维后的数据用于LSTM模型预测股票趋势,并制定投资策略,在模拟交易中获得较高的超额收益,证明了本文提出算法的有效性。未来的工作主要是进一步拓展不同类型股票数据用于股票预测,包括股民情绪、K线图等影响股市的因素。
参考文献:
[1] CHONG E, HAN C, PARK F C. Deep learning networks for stock market analysis and prediction:
methodology, data representations, and case studies[J]. Expert Systems with Applications, 2017(83):
187-205.
[2] YU Z, QIN L, CHEN Y, et al. Stock price forecasting based on LLE-BP neural network model[J]. Physica A:
Statistical Mechanics and Its Applications, 2020, 553:
124197.
[3] ZHANG Y, ZHANG Z, QIN J, et al. Semi-supervised local multi-manifold isomap by linear embedding for feature extraction[J]. Pattern Recognition, 2018(76):
662-678.
[4] NTAKARIS A, KANNIAINEN J, GABBOUJ M, et al. Mid-price prediction based on machine learning methods with technical and quantitative indicators[J]. Plos one, 2020, 15(6):
e0234107.
[5] JIANG M, LIU J, ZHANG L, et al. An improved Stacking framework for stock index prediction by leveraging tree-based ensemble models and deep learning algorithms[J]. Physica A:
Statistical Mechanics and its Applications, 2020(541):
122272.
[6] 劉乾超. 基于离散选择模型的推荐系统改进算法[J]. 上海管理科学, 2020:
1.
[7] 刘英铎, 陈奕. 企业人工智能战略驱动因素研究:基于 LASSO 回归和 CART 算法的分析[J]. 上海管理科学, 2019:
6.
[8] MA J, YUAN Y. Dimension reduction of image deep feature using PCA[J]. Journal of Visual Communication and Image Representation, 2019(63):
102578.
扩展阅读文章
推荐阅读文章
老骥秘书网 https://www.round-online.com
Copyright © 2002-2018 . 老骥秘书网 版权所有