1. 引言
统计套利是一种市场中性策略,主要是将具有一定相关性的两种或两种以上的金融产品进行配对,利用数学工具发现其错误的定价关系,根据错误的定价关系建立头寸,待其价格关系恢复正常后平掉头寸以获取收益。随着计算机技术的快速发展,深度学习技术在金融市场的应用越来越广泛 [1],基于神经网络等机器学习方法构建投资策略已是当前学术界的热点研究问题之一 [2] [3]。
卷积神经网络对于网格型数据的特征有着很好的捕获功能。而时间序列可以看作是一维的网格型数据,根据卷积神经网络的这种特性,卷积神经网络在时间序列特征的抓取方面有着一定的优势。近年来已有许多学者将卷积神经网络用于处理股票数据上 [4]。因此,卷积神经网络在金融时间序列上有着很大的应用前景 [5]。Cao (2018) [6] 对卷积神经网络进行了提升,将卷积神经网络和支持向量机相结合,对1996~2014年的HIS指数进行了预测分析。Alonso (2020) [7] 利用卷积神经网络对比特币等加密货币的价格进行了预测,证实了比特币价格的可预测性。其他机器学习方法与金融数据领域的结合也较为密切。Huck [8] [9] 利用深度学习方法对美国股市的股票进行分析,通过排序和配对的方法建立了投资组合模型。Krauss (2017) [10] 等利用了BP神经网络、梯度提升树、随机森林对标普500指数中包含的成分股进行了研究分析,首先对股票进行排序,然后对排序最高的股票和排序最低的股票之间进行套利交易,最后通过排序的变化从而实现模型的动态性。侯世英 [11] 等通过将BP-神经网络和GARCH模型相结合建立了统计套利策略,对资产的选取、配比和交易信号的确定都进行了修正。
本文在前人的研究基础上提出了一种基于卷积神经网络的股指期货套利策略。使用卷积神经网络对股指的价差进行预测,根据实际价差的增量与预测价差的增量的相对位置建立套利策略。由于我国的股指期货尚处于发展阶段,存在着一定的套利机会,所以本文对中证500股指期货和上证50股指期货进行了实证研究。
2. 卷积神经网络
2.1. 卷积神经网络模型构建
卷积神经网络(CNN)是通过卷积核对数据进行扫描从而“记忆”数据的特征,所以卷积神经网络不仅可以对数据的单个特征进行描绘,而且可以更好的捕捉特征之间的关系。传统的机器学习方法,比如SVM模型和XGboost模型并没有对样本特征之间的关联信息做更多的挖掘。此外本文处理的数据为高频时间序列数据,具有对长期数据相关性不高,变化频率快、随机性强、难以预测的特点。所以本文通过对卷积核进行改进,建立了基于一维卷积核的卷积神经网络模型,一维卷积核可以高效的跟随高频数据的变化,并且可以更好的挖掘序列数据之间的关系。
因为卷积神经网络的主要构组成部分为卷积层和池化层,所以影响卷积神经网络结构的因素主要有卷积层层数,每层卷积核的个数,卷积核的大小和样本的长度。期货价格具有当前价格对长期数据的依赖较弱的特点,所以输入数据的长度本文考虑20,30,40,70四种情况。一个完整的卷积神经网络应该有输入层,卷积层,池化层,输出层,四个层结构。因为时间序列数据相对于图片数据的复杂度较小,在对卷积层的考虑过程中,本文分别考虑一层卷积层和两层卷积层两种情况。关于卷积核的设置,卷积核的个数分别考虑5,8,16,32四种情况,而卷积核的大小和样本的长度相关,其中关于输入数据的维度,输出数据的维度和卷积核的大小设置满足以下公式。
(1)
式中:L表示输入样本的长度,C表示卷积核的大小,S为卷积核移动的步长,N表示输出数据的维度,
表示向下取整。

