小心伪回归发现的假关系

更新时间:2023-05-05 12:13:00 阅读: 评论:0

⼩⼼伪回归发现的假关系
作者:⽯川,量信投资创始合伙⼈,清华⼤学学⼠、硕⼠,⿇省理⼯学院博⼠;精通各种概率模型和统计⽅法,擅长不确定性随机系统的建模及优化。
1
⽣活中随处可见的伪回归
回归分析在量化投资中的应⽤⼗分⼴泛。⽐如在选股或者预测股票收益率时,⼈们常常使⽤宏观经济数据或公司基本⾯数据等对收益率回归,以期找出能够解释收益率的⾃变量(⼜称为因⼦)。由于⾦融数据之间的关系⼤多为线性,因此线性回归往往就⾜够⽤了;⽽因为线性回归⼜⾜够简单,这就使得回归分析更加普及。
回归分析的⽬的是为了找到⾃变量和因变量之间的相关性。然⽽,当我们对时间序列进⾏回归分析时,必须要警惕⼀类陷阱,它就是伪回归(spurious regression),它指的是⾃变量和因变量之间本来没有任何因果关系,但由于某种原因,回归分析却显⽰出它们之间存在统计意义上的相关性,让⼈错误地认为两者之间有关联,这种相关性称作伪关系(spurious relationship)。
伪回归在⽣活中随处可见,来看下⾯两个例⼦。
例⼦⼀:冰淇淋销量和溺⽔⼉童数
某个夏天,⼈们发现镇上的冰淇淋销量和溺⽔⼉童数量同步上升。如果拿冰淇淋销量对溺⽔⼉童数量进⾏线性回归,得到的结论是前者是后者的⼀个很好的解释变量。但从现实⽣活中的逻辑来看,这两者应该有所谓的“冰淇淋卖得好,溺⽔⼉童数就多”的关系吗?这是否意味着“游泳池的⼉童都在吃冰淇淋”?正确的答案是,这仅仅是⼀个伪回归(下⼀节会解释成因)。
例⼦⼆:居民消费和鸬鹚个数
下图来⾃真实的数据,两条曲线代表的时间序列分别为丹麦居民消费的对数(红线)以及该国饲养鸬鹚数量的对数(蓝线)。从图中来看,它们显然⾮常相关。如果⽤红线对蓝线回归,得到的回归系数显著不为 0,且回归的 R-squared ⾼达 0.688,说明蓝线对红线的解释能⼒⾮常强。但这显然也是毫⽆意义的(因为居民消费和鸬鹚个数之间没有任何有逻辑的关联),它同样来⾃伪回归(成因和例⼦⼀不同)。
本⽂就来介绍伪回归。了解如何识别它,才能避免在构建量化模型时错误的使⽤不同数据之间的伪关系。
2
伪回归的成因和数学特性
伪回归的成因⼀般有两个。在上⼀节的第⼀个例⼦中,伪回归的成因是存在⼲扰因素(confounding factor,或称潜在变数 lurking variable)。在第⼆个例⼦中,伪回归的成因是两个变量之间的局部随机趋势(local stochastic trend)。
当两个变量同时受第三个因素影响时,这两个变量间可能存在误导性的相关性,这第三个因素称为⼲扰因素。在第⼀个例⼦中,⼲扰因素是夏天炎热的⾼温。⾼温造成了冰淇淋销量的上升;此外⾼温也使得更多的⼉童去公共泳池从⽽造成溺⽔事故增多。⾼温是造成冰淇淋销量和溺⽔⼉童数上升的共同因素;这两者本⾝之间并没有相关性。
在第⼆个例⼦中,伪回归的成因是随机趋势。对于量化投资中可能出现的伪回归,这种成因更普遍。从上⼀节的图中可以看到,居民消费和鸬鹚数量均随时间呈现上升趋势。这种趋势的巧合造成了它们之间在统计意义上的伪关系;然⽽它⼆者之间并没有因果关系 —— 我们⽆法说“由于居民消费的增加导致了鸬鹚数量的上升”,反之亦然。
关于随机趋势这个成因,来看另⼀个例⼦。考虑两个独⽴的布朗运动,它们的时间序列如下图所⽰(蓝线 vs 绿线)。红⾊⽅框画出的区域显⽰它们在局部表现出了同样的上涨或者下降趋势。如果我们⽤蓝线当⾃变量来回归绿线,得到的回归系数为 0.34(p-value ⼩于 0.001)。这显然是⼀个伪关系;这两个布朗运动相互独⽴,它们之间没有任何关系。
注意了,重要的话加粗说⼀遍:
这两个布朗运动的随机趋势并⾮来⾃同⼀个随机运动,⽽是来⾃两个独⽴的随机运动。因此,这两个时间序列展现出来的局部同向运动并不是来⾃某个公共的因素,⽽仅仅是因为巧合;它们之间的关系是伪关系。
如何避免伪回归呢?在上⾯的例⼦中,⽆论是居民消费、鸬鹚个数还是随机⽣成的布朗运动,这些时间序列都是⾮平稳的(non-stationary)。当我们对⾮平稳时间序列进⾏回归分析时,⾮常容易发现伪回归(例外是这些时间序列满⾜协整关系,下⽂会说明)。
当伪回归出现时,回归分析得到的残差序列(residual)不满⾜平稳性,我们可以以此作为判别伪回归的依据:如果回归分析的残差是⾮平稳的,说明发⽣了伪回归。在上⽂的例⼦中,居民消费和鸬鹚数量回归结果的残差序列和两个布朗运动回归的残差序列分别如下图所⽰。这两个残差序列均不满⾜平稳性。
伪回归告诉我们:我们不能仅仅因为两个时间序列共同运动就说它们之间⼀定存在相关性。
3
平稳性的检验
本节就来介绍如何检验时间序列的平稳性。掌握了这个技术,我们就可以检验⼀个回归分析得到的残差序列是否是平稳的,从⽽推断是否发⽣了伪回归。
断是否发⽣了伪回归。
简单的说,如果⼀个时间序列 {y_t} 在每⼀时刻 t 的取值的概率分布都⼀样、该分布与 t ⽆关,那么该时间序列就是平稳的。关于时间序列平稳性的详细解释,请参考《写给你的⾦融时间序列分析:基础篇》中的第四节:时间序列的平稳性。
为了说明如何判断平稳性需要讲到以下三个概念:unit root(单位根)、order of integration(单整阶数)、以及ADF检验。
3.1 单位根
单位根(unit root)是⾮平稳时间序列的特性之⼀。对于⼀个时间序列 {y_t, t = 0, 1, …},假设它可以写成p阶⾃回归函数如下:
其中ε_t 是残差序列;a_1,……,a_p 为回归系数。该时间序列的特征⽅程(characteristic equation)为:
如果 m = 1 是该特征⽅程的⼀个解,则称该时间序列存在单位根。
3.2 单整阶数
单整阶数(order of integration)是和单位根密切相关的⼀个概念。在时间序列特征⽅程的解中,如果 m = 1 是⼀个单重根(即在特征⽅程的所有解中,m = 1 这个解仅出现⼀次),那么该时间序列是⼀阶单整的(integrated of order one,记为 I(1));如果 m = 1 是⼀个多重根(重数为 d),则该时间序列是 d 阶单整的(记为 I(d))。
单整阶数在实际中的含义是什么呢?对于⼀个⾮平稳的时间序列,我们总可以捅过差分把它变成平稳的;差分的次数就是单整阶数。如果⼀个时间序列经过⼀次差分就变成平稳的,那么它就是⼀阶单整的;如果⼀个时间序列需要通过 d 次差分才能变成平稳的,那么它就是 d 阶单整的。
对于我们熟悉的股票价格序列,它的⼀阶差分为股票的收益率;由于收益率满⾜平稳性,因此股票价
格序列是⼀阶单整的。
3.3 ADF 检验
从上⾯的介绍可知,要想判断⼀个时间序列是否满⾜平稳性,核⼼就是看它有没有单位根。为此,可以采⽤ADF检验(全称为Augmented Dickey-Fuller test)。将 {y_t} 的⾃回归函数转化为 y_t 增量 Δy_t 的形式:
在上式中,如果时间序列 {y_t} 存在单位根,则λ = 0。ADF 检验的原假设是λ = 0、备择假设是λ <>
ADF 检验
原假设为 {y_t} 存在单位根,即λ = 0。该检验的统计量是λ和它⾃⾝标准误差之⽐,λ/SE(λ)。如果 {y_t} 满⾜平稳性,则λ/SE(λ) 显著为负。因此只有当这个统计量⼩于给定显著性⽔平的阈值(阈值是负数)时,我们才能在对应的置信⽔平下拒绝原假设、接受备择假设,备择假设为 {y_t} 不存在单位根、即满⾜平稳性。
对于回归分析得到的残差序列,通过 ADF 检验考察其是否存在单位根。如果能够在给定的显著性⽔平下拒绝原假设,则可以认为残差序列满⾜平稳性,从⽽推断出回归分析得到的相关性可信、没有发⽣伪回归。
4
协整 —— 处理⾮平稳时间序列的利器
在量化投资领域,收益率序列满⾜平稳性,⽽价格序列不满⾜平稳性。收益率满⾜平稳性仅仅说明价格呈现随机游⾛,它对于构建赚钱的投资策略⼏乎没有什么⽤。我们想要的是价格序列呈现出平稳性。
不幸的是,现实中投资品价格基本上都呈现(⼏何)布朗运动(见《布朗运动、伊藤引理、BS 公式》
系列⽂章)。这意味着投资品的价格均不满⾜平稳性的要求,因此如果我们想⽤其他数据 —— ⽐如宏观经济数据 —— 来预测投资品价格(⽐如上证指数)的⾛势就没什么意义,因为会发⽣伪回归。
好消息是,这⾥有⼀个例外:虽然单⼀投资品的价格不满⾜平稳性,但有时我们可以把多个投资品(通常是两个)线性组合在⼀起构成⼀个价差序列,⽽这个价差序列满⾜平稳性。
在数学上,如果多个⾮平稳的时间序列通过线性组合得到⼀个平稳的时间序列,则把满⾜这种关系称为协整(co-integration)。为什么会发⽣协整的?考虑两个投资品的价格序列为 {X_1t} 和 {X_2t},它们的⾛势可以表述为:
其中ε_1i 和ε_2i,i = 1,……,t 为构成 X_1t 和 X_2t 的随机过程。假设这两个价格序列的⼀个线性组合为:

本文发布于:2023-05-05 12:13:00,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/531873.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:序列   回归   时间   平稳性   分析   价格   得到
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图