Press "Enter" to skip to content

【交易技术前沿】基于机器学习的期货市场趋势预测方法的研究

本文选自《交易技术前沿》总第四十五期文章(2021年6月)

 

宁晓冬、杨和国 / 郑州商品交易所

 

赵颖杰、宫朝辉 / 郑州易盛信息技术有限公司

 

长期以来,期货市场的稳定运行一直是交易所关注的重点,对于期货品种的功能发挥起到重要作用。合约交易持仓量是期货市场运行的重要指标,也是利用期货管理风险的基础指标。为增强对市场趋势的了解,提高运行预判能力,本文基于合约历史运行规律及风控措施参数,开展数据分析,提取历史数据及风控参数作为输入特征,建立基于多个机器学习算法的融合模型,利用网格搜索方式设置最优参数,进行期货合约未来五日交易量、持仓量的预测。实验结果显示,本文构建的算法模型预测交易量平均准确率接近70%、持仓量平均准确率达到83%。同时,本文以案例分析的形式证实了融合模型和网格搜索技术对于预测准确率的提升存在显着效果。

 

一、项目背景

 

期货交易是现货市场的晴雨表,为商品远期定价提供基准,具有护航实体经济稳健运行的重要意义。期货交易价格由不同参与主体共同报价撮合而成。套期保值者利用市场锁定利润管理价格波动风险,投机者尝试判断行情获取利润。当市场交易过热时,期货价格会失真并偏离现货价格,可能给投资者和套保企业带来损失;反之,当缺乏流动性时,期货价格无法准确反映市场参与者的“共识”。因此,稳定的市场参与度是期货交易合理定价的重要基础。预判市场热度对于调节市场情绪,合理利用风控措施稳定行情至关重要。本文将核心问题定义为预测市场热度,即预测品种的交易持仓情况。通常来说,期货市场交易持仓趋势受到多方面因素的影响,如期货标的价格变化,突发舆情事件,政策影响等。多因素影响下,简单的规则算法难以有效预测交易持仓情况。基于此,本文尝试从多个维度提取有效特征,并利用三个独立的机器学习模型捕捉数据之间的不同关系。最后,利用网格搜索方法将三个模型的结果进行加权融合输出最终的预测结果。本文组织架构如下:第二章针对历史运行数据开展分析,研究了风控参数、结算价等与交易持仓量的关系;第三章就特征提取及三个单一模型的构建进行了详细介绍;第四章描述了模型融合及权重网格搜索技术;第五章设计实验验证模型有效性并设计方法解释模型结果;第六章为模型可解释性研究;第七章为总结与展望。

 

二、历史运行分析

 

机器学习相关问题中,数据分析是整个数据建模的基础,决定了特征提取质量与模型最终效果。数据分析对于深入了解目标问题起到重要作用,并指导模型的迭代构建。本文数据分析涵盖了众多维度,下面挑选四个方面对交易所历史数据简要分析。

 

(一)主力合约的生命周期(双峰现象)

 

回溯历史数据,所有合约在挂牌摘牌整个周期中,都会经历交易持仓量逐渐放大随后下降的过程。其中,有较大比例的主力合约(接近40%)在挂牌摘牌的整个周期会呈现“双峰”现象。“双峰”现象即合约在成为主力之后,交易量与持仓量会经历两个峰值,其中交易量尤为明显。我们以图1、2分别展示 玻璃期货1705与棉花期货1801 两个合约的交易持仓走势。从图中可以看出,虽然玻璃、棉花分属于非农与农两个类别,但是交易量上都呈现出较为典型的双峰形态。该现象产生原因可能一是当合约成为主力合约之后,交易资金会快速流入,导致交易持仓量快速放大;二是前主力合约进入交割摘牌阶段,主力合约因此达到第二个高峰。双峰现象的周期性规律对于我们掌握品种运行规律及预测交易持仓起到指导性作用。

图1.玻璃1705合约交易持仓走势图

 

 

图2.棉花1801合约交易持仓走势图

 

(二) 品种交易持仓量与价格关系

 