Table 1. Relationship between sample length and convolution kernel size
表1. 样本长度和卷积核大小关系
表1表示样本长度和卷积核大小的相关性,当样本维度为20时,卷积核大小只设置为3,当样本长度扩充到70时,卷积核的大小则可以取3,5,9,13四种情况。
2.2. 评价指标
对于预测结果,本文使用三种评价标准:均方误差(MSE),皮尔逊相关系数(r),和决定系数(R2)。均方误差反应了预测序列与实际序列的偏差;相关系数反应了预测序列的趋势与实际的趋势的一致性,相关系数越接近1,预测序列与真实预测的趋势越一致;而决定系数反应了模型对真实值的拟合效果。通过这三种指标的综合评价,调整得出最合适的网络参数,然后构建基于一维卷积核的卷积神经网络。
3. 套利策略
传统的统计套利多是基于标准距离法进行无套利区间的确定,使用样本均值和样本方差,来确定套利区间。但是标准距离法只是根据价差的总体均值和总体方差确定套利区间,不能很好的把握价差特点,而且当价差出现单边趋势时标准距离法将不再有效 [12]。所以,本文套利策略基于动态阈值的方法,不再使用固定的标准距离作为套利信号,而是根据价差的走势对套利区间进行不断地调整实现动态套利的过程。中证500指数和上证50指数都在一定程度上反映了A股的行情走势,在走势上具有一定的联动性。本文选择中证500股指期货合约和上证50股指期货合约进行套利分析。股指期货和商品期货不同,股指期货的价格是由股指期货的点数乘以合约的乘数构成,中证500股指期货合约和上证50股指期货合约的乘数分别为200和300,本文按照两个期货合约分别为一手的基准仓位建立套利头寸时,则构建价差时,中证500股指期货价格和上证50股指期货价格应分别乘以乘子2和3。
(2)
式中:IC和IH分别表示中证500和上证50股指期货的价格。spread表示两种合约的价差,则该式表示在进行套利交易时,做多一手价差,相当于同时买多一手的上证50股指期货合约和买空一手中证500股指期货合约。买空一手价差,相当于同时买空一手的上证50股指期货合约和买多一手中证500股指期货合约。
本文使用
来表示预测的价差的增量,
表示真实值的价差增量,
(3)
(4)
式中:
表示通过卷积神经网络对
的预测值,将
的前T(不包括t)个值作为输入,预测得到的
。
表示实际的价差增量,
表示预测的价差增量,价差增量表示预测值与前一时间节点的变化值,通过预测值的价差增量可以提前预判价差的变化浮动,从而对套利信号做出指导。
交易信号是根据
与
的相对位置进行设置,在本文中交易的阈值设置为移动阈值X(t)和M(t),当
绝对值大于浮动阈值X(t)时,进行开仓交易,当spread反向变化回归移动均值M(t)时,进行平仓交易。具体的交易策略如下:
当
时,买入一手上证50股指期货多头,买入一手中证500股指期货的空头;
当
后,再次
时平仓;
当
时,买入一手上证50股指期货空头,买入一手中证500股指期货的多头;
当
后,再次
时平仓。
4. 实证分析
4.1. 数据处理
一般情况当月的期货合约具有成交量大,市场流动性好,交易活跃的特点,在市场中把这样的合约称之为主力合约。本文选取的数据为中证500股指期货和上证50股指期货每分钟主力合约的行情数据。数据长度为一个自然年:2019年6月3日到2020年6月1日,共58,807条记录。其中70%的数据用于训练集,30%的数据用于测试集,即训练数据为2019年6月3日到2020年2月14日的价差数据,测试数据为2020年2月14日到2020年6月1日的价差数据。数据来源于万得数据库。
在数据进行训练之间本文需要对数据进行预处理,因为股指价格数据的量级比较大,不利于神经网络参数的更新。所以,首先对数据进行归一化处理,使得数据范围限制在(0,1)之间。
(5)
式中:MAX(spread),MIN(spread)分别表示spread序列的最大值和最小值。
由于金融数据具有强噪声性,所以本文在训练模型之前对价差数据进行5分钟移动平均,以便去除噪声的干扰,使得本文的模型可以更好的把握数据的本质趋势。
(6)
式中:spreadt表示第t时刻的股指价差。
4.2. 预测过程
关于建立CNN卷积神经网络预测模型的过程,本文通过控制变量法,分别讨论模型的卷积层数,卷积核个数、卷积核大小,样本长度4个超参数。基于本文中卷积神经网络是对时间序列进行处理,时间序列数据相对于图片数据复杂度较小,所以,关于卷积层层数本文分别讨论1层和2层,为了避免模型的随机性使得对模型的结果的分析产生误判,所以讨论卷积层层数的过程中,分别设置样本的长度为30和40作为对比。因为卷积核的大小和样本长度相关,所以根据样本长度的不同,设置卷积核的大小分别为3和5,当模型的卷积层设置为两层时,第二层的卷积核个数设置为第一层的二倍,分别为5和10。

Figure 1. Predicted result based on model with different convolution layers
图1. 基于不同卷积层层数的模型预测结果
图1中real表示
,C1-S30、C1-S40和C2-S30、C2-S40分别为样本长度为30、40时卷积层层数分别为一、二时的价差预测值曲线。

