原油期货价格预测模型CEEMDAN-PSO-ELM①

2020-03-23 06:03崔金鑫邹辉文
计算机系统应用 2020年2期
关键词:学习机分量原油期货

崔金鑫, 邹辉文

(福州大学 经济与管理学院, 福州 350116)

(福州大学 投资与风险管理研究所, 福州 350116)

引言

原油期货作为一种非常关键的能源金融衍生品,其价格变化幅度较大, 且具有较高的时变特征, 原油期货价格的变化对全球经济都产生着显著的影响[1].因此, 对其价格作出准确的预测, 不仅可以为期货投资者以及市场监管者提供决策参考, 同时也利于原油期货市场的长期健康发展.然而, 与其他金融价格序列相类似, 原油期货价格序列具有非平稳、非线性、多频率等典型特征, 因此, 对其价格作出精准预测较为困难.即便如此, 国内外依然有学者对其展开了预测研究.

传统的金融时间序列预测方法主要包括ARMA(AutoRegressive Moving Average)模型、ARIMA(AutoRegressive Integrated Moving Average)模型和GARCH (Generalized AutoRegressive Conditional Heteroskedasticity)模型, 然而它们无法完全挖掘出金融时间序列的非线性特征, 预测效果往往不佳.随着数据统计科学以及计算机技术的发展, 神经网络模型受到了学者们的青睐, 并在金融时间序列预测领域得到了大量的应用, 例如: ANN (Artificial Neural Network)人工神经网络模型[2]、SVR (Support Vector Regression)支持向量机回归模型[3]、BPNN (Back-Propagation Neural Network)神经网络模型[4]、ELM(Extreme Learning Machine)极限学习机模型[5]、ANFIS (Adaptive Network-based Fuzzy Inference System)自适应模糊推理系统[6]、LSTM (Long Short-Term Memory)长短记忆神经网络模型[7]等.随着预测研究的不断深入, 学者们发现单一机器学习预测模型的预测性能仍有提升的空间, 因此学者们探寻出了一种更加有效的预测模型: 数据分解技术与机器学习算法相结合的预测模型.遵循着“分解”、“预测”、“集成”的整体建模架构, 国内外学者们针对金融价格时间序列展开了大量的预测研究, 例如: 将经验模态分解算法与前馈神经网络相结合的EMD-FNN (Empirical Mode Decomposition-Feed forward Neural Network)模型[8];将集合经验模态分解算法与粒子群算法优化的最小二乘支持向量机进行结合的EEMD-PSO-LSSVM(Ensemble Empirical Mode Decomposition Particle Swarm Optimization Least Square Support Vector Machine)模型[9]、将集合经验模态分解方法、长短期记忆模型和Adaboost 算法相结合的EEMD-LSTMAdaboost 模型[10]、将互补集合经验模态分解与改进的极限学习机相结合的CEEMD-EELM (Complete Ensemble Empirical Mode Decomposition-Extended Extreme Learning Machine)模型[11]等.

CEEMDAN 完全自适应集合经验模态分解是由Colominas 等[12]提出的, 利用一种自适应的噪声生成算法对EEMD 集合经验模态分解算法进行改进, 由于CEEMDAN (Complete Ensemble Empirical Mode Decomposition with Adaptive Noise)分解算法所具备的优异性能, 因而近些年来被大量学者所采用, 并且将其与机器学习预测模型相结合并应用到各个领域, 例如: 股市预测[13]、风速预测[14]、交通流预测[15]、电力负荷预测[16].然而, 目前尚未有学者将其运用于原油期货价格预测.基于此, 本文采用CEEMDAN 分解算法对原始的原油期货价格序列进行分解, 以期更好地挖掘出原始价格序列的内在特征.