为探索交易、持仓量的影响因素,本文着重分析价格波动与交易持仓量之间的关系。交易市场上存在一种“共识”,即认为价格的波动会引起交易持仓量的放大。因此,本文尝试计算价格波动与交易持仓量变化之间的皮尔森相关系数 1 ,研究从长期运行维度来看价格波动是否会实质上引起交易量与持仓量的放大。我们定义如下三个指标:

其中T表示当前日期,N表示时间差,P T 表示T日结算价格,V T 表示T日交易量,H T 表示T日持仓量;相应的,P T-N 、V T-N 、H T-N 分别表示T-N日的对应数值;P delta 表示以T日与T-N日之间价格波动比例的绝对值,V delta 表示对应的交易量波动比例实际值,H delta 表示持仓量波动比例实际值。我们分别计算当N设置为[1-5]日时,P delta 与V delta 、H delta 之间的皮尔森系数。实验中,我们选取了2016-2018年郑商所已上市的所有品种,并对品种下的全部挂牌合约进行汇总。具体情况见下表。

 

表1.价格波动与交易持仓变化相关系数表

 

表1中PD1-HD1表示当N值取1时,P delta 与H delta 之间的关联系数;PD1-VD1表示当N值取1时,P delta 与V delta 之间的关联系数,以此类推。从表中易知,在不同N的取值下,所有品种的相关系数均为正。因此,交易持仓量的变化与价格波动的绝对值之间确实存在着正向关系。但是,学术界一般认为,当相关系数|r|>0.8时,两变量间存在高度相关性;当0.6<|r|<0.8时,可以认为两变量具备较强相关性;当0.4<|r|<0.6时,两变量具备中等相关性;当0.2<|r|<0.4时,可认为两变量相关性较弱。从表中可发现,除少数蓝色区域(大于0.4),大多数品种交易持仓量的变化与价格波动幅度的关系均较弱,且间隔日期N的长短对于结论也无较明显影响。整体来看,价格波动对于交易量、持仓量趋势均有一定正向影响。在提取特征时,需要将价格波动相关数据引入模型,但需要设计模型结构捕捉非线性关系提高数据价值。

 

(三) 品种交易持仓与风控措施参数的长期关系

 

除价格波动外,本文同时研究风控参数对于交易持仓量的长期影响。风控参数的设置拟在调节市场热度,平抑行情变化。考虑到保证金、手续费等参数与交易持仓量的变化量纲不同,在分析相关参数与交易持仓量变化波动相关性时,本文决定采用变异系数(Coefficient of Variation)来衡量不同风控参数下交易、持仓量的运行情况。具体计算方式如下。

变异系数越大,交易持仓相比其平均值波动幅度越大。本文以2016-2018年各品种的相关数据为基础,分别计算不同品种运行的变异系数,并利用皮尔森系数计算风控参数与变异系数之间的关系。本文以保证金与平今仓手续费为代表进行重点分析。具体结果见表2、3。考虑到相关系数的计算要求相关风控参数经历过多次调整,因此表2、3仅保留了所选区间内符合条件的品种进行分析。

 

表2.保证金与品种长期波动的变异系数

 

 

表3.平今仓手续费与品种长期波动的变异系数

 

从表2、3可发现,整体来看,保证金及平今仓手续费数值大小与交易持仓波动变异系数的关系为负相关。当保证金或平今仓手续费增大,对应品种的交易持仓量波动比率相对更小,具体数值因品种差异而有较大的变化。观察表格,发现存在部分品种的相关系数为正的情况,可能是因为调整点聚集在单边行情或大波动行情下。基于上述分析,我们决定将风控措施参数引入特征序列,作为预测的基础。

 

(四) 品种交易持仓行情与风控措施参数的短期关系

 