Table 2. Predicted result of different convolution layers
表2. 不同卷积层的预测结果
通过图1和上表2中的MSE、R2和r可以看出,卷积层为1层的结果普遍比卷积层为2层的结果好,其中当超参数设置为(1, 5, 30, 3)时,均方误差为0.00007,决定系数R2为0.9908,皮尔逊相关系数为0.9959,最接近于1,结果表明此种情况下,预测数据与真实数据偏离程度最低,趋势最相似,对数据变异的解释能力也最强。所以在接下来的讨论过程中模型的卷积层数设置为1层。
确定了模型的卷积层数后,然后分析卷积核的大小,在对卷积核的研究过程中,为了产生更明显的对比性,固定样本长度为70,分别设置卷积核的大小为3,5,9,13。

Figure 2. Predicted results based on model with different kernel size
图2. 基于不同卷积核大小的模型预测结果
图2中real表示
。kersize_3、kersize_5、kersize_9、kersize_13分别为卷积核大小为3、5、9、13的价差预测值曲线。
表3表示当卷积层数为1,卷积核个数为5,样本长度为70,卷积核大小分别为3、5、9、13时,卷积神经网络对价差的预测结果。

Table 3. Predicted results of different convolution kernel sizes
表3. 不同卷积核大小的预测结果

Figure 3. Predicted results based on model with different sample size
图3. 基于不同样本长度的模型预测结果
通过上图和上表可以看出当Kernel_size为3时,均方误差MSE和R2都是最优的,皮尔逊相关系数r也为0.9918。表示当卷积核大小设置为3时,与真实数据的偏离情况最低和与真实情况的趋势相似性最高。所以,在接下来的情况中卷积核的大小设置为3。
确定了卷积层的层数为1和卷积核的大小为3后,接下来讨论样本的长度问题,因为训练数据为股指期货的分钟级价差数据,根据其特点,当前的价差受长期时间序列的影响较弱,所以设置样本长度分别为20、30、40、70。
图3中real表示
,sample_20、sample_30、sample_40、sample_70分别为样本长度为20、30、40、70的价差预测值曲线。
表4表示当卷积层数为1,卷积核数为5,卷积核大小为3,样本长度分别为20、30、40、70时,卷积神经网络的预测结果。

Table 4. Predicted results without sample length
表4. 不同样本长度的预测结果
当样本长度为20时,均方误差MSE为0.000029,决定系数R2为0.9963,皮尔逊相关系数r为0.9983,当样本长度为70时,均方误差MSE为0.00094,决定系数R2为0.8799,皮尔逊相关系数r为0.9581,可以观测到模型的表现效果随着样本长度的增加而衰退。这种结果也再次证实了高频股指数据对于短期的时间序列更加具有依赖性。
最后本文来研究模型卷积核个数,通过前面的分析可以固定卷积层的层数,卷积核的大小,样本的长度。然后设置模型的卷积核的个数分别为5、8、16、32。

Figure 4. Predicted results based on model with different kernel numbers
图4. 基于不同卷积核个数的模型预测结果
图4中real表示真实值。kernum_5、kernum_8、kernum_16、kernum_32、分别表示卷积核个数为5、8、16、32的价差预测值曲线。
表5表示当卷积层数为1,卷积核大小为3,样本长度为20,卷积核个数分别为5、8、16、32时,卷积神经网络的预测结果。

Table 5. Prediction results of different convolution kernels
表5. 不同卷积核个数的预测结果
通过实验分析可以得出当卷积核个数为32时,均方误差MSE为0.000023,决定系数R2为0.9970,皮尔逊相关系数r为0.9985。分别在4种情况中表现最好。
根据上面对模型中超参数的讨论,最后可以设置CNN卷积神经网络模型中卷积层的层数为1,卷积核的大小为3,样本长度为20,卷积核的个数设置32。为了对CNN模型的预测结果进行对比分析,本文采用国内应用较为广泛的SVM模型和XGboost模型,它们的预测结果分别如表6所示。