PSO-ELM 基于粒子群优化的极限学习机模型目前在二氧化碳排放量预测[17]、太阳能光伏发电量预测[18]、交通流量预测[19]、碳排放权交易价格预测[20]等领域均已显示出其优异的预测性能.然而, 还未曾见到将PSOELM 模型用于原油期货价格预测的文献.因此, 本文将PSO-ELM 模型作为基础预测模型, 探究其是否可以提升原油期货价格预测的精准性.

综合已有文献, 多数学者针对石油现货价格展开预测研究.然而, 随着商品金融化程度的不断加深和商品期货市场规模的不断扩大, 商品现货价格逐渐参照期货进行定价, 尤其是石油现货价格的定价完全参照期货价格[21].因此, 对原油期货价格序列展开预测研究将更具现实意义.基于以上认识, 将CEEMDAN 数据分解算法和PSO-ELM 粒子群优化的极限学习机模型进行组合, 本文构建出了一种CEEMDAN-PSO-ELM预测模型, 以期进一步提升原油期货价格预测的精准性和稳健性.

1 相关理论及模型

1.1 CEEMDAN 分解算法

在经典的集合经验模态分解过程中, 一定次数的平均并不能完全抵消所添加的白噪声序列, 并且重构误差的大小与集成的次数有关.尽管重构误差会随着平均次数的增多而逐渐地减小, 但是所耗费的时间也会增加[16].而在本文采用的CEEMDAN 分解流程中,在每个阶段添加有限次数的自适应白噪声序列, 即可使得重构误差在较少的平均次数逼近于零.

将原始的原油期货价格序列记为 x(n ), 则第t(1,2,···,T)次 所添加的白噪声序列记为λt( n), 因此, 第t次分解的原油期货价格序列可以被表示为xt(n)=x(n)+λt(n) .将第i 个由EMD 分解算法和CEEMDAN分解算法产生的模态分量记为: Ei(·)和.参照已有研究[15,16], CEEMDAN 分解步骤如下:

第1 步: 先通过EMD 分解算法对原始原油期货价格序列进行分解, 从而得到第一个模态分量:

第2 步: 在第一个阶段 ( i=1)计算第一个唯一的余量信号:

第3 步: 将实验重复 t(1 ,2,···,T)次, 在每次实验过程中, 对信号 r1( n)+ε1E1(λt(n))进行分解, 当得到第一个EMD 模态分量时停止.此时得到第二个模态分量:

第4 步: 在剩下的每个阶段中 (i= 2,3,···,I), 计算第i 个余量信号, 其计算方法与第三步相同.此时, 就可以得到第 i+1个模态分量:

第5 步: 判断余量信号的极值点个数是否至多不超过两个, 如果是, 则算法停止, 也即此时的余量序列无法继续进行分解, 则一共得到 I个模态分量.最终的余量信号可以表示为:

因而, 原始的原油期货价格序列 x(n) 最终可以被分解成为式(7):

1.2 PSO-ELM 粒子群算法优化的极限学习机模型

极限学习机 (Extreme Learning Machine, ELM)是Huang 等[22]构建的一个只含有单个隐含层的前馈神经网络, 对其输入权重以及偏置进行随机的初始化, 并且得到相应的权值.另外, 在训练流程中并不需要对参数进行调整, 仅需对隐含层的神经元个数进行设置, 就可以得到唯一的最优解.具有简洁高效, 无需调整参数,学习速度快的优点[23], ELM 极限学习机的基本网络结构如图1 所示.

图1 ELM 模型结构图[23]

极限学习机模型由输入层、隐含层和输出层构成.输入层有n 个 神经元, 分别对应着n 个输入变量; 隐含层有 l 个神经元; 输出层有 m个 神经元, 分别对应着 m个输出变量.

