专栏首页量化投资与机器学习机器学习在统计套利中的应用

机器学习在统计套利中的应用

谢谢大家的支持!现在该公众号开通了评论留言功能,你们对每篇推文的留言与问题,可以通过【写评论】给圈主留言,圈主会及时回复您的留言。

1. 简介

在投资领域,统计套利通常是指利用数学模型捕捉定价的无效性从而获利的过程。基本的假设是,价格将向历史平均回归。最常用且最简单的统计套利例子就是配对交易。如果股票P和Q属于同一行业或具有相似的特性,我们预期这两只股票的回报是相互跟踪的。因此,如果Pt和Qt分别代表相应的价格时间序列,我们对系统建模如下

其中Xt表示一个均值回复的Ornstein-Uhlenbeck随机过程。

在我们感兴趣的许多例子中,漂移项α相比Xt的波动非常小,因此经常被直接忽略。模型显示了一个反向投资策略,当Xt很小的时候,我们可以做多一美元的股票P同时做空β美元的股票Q;反过来,如果Xt很大的时候,我们可以空股票P同时多股票Q。

这种类型的配对交易机会取决于相似资产对的存在,因此是有限的。在这里,我们对配对交易进行自然延伸,称为指数套利。我们开发的交易系统试图捕捉目标资产与合成人造资产之间的差异。目标资产为伦敦证券交易所上市的iShares FTSE/MACQ;合成人造资产由一个数据流表示,来自于被认为与目标流相关的大量解释流数据集的线性组合。在我们的例子中,我们使用富时100指数的100只股票价格数据来复制目标资产。

我们首先对100只成分股做线性回归,选取的时间窗口为2009年4月到9月的101个交易日。通过主成分分析提取关键因素后,我们对模型进行校准,并将时间窗口切小到60天。使用的是每只股票的收盘价。这里的重点是将股票价格数据分解为系统性部分和非系统性部分,并对非系统性部分进行统计建模。我们同时使用线性回归和支持向量回归,并收集分解后的残余项。最后,我们对残差项建立自回归模型,研究均值回复特征,从而对目标资产生成交易信号。

2. 线性回归

我们选取2009年4月28日至9月18日共计101天的数据。我们选择这个时间段的原因是,给定100个特征变量,我们至少需要101个观察变量来训练线性回归模型中的101个参数。为了避免参数的过度拟合,我们只使用101个训练例子。

Pt表示目标资产,Qit表示第i只股票在时间t的数据。线性模型可以表示如下,

在Matlab中实现普通最小二乘法算法,我们得到参数θ和训练误差,即残差。

图1:100只成分股线性回归的残差

从图1中,我们看到,实证误差是可以接受的。然而,当我们用训练集以外的30个样本测试这个线性模型时,推广误差远非令人满意,如图2所示。这意味着我们正面临着过度拟合的问题,即使我们使用了可能的最小的训练集。造成这个问题的主要原因还是参数过多。因此,我们采用主成分分析法来降低模型的维度。

图2: 30天检测数据上的推广误差

3. 主成分分析(PCA)

现在,我们使用PCA来分析100只股票。相关矩阵的估计窗口为101天。位于频谱图顶端的特征值与其余大部分具有明显的差异。通过查看图3中相关矩阵的特征值,问题就变得很明显。显然,前20个特征值几乎显示了矩阵的所有信息。

图3:相关矩阵的特征值

现在,我们应用验证规则来寻找,到底使用多少个主成分能让我们得到最小的推广误差。考虑到模型维度的降低,我们重置窗口大小到60天以避免过度拟合的问题。对前20大主成分60天训练集的数据建立多元线性回归模型,我们发现,前12大主成分在30天测试数据上得到的推广误差最小。样本外残差如图4所示。

图4:前12大主成分在30天样本外数据上测试的推广误差

我们快速回顾这12大主成分在60天训练集上的实证误差。从图5中我们可以看到,残差从数量级上来说不如图1令人满意,但是它成功解释了在使用100只成分股时的残差趋势。因此,通过使用PCA降低模型的维度,我们可以避免参数的过度拟合。接下来,我们将利用样本内主成分回归后的残差生成交易信号。

图5:前12大主成分在60天训练集数据上的实证误差

4. 支持向量回归(SVR)

我们对通过主成分分析(PCA)得到的12个特征属性使用支持向量回归(SVR),采用高斯内核并用经验决定内核的宽度、成本和ε(松弛变量)参数。在用Matlab工具箱实现后,从图6和图7的训练误差图和测试误差图中,我们并没有看到这种方法起到了任何改善作用。这里的主要问题是,需要确定合适的SVR参数。

图6:对12大主成分在60天训练集上使用SVR得到的实证误差

图7:对12大主成分在30天测试集上使用SVR得到的实证误差

5. 均值回复过程

我们想要对目标资产的价格进行建模,如此以致得到衡量系统偏离程度的漂移项所占的比例,以及向整体行业水平均值回复的价格波动。当观察到价格波动显著偏离均衡时,我们构建一个交易策略。对股票引入一个参数均值回复模型,Ornstein-Uhlembeck过程,