Table 6. Comparison between predicted value and actual value
表6. 预测值与实际值的对比
表6显示真实价差值的均值为0.296950,CNN模型预测值的均值为0.298125,真实价差的最大值为0.515797,CNN模型预测价差的最大值为0.512961。而SVM模型XGboost模型预测值的均值分别为0.400073和0.542577,最大值分别为0.569122和0.654671,和真值均相差较远。所以从预测序列分布来看,在股指期货序列的预测方面,CNN模型要好于SVM模型和XGboost模型。下面将基于三种不同机器学习模型的预测结果根据套利策略进行套利交易。
4.3. 套利策略
本文对2020年2月14日到2020年6月1日期间的上证50股指期货主力合约和中证500股指期货主力合约进行回测。根据中金所要求,股指期货交易的手续费率为万分之0.23。关于止损策略,本文设置为4个点位,即当策略连续亏损4个价差点位的时候强行平仓,由于股指期货的保证金率为10%,按照操作资金占总仓位的80%计算,本文中假设初始保证金为280,000元。通过卷积神经网络的预测模型,可以得到价差的预测序列
。通过
得到预测值的价差增量
。
(7)
(8)
套利过程中开仓和正常性平仓的阈值由
的移动平均值和
的移动标准差共同构成。开多仓和开空仓的阈值分别设置为
和
,平仓的阈值为
。
(9)
式中:
表示在t时刻的前s个
的移动平均值,
表示在t时刻前s个
的移动标准差值。
套利过程分为开仓、正常性平仓和止损性平仓,其中开多仓、开空仓和正常性平仓的交易阈值分别为
、
和
。则交易策略为:
当
时,买入一手上证50股指期货多头,买入一手中证500股指期货的空头;
当
后,再次
时或亏损超过4个价差点位时进行平仓;
当
时,买入一手上证50股指期货空头,买入一手中证500股指期货的多头;
当
后,再次
时或亏损超过4个价差点位时进行平仓。
4.4. 结果分析
为了使回测结果更加具有对比性,防止回测结果具有偶然性。本文将策略的开平仓阈值的参数s分别设置为40、50和60。即策略开仓阈值分别设置为
的前40、50、60期的移动均值加减两倍标准差,策略的平仓阈值分别设置为
的前40、50、60期的移动均值。策略的回测结果如下。

Figure 5. The curve net value and trend of spreads
图5. 策略净值曲线与价差走势曲线
图5中的蓝色、紫色、红色的曲线分别表示策略在阈值参数为40、50、60时的净值曲线。绿色曲线表示价差曲线。从图5中可以看出三种策略的净值曲线虽然在局部时有波动,但总体上表现为上升趋势。其中当阈值参数为40和60时策略的收益表现相对较好。并且通过图5可以看出无论价差的走势是在波动型走势(2020/3/11左右),还是趋势型走势(2020/4/7左右),策略的净值曲线总体都是上升趋势。
为了和基于卷积神经网络的套利交易策略进行对比分析,分别将基于SVM模型和XGboost模型的预测结果进行相同的交易过程,设置阈值参数为40,得出结果如表7所示。

Table 7. Return of arbitrage strategy
表7. 套利策略收益情况表
通过表7可以看出在阈值参数同为40的情况下,基于CNN模型、SVM模型、XGboost模型的收益率分别为15%、4.1%、4.7%,交易次数分别为328、300、352;最大回撤率分别为3.7%、3.2%、3.4%。所以可以看出在相同阈值参数的设置下基于CNN模型交易策略的收益率要好于基于SVM模型交易策略和基于XGboost模型交易策略的收益率。并且基于CNN模型的交易结果随着s值越大交易次数越少,这是因为s越大,阈值受越多数据的影响,因此套利区间越宽松,套利机会就越少。对于CNN模型,基于三种不同阈值参数模型的收益率分别为15%、8%、17%,最大回撤率分别为3.7%、3.5%、2.9%。年化收益率分别为50%、28%、57%。阈值参数s为60时,策略的年化收益率最大,并且同时最大回撤也最小。但阈值参数s为50时,策略的收益率相对最小,说明了策略的表现与s的大小并不呈单调关系。
5. 结论
通过对卷积神经网络的卷积层层数、卷积核大小、卷积核数量和样本长度进行分析,建立了基于一维卷积核的卷积神经网络模型。利用卷积神经网络模型对股指期货价差进行预测,预测结果显示价差的预测值与价差的实际值具有相似的分布。根据价差的预测增量与实际增量的相对关系确定动态的套利区间。对2020年2月14日到2020年6月1日的中证500股指期货主力合约和上证50股指期货主力合约进行了实证研究。实证结果显示在阈值参数为40的情况下,基于卷积神经网络模型交易策略的最大回撤率和年化收益率分别为3.7%和50%。在阈值参数同为40的情况下将卷积神经网络替换为SVM模型和XGboost模型进行相同的交易策略,策略分别获得了3.2%、3.4%的最大回撤率和13%、15%的年化收益率。在最大回撤率保持平稳的情况下,基于卷积神经网络模型的交易策略在策略收益方面获得了巨大的提高。在不同的阈值参数下,基于卷积神经网络模型的交易策略也分别取得了50%、28%、57%的年化收益率。因此,在股指期货价差预测方面,卷积神经网络要优于SVM模型和XGboost模型,并且当最大回撤率处于同一水平下,基于卷积神经网络的股指期货套利策略在要优于基于SVM模型和基于XGboost模型的套利策略。所以,将卷积神经网络应用在股指期货套利方面有一定的研究价值和应用价值。