PSO 参数优化算法主要是对ELM 模型第i 个输入层神经元与第 j个隐层神经元之间的连接权值 ω以及第j层隐层神经元的阈值b 进行寻优, PSO-ELM 模型的主要步骤包括[24]: 第1 步, 初始化粒子群算法的参数以及ELM 模型的参数, 其中第i个粒子的位置可以被表示为Xi=[ω11,···,ωh1,···,ω1n,···,ωhn,b1,···,bn]; 第2 步,寻找初始极值, 基于粒子的初始位置以及训练集数据对ELM 模型进行训练, 从而获取ELM 的输出值, 进一步算出粒子的适应度值.另外, 还需搜寻到个体及群体极值, 并且记录它们的位置及适应度值; 第3 步, 选取惯性权重, 在经历一定次数的迭代后, 粒子位置逐步趋于最佳, 此时惯性权重随着迭代次数的增加而不断减小; 第4 步, 进行迭代寻优操作, 在每一个迭代流程中,粒子依据个体和群体极值对自己的速度及所处的位置进行更新.不断地重复迭代流程, 最后即可获得最优个体的粒子位置及适应度值; 第5 步, 最优个体所对应的粒子位置即为ELM 模型的权值以及隐含层阈值.

1.3 Lempel-Ziv 复杂度指数

Lempel-Ziv 复杂度指数是由Lempel 和Ziv[25]通过构建算法程序实现的, 由于其良好的性能在非线性科学中得到了广泛的应用[26-28], 其主要被用来衡量序列的复杂性特征, 序列的Lempel-Ziv 数值越大, 表明序列的复杂度越高, 其所包含的周期成分越少, 规律性越弱,隐含的频率信息越丰富; 反之, 序列的复杂度越低, 呈现出一种规律性特征, 序列会按照一定周期波动, 频率相应较低.本文依据各个分量的Lempel-Ziv 数值来进行分量的重构操作, 以期提高分量重构的合理性.由于Lempel-Ziv算法流程较为复杂和冗长, 鉴于篇幅限制,此处不再赘述, 详细流程可见文献[25].

2 CEEMDAN-PSO-ELM 模型构建

本文的CEEMDAN-PSO-ELM 原油期货价格预测模型构建流程如图2 所示.

图2 CEEMDAN-PSO-ELM 预测模型构建

遵循已有的“分解”、“重构”、“预测”和“集成”的整体构建流程.第1 步, 数据分解阶段, 先采用鲁棒性更优的CEEMDAN 分解算法对原油期货原始价格序列进行分解, 进而得到若干个IMF (Intrinsic Mode Function)本征模态分量和一个残余项; 第二步, 分量重构阶段, 先计算各个分量的Lempel-Ziv复杂度指数, 然后按复杂度数值的高低进行归类, 从而将分解出的分量进行重构, 最终得到高频、中频和低频分量; 第3 步,重构分量预测阶段, 利用PSO-ELM 粒子群优化的极限学习机模型对高频、中频和低频分量分别建立相应预测模型, 采用PACF (Partial Auto Correlation Function)偏自相关系数选择预测模型的输入变量, 进而得到3 个重构分量的预测结果; 第四步, 预测结果集成阶段, 也即将高频、中频和低频分量的预测结果进行加总集成, 进而得到最终的原油期货价格预测结果.

本文的预测模型在理论上具备以下3 点优势: (1) 本文采用了更为稳健有效的CEEMDAN 分解算法, 它在分解流程的每一个步骤增添自适应噪声, 然后计算单一的余量信号从而获取各个模态分量, 可以有效解决EMD 模态混叠及EEMD 分解不彻底的问题[16]; (2) 本文选取ELM 极限学习机作为基准预测模型, 在其训练过程无需调整参数, 运行效率较高, 预测性能较优.并且, 采用PSO 粒子群优化算法对输入层权值及隐含层阈值进行参数寻优, 进一步提升ELM 预测模型的性能.(3) 本文预测模型遵照已有的“先分解后集成”的经典预测模型建模思路, 将智能分解算法及机器学习预测模型进行组合, 以期充分利用二者的优势, 较经典的计量模型及单一智能预测模型, 本文的预测模型在理论上更具稳健性和有效性.