除长期维度外,本文以2016-2018年相关数据为基础,尝试探索风控参数的短期变化对市场运行的影响。经数据分析,从全市场角度来看,保证金及手续费变化对于交易持仓量的短期影响较为随机,没有显着规律。基于此,本文决定根据交易特征将客户分为四个群体,如长线客户、短线客户、大客户及小客户 2 。整体来看,保证金对于持仓量影响较明显,而平今仓手续费对于交易量影响更显着。具体见图3、4。图3中四个小图分别代表四个客户群体下保证金调整幅度与持仓量之间的关系。x轴表示保证金调整前后数值变化的大小,y轴表示保证金调整前后五日内持仓量均值的变化幅度。图中每一个点均代表历史上一次真实调整。图4中,x轴代表平今仓手续费调整幅度,y轴表示调整前后五日内交易量均值变化幅度。观察图3可知,当保证金上调时,大客户及长线客户持仓量呈现降低趋势;当保证金下调时,小客户及短线客户的持仓量呈现上涨趋势。观察图4可知,平今仓手续费上调对于短线客户交易量减少的影响较为明显,也符合普遍认知;相应的,下调手续费对于短线及小客户交易量促进有一定作用。

 

短期来看,风控措施参数对于不同客户群体的交易持仓有一定影响。因此,本文将风控参数措施的变化值也引入特征向量。

图3.不同客户群体下保证金调整幅度与调整点前后五日持仓量均值变化关系

 

 

图4.不同客户群体下平今仓手续费调整幅度与调整点前后五日交易量均值变化关系

 

三、特征工程与模型构建

 

基于上述分析,交易持仓量受到多重因素的影响,不同因素影响程度不一而同。本文尝试利用多模型融合方式捕捉数据之间的不同关系,挖掘深层价值,并对未来交易持仓量进行预测。具体问题定义为:针对任一合约,第T日收盘后,根据当日现行风控措施参数及历史运行数据,预估未来5个交易日的交易量与持仓量。

 

数值预测相关问题中,特征选择是模型构建的重要基础,决定了模型效果。本文经过数据分析及实验迭代,最终决定选择包含结算参数、行情特征、客户特征及合约特征等四大类共317维特征。其中,结算参数包含如历史价格波动、合约间价差等多维度特征;行情特征包含了历史交易持仓相关数据特征;客户特征包含不同属性客户的特征数据及不同客户群体的交易特征;合约特征重点提取了合约运行特征及合约阶段,约束预测结果。

 

表4.数据特征表

 

上述317维特征中,7维为合约约束性特征,310维为历史交易相关的时序特征。完成特征提取后,本文开始构建三个机器学习模型。具体细节如下。

 

(一)整合移动平均自回归(ARIMA)

 

在统计与经济相关领域,ARIMA(Autoregressive integrated moving average)模型是一种常用的时间序列预测算法,该模型通常应用于平稳时间序列,或通过差分平稳过程消除均值方程的非平稳性的序列。其中,自回归(AR)是统计上处理时间序列的一种方法,衡量序列自身在不同时刻随机变量的相关性,利用变量以往时刻的取值来预测当期时刻的取值,并假设它们为线性关系。该方法被广泛的应用于金融序列相关的建模问题中。移动平均模型(MA)是另一种对单一变量进行时间序列建模的方法。因本文的问题较为契合ARIMA的常用场景,因此决定利用它捕捉交易持仓量序列的时序关系。

 

(二)基于支持向量机的回归模型(SVR)

 

ARIMA模型是基于捕捉时序相关性直接预测未来交易量持仓量,同时我们希望利用更多的信息量以求获得更好的预测效果。我们决定利用支持向量机来预测未来交易量持仓量的涨跌幅度作为补充。支持向量机(Support Vector Machine)是一种广泛应用于分类与回归问题中的机器学习模型。该方法的核心是将低纬度不可分特征使用“核函数”有效的进行非线性处理,映射到高维特征空间。通过寻找高维空间中的超平面对数据进行分类或回归。

 

(三)序列到序列模型(Seq2Seq)

 

Seq2Seq模型,全称为Sequence to Sequence,是由谷歌大脑团队和Yoshua Bengio团队提出的一种广泛运用在翻译、文本自动摘要及一些回归预测问题上的深度神经网络。在提出之初,Seq2Seq主要被用来解决自然语言处理相关的问题。但因其强大的时序关系挖掘能力,近年来也被逐渐应用于数值型序列的预测问题中。如图所示,本文所用网络通过编码器(Encoder)与解码器(Decoder)两个过程将过往十日的行情特征作为输入序列,将其映射为未来五日的交易量或持仓量序列。编码器利用非线性函数将输入序列组合为隐藏层的隐藏向量,该向量具备表达输入序列信息及潜在关系的能力。解码器将传递来的隐藏向量进行解码,并结合输入的T~T+4日的市场行情特征,逐日预测未来T+1~T+5日的交易持仓情况。