dX(t)被认为一个平稳随机过程的增量,对价格中没有反映在行业中的非系统性波动进行建模,即前一部分中主成分线性回归的残差。注意,增量dX(t)的无条件期望值为0,条件期望值等于

条件期望值,即预期日收益的预测值,正负取决于(m-X(t))的符号。

这个过程是平稳的,可以通过一阶自回归模型进行估计。我们使用时间长度为60天的残差,并假设这个参数在整个窗口中是恒定的。事实上,模型显示如下,

其中,

因此,我们得到

6. 生成信号

我们定义一个标量,称为s-score,

s-score度量的是合成残差与单位标准差均衡之间的距离,即在我们的模型中,给定股票距离理论均衡值的距离。根据该领域的实证研究,我们基于均值回复的基础信号为

(1)当s < -1.25时,买入iShare FTSE;

(2)当s > 1.25时,卖出iShare FTSE;

(3)当s < 0.75时,平掉iShare FTSE的空头仓位;

(3)当s > -0.75时,平掉iShare FTSE的多头仓位;

基本逻辑是,只有当s-score远离均衡,且只有当我们认为我们检测到满足协整关系的残差出现异常变动时,才会开仓,然后当s-score接近水平0时平仓,因为我们预计大多数股票大部分时间是接近平衡的。因此,我们的交易规则是检测股票的大波动进行交易,并假设这个波动最终将回归平均。图8显示了在训练集中的60天里产生的信号。

图8: 60天里的交易信号

7. 总结

我们注意到在建立线性回归时,PCA有效地帮助了在100个特征属性中进行降维,从而摆脱过度拟合的问题。然而,我们看到,为了有效使用支持向量回归,关于学习SVR参数的技术还有待开发。我们看到,在测试数据(60天数据)上,当数值低的时候买入iShare FTSE,在数据高时卖出iShare FTSE,是具有盈利能力的。另一方面,在未来,非系统性因子可能表现出不规律性,可能导致指数系统性表现不佳或者显著优于PCA选择出来的重要因子,这可能会严重损害我们方法的有效性。为了实现一个系统的方法,持续学习可能是一个值得尝试的办法,根据最新信息更新我们的特征集。

本文分享自微信公众号 - 量化投资与机器学习(ZXL_LHTZ_JQXX),作者:CHINAQIR

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-04-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • LSTM Networks在股票市场上的探究

    LSTM Networks 简介 LSTM Networks是递归神经网络(RNNs)的一种,该算法由Sepp Hochreiter和Jurgen Schmid...

    量化投资与机器学习微信公众号
  • 1000+倍!超强Python『向量化』数据处理提速攻略

    1000倍的速度听起来很夸张。Python并不以速度著称。这是真的吗?当然有可能 ,关键在于你如何操作!

    量化投资与机器学习微信公众号
  • 干货 | Fintech人才缺口破百万:应届起薪60W, 没出校门就被抢光

    Fintech=Fin(金融)+Tech(技术性),Fintech的定义有很多,华尔街俱乐部对Fintech的定义是运用新技术给金融领域带来创新的技术和公司,大...

    量化投资与机器学习微信公众号
  • 公司跟你聊企业文化了吗

    最近听到一些人在聊企业文化。有的人觉得这是公司管理的灵魂,但有的人觉得这玩意儿很玄乎,虚得很。为啥会有不同的认识呢,我觉得可能还是因为大家身处的公司、位置,以及...

    奎哥
  • Python实现jieba分词

    0.说在前面1.结巴分词三种模式2.自定义字典3.动态修改字典4.词性标注及关键字提取5.高级使用6.作者的话

    公众号guangcity
  • 机器学习虾扯淡之Logistic回归No.44

    0x00 前言 大家好我是小蕉。上一次我们说完了线性回归。不知道小伙伴有没有什么意见建议,是不是发现每个字都看得懂,但是全篇都不知道在说啥?哈哈哈哈哈哈,那就...

    大蕉
  • 昨天520,小编被“祝福”震惊到了

    哲洛不闹
  • Kafka 分区重分配源码分析

    上一篇跟大家描述了 Kafka 集群扩容的方案与过程,这次就跟大家详细描述 Kafka 分区重分配的实现细节。

    张乘辉
  • Python小伙抓取汽车之家,做自驾游最强攻略!

    小编在浏览汽车之家的时候,发现一个很好玩的地方,就是里面的“旅行家”板块,为什么说好玩呢,因为这里是各个车主分享的自己的自驾游的游记,特别的精彩,正好小编也有做...

    云飞
  • 坐着马桶被抓去外星人飞船?VR游戏《VR Flush》让你脑洞大开

    小编刚一进入这款VR游戏《VR Flush》,就被自己所处的环境给震撼了。眼前是一个被上锁的门,白色门上还有一些随手的涂鸦。左边是一面窗户,右边是一堵隔墙,但这...

    VRPinea

扫码关注云+社区

领取腾讯云代金券