3 实证分析

3.1 样本选取及描述性统计分析

本文参照龚旭和林伯强[1]的研究设定, 选取世界上交易量最大, 影响最广泛的原油期货合约之一的WTI西德克萨斯中质原油月连续期货交易合约.样本区间跨度从2015 年3 月24 日至2019 年1 月31 日, 共包含1000 个交易日; 参照已有研究[29,30]的区间划分方法,将总样本的前80% (2015-3-24 至2018-4-24, 800 个交易日)作为模型的训练集, 用于训练PSO-ELM 预测模型, 将剩余的20% (2018-4-25 至2019-1-31, 200 个交易日)作为模型的测试集, 用来测试模型的预测性能.本文的数据均来自WIND 万德数据库, 文章的实证过程均基于Eviews10 和Matlab 2014 (a)完成.

图3 给出了WTI 原油期货价格序列图, 可以明显看出, 原油期货价格序列呈现出明显的波动性和非平稳性.表1 为原油期货价格序列描述性统计, 其结果也说明, 原油期货价格序列较离散, ADF (Augmented Dickey-Fuller)统计值P 值为0.4271, 表明原油期货价格序列非平稳.

为了进一步检验原油期货价格序列是否存在非线性特征, 本文对其进行了BDS (Brock-Decher-Scheikman)检验, 从表2 的检验结果可以看出, 嵌入维数从2 增加到10, P 值均为0, 表明原油期货价格序列呈现出典型的非线性特征.

图3 原油期货日度价格序列图

表1 原油期货价格序列描述性统计

3.2 原油期货价格序列分解及重构

样本的描述性统计和BDS 检验表明原始的原油期货价格序列呈现出典型的波动性、非平稳性和非线性特征.为了进一步挖掘价格序列的内在特征, 本文采用CEEMDAN 分解算法对原油期货价格序列进行分解, 共得到9 个IMF 本征模态分量和1 个残余项, 如图4 所示.

表2 原油期货价格序列非线性检验结果

图4 原油期货价格序列CEEMDAN 分解结果

为了使分量重构过程更加科学, 此处依据Lempel-Ziv 复杂度指数的数值来对分量进行重构, 从表3 的复杂度计算结果可以看出, IMF1~IMF4 的复杂度数值较大, 说明前4 个分量所包含的周期成分较少, 变化规律性低, 序列趋于一种随机状态; IMF5~IMF7的复杂度数值处于中等水平, 表明中间3 个分量存在一定的规律性,包含的频率成分相对较少; IMF8、IMF9和残余项的复杂度数值均小于0.1, 表明这3 个分量的周期性和规律性较强, 序列复杂度较低.因此, 本文将前4 个分量IMF1~IMF4 重组为高频分量, 中间3 个分量IMF5~IMF7 重组为中频分量, 剩余的两个分量以及残余项重组为低频分量, 分量重构结果如图5 所示.

表3 Lempel-Ziv 复杂度指数计算结果

图5 原油期货价格序列分量重构结果

图5 所给出的分量重构结果同样具备一定的经济含义[10], 高频分量呈现出十分复杂的序列特征, 代表着短期的市场波动因素, 这种短期因素所引起的原油期货价格序列的波动是不可持续的, 且方向不定, 频率较高; 中频分量的波动特征相对平缓, 代表着重大事件对原油期货价格序列的影响, 这种因素使得原油期货价格发生大幅度变化, 且持续时间较长, 但是最终会恢复到长期趋势线上; 低频分量呈现出非常平缓的趋势特征, 代表着原油期货价格的长期走向, 不易受到市场及外部环境因素的冲击, 可以通过低频分量预测未来的原油期货价格的大致走势.

3.3 CEEMDAN-PSO-ELM 模型预测

