基于文本挖掘的商品波动率预测模型探析

最新信息

基于文本挖掘的商品波动率预测模型探析
2023-09-04 08:33:00
波动率在期货和期权交易中都起到了关键作用,它会显著影响期货做市商交易的成本与风险,也是期权定价的关键部分,所以研究波动率具有重要意义。本文通过对较低频的以日频数据计算的波动率、以月度为时间区间的波动率进行预测,并得出相关结论。
  [理论意义]
  波动率是金融资产价格变动的速率,绝大多数形式的投资都会在某种程度上受到波动率的影响。波动率拥有短期聚集性和长期均值回归的特点,在相对较短的时间内,受市场情绪、资讯信息、宏观经济指标多种因素影响,商品价格波动可能会更加剧烈,但市场具有一定的稳定性和均衡性。因此,在经历了一段时间的高波动率或低波动率后,最终波动率将会回到其长期平均水平。
  波动率的预测在实际交易场景中具备较大的意义。对做市商来说,波动率会显著影响交易的成本与风险。例如,当市场出现单边趋势行情、波动率大幅抬升时,做市商往往会积累大量的单边头寸,在承担更大价格风险的同时也提高了对冲成本。对期权交易者来说,波动率是期权定价的关键,期权的价值部分取决于未来股价的不确定性,而这种不确定性就是通过波动性来衡量的。因此,对波动率的衡量和预测在衍生品交易中起到了举足轻重的作用。
  [方法概述]
  针对波动率的研究和针对价格的研究并没有本质上的区别,本文研究的重点是对较低频的以日频数据计算波动率(close-to-close),以月度为时间区间的波动率进行预测。研究低频波动率需要考虑到两个特点:一是较高频领域使用的一些盘口因子不太适用此类场景,二是对低频波动率来说,影响因素会比高频波动率多出很多。任何可能冲击商品的事件,比如公共卫生事件、地缘政治冲突、加息等,都会对市场波动造成很大影响,这需要交易者对市场有一个全面而深入的了解和跟踪。
  为了全面深刻地了解哪些因素可能影响商品市场,我们基于文本挖掘方法去识别波动率影响因素,随后使用这些影响因素对波动率进行预测。
  确立文本挖掘模型
  文本挖掘模型即DP-Sent-LDA模型,是基于Sent-LDA模型基本原理开发的主题模型。作为目前最常用的主题模型,LDA是一种无监督贝叶斯机器学习模型,用于识别一组文档中包含的主题,LDA根据每个主题的单词的离散概率分布自动生成主题摘要,并进一步推断每个文档的主题离散分布。不过,LDA基于“词袋”假设,即可以忽略文档中单词的顺序,这可能会导致句子中的每个单词都从不同的主题中采样,但在某些情况下,文档中的每个句子仅与一个主题有关。因此,Sent-LDA模型被提出来考虑句子之间的边界,并假设句子中的所有单词都是从同一主题中采样,在这种“每句话一个主题”的假设下,不同句子中的单词不可以互换。
  DP-Sent-LDA在Sent-LDA的基础上进一步改进,在使用Sent-LDA时,句子无关词中包含的冗余信息可能会干扰研究者对主题数量和细节的判断。因此,模型引入了依赖解析(DP)过程来解决这个问题。通过使用依赖解析过程,一个句子可以被解析成使用有向边表示单词,及其与句法修饰符关系的直观树或图形结构。具体来说,这个直观树的结构由一个唯一的根节点和其他几个节点组成,其中有向边表示它们之间的关系。根节点中的词通常传达最关键的信息,随着直观树不断增长,其节点的词变得不那么重要。因此,使用依赖解析过程,可以有效提取每个句子中的关键词,生成预处理后的金融文本数据集。
  图1给出了LDA、Sent-LDA 和DP-Sent-LDA 三个模型的图形表示。给定一个文本语料库,让M、S、N、K 和V 分别表示文档数、文档中的句子数、文档中的单词数、主题数和词汇表大小。Dirichlet(·)和Multinomial(·)分别表示参数为(·)的Dirichlet分布和多项式分布。βk表示主题k的V维词分布,θ表示文档的K维主题比例。η和α表示相应Dirichlet分布的超参数。w表示来自每个句子s 的单词集。u表示来自每个句子s的关键字集。基于这些符号,Sent-LDA 的图形如图(b)所示,它在图(a)所示的原始LDA的层次结构中添加了一个句子层S。图(c)中DP-Sent-LDA的图形用关键字集u代替了原来的词集w。
  图1为LDA、Sent-LDA 和DP-Sent-LDA 的图形模型
  挖掘资讯识别影响因素
  确立了文本挖掘模型之后,通过第三方资讯机构搜集整理与各个商品品种相关的资讯,利用DP-Sent-LDA模型分析数十万条资讯,对资讯内容进行文本挖掘,来识别对于商品价格的影响因素并生成单词云。在每个单词云中,单词的字体越大,相应的文本出现在资讯标题中的概率就越大。
  通过分析我们大致得到了近30种重要影响因素,如图2所示,我们将所有因素分为市场因素、宏观因素以及生产因素三类。每一个大类又可以进一步细分,比如市场因素可以分为现货、期货、国际市场以及相关市场;宏观因素可以分为政策、政治和经济三类;生产因素则分为内部和外部。每一个小类又包含了若干个影响因素,如现货市场这个小类会有现货价格、供需、库存和战略存储这四个影响因素,对每一个影响因素,我们会再去寻找相应的代理指标,指标也会有一个或者多个,如供需中又会有供给、需求以及其他一些衍生指标。
  图2为商品波动率影响因素
  图2中所有因子又分为左右两列,右边一列是共享因子,所有品种都会受到共享因子,比如地缘政治、天气等因素造成的影响,但影响方式和影响程度可能不完全一样。左边一列是特有因子,主要是品种自身会受到的影响因素,每个商品实际对应的代理指标是不同的。
  [实证分析]
  基于文本挖掘所得的影响因素预测波动率以分为以下几个步骤:
  第一步,寻找代理指标。
  在通过文本挖掘得到商品价格的影响因素后,还需要寻找影响因素所对应的代理指标具象化并获取数据进行分析。举例来说,地缘政治冲突是重要的影响因素之一,但该影响因素本身是抽象化的词汇,所以需要用Wind上的“地缘政治指数”作为其代理指标以便获取数据进行分析。因为不同的商品具有不同的影响因素,所以部分因素只影响个别品种。以能源化工板块的代表性品种原油为例,其在内部生产因素大类中没有相应的影响因素,因为原油的生产不取决于种植、原材料和工艺。
  第二步,进行数据处理。
  在获取所有影响因素的代理指标之后,我们还需要对数据进一步处理。数据的处理如图3所示。对于日频价格类数据,计算其20日收益率的滚动波动率;对于其他非价格类的日频数据如成交量、开工率等,计算其滚动20日的波动率。对于非日频数据(周频、月频、季频),我们先取其相对上一期的绝对值变动,随后前向填充为日频数据。选取绝对值变动的原因是,在一般情况下,影响因素的大幅正向变动或者负向变动都会引起波动率抬升。
  图3为数据处理与波动率预测
  经过波动率计算与日频转化后,将所有调整后的数据用z-score方法进行标准化后再代入回归模型,使得模型最终的回归系数具有可比性。
  综合考虑之后,我们选取了Lasso模型作为回归模型。Lasso由于使用了1—范数(回归系数绝对值之和)作为惩罚项,故称为“绝对值收缩”(Absolute Shrinkage),同时具备变量选择(Selection Operator),故得名“最小绝对值收缩与筛选算子”(Least Absolute Shrinkage and Selection Operator)。
  一方面,由于波动率的影响因素较多,多个影响因素存在多重共线性,而Lasso避免了在预测变量过多时,采用普通最小二乘估计(OLS)带来的过拟合和多重共线性的问题;另一方面,Lasso模型的另一个优点在于可以直接将冗余预测变量的回归系数压缩到零,进而发挥变量选择的作用,获得精简且更有效率的预测变量集,同时也可以减少对重要回归系数的过度压缩。
  在回归模型的目标值上,我们使用波动率的变化作为回归模型的预测目标。波动率的变化使用未来20日的波动率减去历史20日的波动率,使得两个时间段不存在交叉。最终,在回归模型预测所得波动率变化再加上历史20日波动率,就可以获得我们对未来20日波动率的预测。
  第三步,时间序列交叉验证。
  在模型实证结果的验证上,我们采用时间序列交叉验证,在训练集上拟合模型,在预测集上检验模型预测效果,确保预测集上不会用到任何未来数据。预测集表现如图4所示,模型拟合优度为0.3779。
  图4为预测集散点图与回归曲线
  如果考虑预测的方向性,模型预测准确率达72.1%。相对而言,真实波动率上涨时模型预测效果较差。结果矩阵如表1所示。
  表1为模型预测方向性表现(单位:个)
  第四步,预测模型与均值回归模型对比。
  从长期来看,波动率有均值回归的特征,并且均值回归是波动率最重要的特性,所以需要将预测模型与均值回归预测模型相对比。
  图5为均值回归模型预测表现
  由图5可以看到,均值回归模型拟合优度为0.2777,要低于预测模型,并且均值回归模型在波动率大幅提高时的预测效果不佳。结合图6可以发现,均值回归主要在波动率较低时表现较优秀,并且只能捕捉到波动率的回复特性。然而,波动率并非只在低位快速抬升,可能由于突发事件等超预期因素影响,波动率在处于中位或高位的时候仍可能进一步抬升。相比之下,预测模型牺牲了一部分在波动率处于低位时的预测准确性,但通过引入更多影响波动率的重要指标,出现了和真实值一样的翘尾效应,部分捕捉到了影响因子与波动率之间的非线性关系。
  预测模型能够识别均值回归模型所无法捕捉到的非线性因素以及尾部风险,主要原因是模型除了均值回归还考虑到了各个重要因素的影响,如表2是模型中影响因素对预测值的贡献,并按影响因素重要性排序。
  不过,由于各个影响因素本身也是时序数据,如战略储备、市场活动、贸易政策等都会随着时间变化而发生改变。因此,每一期影响因素的影响系数以及其重要性排序也并不时时一致,但历史趋势因素体现了波动率的均值回复特性,基本在每一期的重要性排序中都排名靠前。而地缘政治因素则体现了波动率的突发事件驱动,在发生显著影响油价的重大地缘政治事件时排名靠前。
  举例来说,2022年俄乌发生冲突,俄罗斯作为原油主要出口国,地缘紧张局势引发了市场对原油供应中断进而导致供应减少和价格上涨的担忧,所以增加了油价的波动性,继而引发大宗商品和能源市场剧烈波动,国际油价大涨。对应的地缘政治指数一路上升,而在绝大部分时间中占据主导地位的历史趋势因素在此期间基本失效,这也意味着此时如果采用均值回归模型预测波动率将会出现严重偏差,预测模型由于考虑了包括地缘政治等各类因素,所以能够抓住此类突发事件对价格及波动率的冲击,能够在一定程度上规避因市场高度不确定性所带来的风险。
  站在规避短期剧烈冲击的角度上来看,地缘政治指标应该是最重要的影响因素。然而,由于在俄乌冲突发生之前,地缘政治指标与原油未来波动不存在显著相关性,所以模型并未将地缘政治指数赋予过高权重。只有当俄乌冲突发生之后,模型才给予地缘政治因素较高的权重,使得地缘政治的相关指标出现了一定的滞后性。
  尽管预测模型在地缘政治指标上出现了滞后,但模型却捕捉到了另一个小众因素——运输费用的异动。如图7所示,在俄乌冲突发生的时候,因为运输费用提前出现反转,导致该指标的波动率加大,从而提高了模型的预测效果。运输费用的提前反转在一定程度上弥补了预测模型对地缘政治因素影响波动率的滞后性。
  从该案例可以看出,波动率预测体系不仅包含了常见的波动率影响因素如历史趋势等,还囊括了许多平时容易忽略的小众因素,在波动率预测中较为全面,并且能更好地捕捉波动率异常波动的发生,有助于降低价格冲击对波动率预测造成的影响。
  第五步,归因分析。
  Lasso模型的一大优势就在于可以对波动率进行归因分析。Lasso模型是线性回归模型,每一期的预测值都可以通过拆分成每个影响因素的贡献值,归因分析有助于解释波动率的来源和各因素的贡献,揭示波动率发生变化背后的驱动因素,并且可以基于归因结果检验模型的有效性和适应性,进而对模型进行调整与修正。
  对商品波动率影响因子的归因分析,包括因子贡献度、因子系数以及因子值。因子值即影响因素本身的大小,是回归方程中的自变量,因子值的绝对值越大代表影响因素本身对波动率的影响越大。因子系数是回归方程中的自变量系数,代表了影响因素与波动率之间的关系强度。因子贡献是对应的因子值与因子系数之间的乘积,因子贡献直接影响了波动率的大小。
  图8是根据模型对原油的归因分析,可以从因子贡献度、因子系数以及因子值三方面进行分析。从因子贡献来看,运输费用、历史趋势、市场活动、政治冲突、战略储备是直接影响原油波动率的五个主要因素。其中,历史趋势、贸易政策、战略储备的因子系数为负,这也就意味着当这几个因子处于高位的时候,将会认为波动率出现反转,而运输费用、政治冲突则相反。结合现实情况,当战略储备处于低位、地缘政治局势紧张时,波动率将会处于上升状态。从因子系数来看,历史趋势的因子系数绝对值是最大的,这也意味着当价格处于比较极端的位置时,历史趋势对波动率的反转影响将十分强烈,说明原油波动率长期具有均值回归的特性。从因子值来看,由于油价受运输费用影响非常大,运输费用本身对原油波动率的影响是最大的。综上来看,通过归因分析得出的结论都符合现实的经济学含义,证明预测模型的归因分析有助于对波动率的影响构成持续的监控和进一步分析。
  [研究结论]
  因为波动率在期权和期货交易中都起到了关键作用,所以对波动率的研究具有重要意义。本文将研究重心聚焦在低频波动率上,进行研究并得出了一定结论:
  第一,文本挖掘方法能够获取较全面的商品影响因素。
  第二,预测模型优于均值回归模型,并出现了与历史波动率一样的翘尾效应。
  第三,在俄乌冲突发生之前,预测模型通过小众因子提前捕捉到了油价的异动。
  研究证明,预测模型对低频波动率的预测较为准确,并且在识别非线性因素、尾部风险以及归因分析中更具优势。(作者单位:华泰期货)
(文章来源:期货日报)
免责申明: 本站部分内容转载自国内知名媒体,如有侵权请联系客服删除。

基于文本挖掘的商品波动率预测模型探析

sitemap.xml sitemap2.xml sitemap3.xml sitemap4.xml