图5.Seq2Seq模型流程图

 

四、多算法融合模型构建

 

期货市场行情瞬息万变,客户群体的交易持仓行为受到众多因素的影响,因此单一模型容易对历史数据产生过拟合现象,并且面对未知影响时模型鲁棒性与泛化能力较差。基于此,本文提出基于ARIMA、SVR及Seq2Seq三个单一模型的融合模型,并利用网格搜索技术进行参数权重配置。

 

(一)单一模型训练

 

构建融合模型之前,需要利用历史数据训练单一模型,设定最优参数。本文采用2016-2018年三年的数据作为数据集,并将数据集分为均等三份,前两份用做训练数据集,后一份用做验证数据集。实际训练中,利用训练数据拟合模型,根据验证数据效果优化参数,直到效果达到“瓶颈”即停止训练。

 

(二)模型融合

 

为增强模型的鲁棒性,本文决定构建基于单一模型的融合模型。为提高预测效果,我们需要为三个单一模型科学的分配权重,最优化模型效果。模型权重属于超参数,一般做法是根据实验结果不断进行人工判断调整。考虑到人工较难穷尽各种组合,且比较难配置到最优参数。本文使用网格搜索(Grid Search 3 )进行自动化权重分配调优。

 

经过Grid Search的搜索,最终参数配置如下。

 

表5.融合模型超参数权重配置表

 

 

五、模型评估

 

(一)模型准确率及置信区间

 

为科学评估模型效果,本文定义如下参数评估模型预测效果,具体如下。

假定当前日期为T日,P i 表示第T+i日的交易量(或持仓量)预测值,T i 表示第T+i日的交易量(或持仓量)的真实值,Acc表示最终衡量实验结果的准确率,本文中我们使用Relu函数对最终结果进行平滑处理,减少极端值对于模型评估影响。从上述公式定义中易知,准确率结果处于[0,1]区间之内,数值越大表示预测效果越好。

 

为多角度评估模型效果,本文在准确率之外引入了置信区间概念。计算每个品种预测准确率置信度为95%的区间范围,具体计算方式如下:Avg代表N个预测日的平均准确率,Delta代表N个预测日的标准差,定义95%置信区间为[Avg-delta*1.96, Avg+delta*1.96]。通常来说,置信区间的上下界代表了预测结果的可信度及波动性。上下界数值越高,差值越低表示预测效果更好。

 

本文选取2020年12月21日至2021年1月22日共19个交易日计算准确率与置信区间,结果见表6。从表中可发现,融合模型对于持仓量的预测较好,平均值达到了80%以上,棉花、白糖甚至超越了85%。交易量的波动相比于持仓量更大,因此预测结果也相对逊色一些,但是仍有8个品种超过了70%。持仓量预测的置信区间上下界普遍较高,也和持仓量走势的稳定性较为一致;交易量预测的置信区间相对较宽,下界相比于持仓量更低,但整体比较稳定。

 

表6.各品种预测准确率及置信区间

 

 

(二)融合模型与单一模型比较

 

为直观展示模型融合的优势,本文以CF1805整个挂牌周期为标的,比较融合模型与各单一模型的预测效果,结果见下表。从表7中可知,融合模型的交易持仓量预测准确率均高于单一模型。将预测标的放宽至所有合约,计算统计后,融合模型在88%的情况下效果优于单一模型,证实了融合方案的有效性。

 

表7.主力合约交易持仓量预测效果对比表

同时,本文仍以CF1805为例,运用图形化模式展示各模型T+1日交易量预测值与真实值走势,具体见图6、图7、图8及图9。从图中易知,融合模型拟合真实趋势的效果更好,Seq2Seq与Arima模型在部分时间段与真实趋势背离较大。SVR模型对于行情拟合较好,但缺点是极端行情下的偏离度太大。