在完成了分量重构以后, 便可以对高频、中频和低频重构分量分别建立PSO-ELM 预测模型, 而在机器学习模型初始训练阶段, 参数的设定以及模型输入变量的选取都会对模型的预测效果造成显著影响,在参考了大量研究后, 本文的预测模型参数设定如下: PSO参数寻优算法的初始种群大小为25, 最大迭代次数为200, 惯性权重 wmin=0.8,wmax=1.2 ,加速因子c1=c2=2.0.利用PSO 对ELM 极限学习机模型进行参数寻优操作; ELM 模型的隐含节点设定为30, 隐含层节点输出权值范围为[-1, 1], 隐含层节点阈值取值范围为[0, 1], 输入层个数即为输入变量的个数 (需根据具体的预测分量而定).在预测模型的参数设定好了以后, 还需要确定高频、中频和低频分量预测模型的输入变量,本文采用PACF 偏自相关系数[29,31]来进行判定.本文最终的输入变量选择结果如表4 所示.

表4 输入变量选择结果

图6-图8 分别给出了高频、中频和低频分量的预测结果.

从图6-图8 可以明显地看出, 中频分量和低频分量的预测效果显著优于高频分量.原因可能是高频分量的序列复杂度较高, 序列中所包含的规律性特征较少, 因而利用极限学习机模型对高频分量进行预测仍然存在一定的误差.将高频、中频和低频分量各自的预测结果进行加总集成, 便得到了最终的原油期货价格预测结果.

图9 显示CEEMDAN-PSO-ELM 模型的预测结果.

从图9 可以清晰地看出, CEEMDAN-PSO-ELM 模型的预测值与真实值高度接近.为了更加科学稳健体现本文所构建模型的优异预测性能, 还需与本文所选取的基准预测模型进行预测效果的对比分析.

图6 高频分量预测结果

图7 中频分量预测结果

图8 低频分量预测结果

图9 CEEMDAN-PSO-ELM 预测结果

3.4 模型预测效果比较

为了科学稳健地体现出本文所构建的CEEMDANPSO-ELM 模型的优越性, 本文另外选取了15 个基准对比预测模型.在对比模型的选取上, 本文主要基于以下3 个方面的考量: (1)选取BPNN、SVR、ANFIS 和ELM 4 种单一的机器学习预测模型, 利用模型自身内部算法学习能力对原油期货价格进行预测; (2)采用PSO 粒子群参数优化算法对4 种单一预测模型的参数进行寻优, 以期提升它们的预测性能; (3)分别将EEMD 和CEEMDAN 两种分解算法与经过PSO 参数优化的4 种预测模型相结合.

通过分组对比, 可证明本文构建的预测模型性能的优越性, 也可体现出CEEMDAN 分解算法及PSO 粒子群参数优化算法的有效性, 还能体现出组合预测较单一预测模型的优势.另外, 此处采用均方根误差(RMSE)、平均绝对误差(MAE)、平均绝对误差百分比(MAPE)、Theil 不等系数(TIC)以及平均方向精准度(MDA)作为各模型预测效果评价指标, 本文相关计算公式如式(8)-式(12).其中, T 表示预测样本数, Yt代表t 时刻的原油期货价格真实值, Pt代表t时刻的原油期货价格预测值.RMSE、MAE、MAPE 和TIC 都是预测误差衡量指标, 值越小表明模型的预测效果越好;MDA 是衡量原油期货价格预测结果趋势与真实原油期货价格趋势一致程度的指标, 值越大说明模型预测结果方向精准度越高.

图10 和表5 给出了本文16 种预测模型的预测效果对比.

图10 模型预测结果对比图

从图10 和表5 中可以清晰地看出: 各个机器学习预测模型均具备一定的预测性能; PSO 粒子群优化算法提升了BPNN、ANFIS、SVR 和ELM 等4 种单一预测模型的预测性能; 将机器学习预测模型与数据分解算法相结合可以显著地提升单一预测模型的预测性能; 本文所采用的CEEMDAN 数据分解算法的表现,在一定程度上优于常用的EEMD 数据分解算法; 而ELM 极限学习机模型在单一预测模型中的预测性能最佳, 表明本文选取ELM 模型作为基础预测模型具备一定的合理性; 本文构建的CEEMDAN-PSO-ELM 预测模型不仅预测误差指标数值最低, 且方向精准性指标数值最高, 表明其预测性能最佳.为了保证本文实证结果的稳健性, 还需要进一步进行MCS (Model Confidence Set)以及DM (Diebold-Mariano)预测性能稳健性检验.

3.5 模型预测效果稳健性检验

MCS 检验是由Hansen 等[32]提出的衡量模型预测性能的一种方法, 相较SPA (Superior Predictive Ability)更稳健.由于篇幅限制, MCS 检验的理论框架及流程详见Hansen 等[32]、Zhang 等[33].为了得到MCS 检验中的各统计量以及 p值, 本文参照雷立坤等[34]的做法,将MCS 检验的参数设置如下: d=2 (block length), 模拟次数B=10 000 次作为Bootstrap 过程的控制参数,MCS 检验的显著性水平 α取值为0.1, 也即 p值大于0.1 的模型将幸存下来.

DM 检验是由Diebold 和Mariano[35]提出一种衡量模型预测效果的方法, DM 检验的原假设是目标模型A 的预期预测精准性与基准模型B 的预测精准性一致, 因此原假设可以表示为:

式中,

表6 和表7 分别给出了模型预测结果的MCS 稳健性检验和DM 稳健性检验结果, 从中可以看出, 本文所构建的CEEMDAN-PSO-ELM 原油期货价格预测模型相较于其他15 种基准模型预测性能最佳, EEMDPSO-ELM 模型的预测性能仅次于CEEMDAN-PSOELM 模型, 其余结论与3.4 节一致, 此处不再赘述.

表5 模型预测效果对比表

4 结论

原油期货价格序列具有典型的非平稳、非线性以及多频率特征, 鉴于原油期货价格序列预测的复杂性,本文构建了一种CEEMDAN-PSO-ELM 预测模型, 在本文的样本区间内, 得出以下实证结论: (1) 利用PSO粒子群参数优化算法对SVR、ANFIS、BPNN 和ELM等4 种单一预测模型参数进行优化, 可以显著提升单一预测模型的预测性能; (2) ELM 极限学习机的预测性能优于SVR、ANFIS 和BPNN 等3 种单一预测模型;(3) 将数据分解算法与机器学习预测模型相结合可以显著提升其预测性能; (4) 本文所构建的CEEMDANPSO-ELM 原油期货价格预测模型与其余基准预测模型相比预测性能最佳, 并且具备一定稳健性.本文的研究成果可以为期货市场投资者及监管者提供有力的决策参考, 同时为原油期货价格预测领域提供一种的新的视角和方法.

不可否认的是, 本文的预测模型也存在一定的不足之处: 第一, PSO 粒子群参数优化算法在运行过程中可能会陷入局部极值, 导致参数寻优效果不佳; 第二,在输入变量的选取上, 本文没有考虑到现实中影响原油期货价格变动的因素.因而, 可以从以下两方面改进预测模型: 第一, 将粒子群算法与其他的参数优化算法相结合 (例如粒子群算法与引力搜索算法结合-PSOGSA算法)对机器学习预测模型进行参数寻优; 第二, 优化预测模型输入变量的选取方法, 可以在模型输入变量选取上考虑更多的现实影响因素.

表6 MCS 检验结果

表7 DM 检验结果

猜你喜欢
学习机分量原油期货
警惕平板学习机骗局
“机”关
画里有话
一斤生漆的“分量”——“漆农”刘照元的平常生活
一物千斤
论《哈姆雷特》中良心的分量
中国原油期货动了谁的奶酪?
从学习机到上网本