图6.融合模型真实交易量与预测量走势图

 

 

图7.Seq2Seq模型真实交易量与预测量走势图

 

 

图8.Arima模型真实交易量与预测量走势图

 

 

图9.SVR模型真实交易量与预测量走势图

 

(三)不同超参权重下的效果对比

 

融合模型中,单一模型的权重组合对于最终效果通常具有决定性因素。表8直观展示不同参数组合之间的差异性。表中黑体加粗一行为本文最终选定的超参权重,通过对比可发现,该组合准确率(0.92)高于表中列出的其他组合。

 

表8.不同超参数组合下融合模型预测准确率

 

 

六、模型可解释性

 

在时序数据预测的业务问题中,预测结果的可解释性是一个重点关注领域。针对融合模型,如何高效直观的解释预测结果成为一个挑战。本文使用LIME(Local Interpretable Model-agnostic Explanation) 4 方法对预测结果进行解释,量化不同特征对于预测结果的贡献度。以CF1805在2018年1月11日的交易量预测为例,真实值为46484手,模型预测值为49865手。使用LIME方法解释该预测结果,按照倒序排列,挑选对于预测结果影响最大的十个特征,具体见表9。表中共四列,第一列为特征具体名称,第二列为根据LIME计算的特征分叉阈值,第三列为特征实际值,第四列为特征贡献度。其中,特征分叉阈值意味着当特征值超过阈值时,该特征将对于最终预测结果产生影响。一般来说,LIME方法中的特征贡献度主要应用于评估分类问题中各个特征对于预测结果的影响大小。而本文的实际问题归属于数值回归,特征贡献度仍然可以表征该特征对于最终结果的正负影响度。举例来说,特征贡献度绝对值最大的是“第T-3日交易量振幅”这个特征,该特征分叉阈值为0.36,而真实值为1.11,远高于阈值。因此这个特征被LIME判定为对于最终结果贡献系数为0.139,即该参数值对于模型最终结果贡献了13.9%的正向影响。同时,我们可观察到特征“第T-3交易日成交持仓比”贡献度为-0.015,即该特征大小对最终预测结果影响为负1.5%。

 

表9.特征贡献表

 

 

七、总结与展望

 

本文尝试基于历史数据特征的融合模型实现交易、持仓量的预测。整体来看,融合模型可以有效预测未来五日交易、持仓量。其中,持仓量准确率较高,交易量准确率与稳定性相对较差。作为探索性项目,本文仍存在以下不足。

 

一是交易量预测准确率与稳定性有待提升。融合模型预测持仓量的准确率及稳定性均显着高于交易量。原因在于期货交易作为T+0交易制度,行情剧烈变动、主力资金拉盘、舆情消息等对于日内交易量的影响较大,规律不明显且可预测性相对较差。

 

二是预测特征抽取不够丰富。虽然本文从历史数据中抽取逾300维特征,但是并未将宏观数据、品种基本面等信息纳入特征。同时,对于短期内对市场参与度影响极大的舆情消息,目前也暂未提出好的量化方法纳入预测模型。

 

三是预测结果存在一定滞后性。市场运行在外部因素影响下常出现大幅波动,模型较难及时捕捉到这种异动,因此预测趋势经常慢于实际波动一个交易日。该现象在时序数据的预测上较为常见,本文利用高维度特征与模型融合在一定程度上缓解了这种现象,但仍无法完全避免。

 

—————————————-

 

1 皮尔森相关系数通常用来衡量两个变量之间的线性相关性,取值范围为[-1,1]。当为正时,表示两个变量之间为正相关,为负时表示为负相关。绝对值越接近于1表示相关性越强。

 

2 四类群体的划分主要基于客户的交易持仓周期及数量。

 

3 Grid Search是一个自动化参数调优方法,通过人工设置参数可取的数值集合,该算法通过穷举搜索的方式找到最优参数。

 

4 LIME是近年来机器学习界较为常见的模型解释工具,其核心原理是利用简单模型对复杂的黑盒模型进行拟合,进而完成结果解释。

 

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注