时差相关分析

1 概念

1.1 相关程度与相关函数的联系

在概率论和统计学中,相关(Correlation,或称相关系数或关联系数),显示两个随机变量之间线性关系的强度和方向。在统计学中,相关的意义是用来衡量两个变量相对于其相互独立的距离。最常用的是皮尔逊积矩相关系数。其定义是两个变量协方差除以两个变量的标准差(方差的平方根)。

相关系数只是一个比率,不是等单位量度,无什么单位名称,也不是相关的百分数,一般取小数点后两位来表示。相关系数的正负号只表示相关的方向,绝对值表示相关的程度。因为不是等单位的度量,因而不能说相关系数0.7是0.35两倍,只能说相关系数为0.7的二列变量相关程度比相关系数为0.35的二列变量相关程度更为密切和更高。也不能说相关系数从0.70到0.80与相关系数从0.30到0.40增加的程度一样大。

对于相关系数的大小所表示的意义目前在统计学界尚不一致,但通常是这样认为的:

相关系数 相关程度

0.00-±0.30 微相关

±0.30-±0.50 实相关

±0.50-±0.80 显著相关

±0.80-±1.00 高度相关

1.2 互相关

互相关(有时也称为互协方差)函数是信号分析里的概念,表示的是两个时间序列之间的相关程度,描述信号 x(t),y(t) 在任意两个不同时刻 t1,t2 的取值之间的相关程度。它是两个信号之间相对于时间的一个函数,有时也称为“滑动点积”。这两个信号可以是随机信号,也可以是确知信号。通常通过与已知信号比较用于寻找未知信号中的特性。

两个函数互相关的含义是:对两个函数分别作复数共轭和反向平移并使其相乘的无穷积分。

性质:(1)互相关运算一般不服从交换律;(2) 互相关可以用卷积表示。

个人理解:(时间)超前/滞后相关(time delay analysis / lag regrssion)、时差相关(time lag correlation)、互相关(cross correlation function, ccf)可视为同义语。互相关包含前两者。(Really?)

2 应用:景气指标选择方法

image.png

3 计算


x,y 分别是两个时间序列,其中 y 为基准指标。
l为超前或滞后期, 被称为时差或延迟数 :表示同步;表示超前;表示滞后。
n 为所取数据的个数。
L 表示最大延迟数。
取不同的值, 分别代表不同的时差, 并计算时差相关系数, 取绝对值最大的 作为时差相关系数。
时差相关系数对应的时差数的正负, 可判断被选指标与基准指标先行、同步或滞后的关系。它反映了被选择指标与基准指标的波动最接近时的关系。只有超前相关性较强的指标才能被选为预测性指标。

4 实现

(1) Eviews

group里点view-cross correlation

(2) Matlab

xcorr 求序列的自相关和互相关。利用Fourier变换中的卷积定理实现。

c = xcorr(x,y) 返回矢量长度为2*N-1互相关函数序列,其中x和y的矢量长度均为N,如果x和y的长度不一样,则在短的序列后补零直到两者长度相等。

c = xcorr(x) 为矢量x的自相关估计。

c = xcorr(x,y,'option') 为有正规化选项的互相关计算;其中选项为"biased"为有偏的互相关函数估计;"unbiased"为无偏的互相关函数估计;"coeff"为0延时的正规化序列的自相关计算,为归一化选项,即互相关系数的最大值为1,通常是。其中,和分别是信号 x 和 y 的自相关函数值;"none"为原始的互相关计算。

可以查阅这篇博客了解xcorr函数的实现过程:自相关和互相关在matlab中的实现
也可以查阅matlab论坛中教学直接用FFt变换求两个序列互相关的方法:matlab求两个序列的互相关函数

corrcoef(x,y)表示序列x和序列y的相关系数,得到的结果是一个2*2矩阵,其中对角线上的元素分别表示x和y的自相关,非对角线上的元素分别表示x与y的相关系数和y与x的相关系数,两个是相等的。

(3) Python

计算时差相关系数
时间序列数据间量化同步的四种方法
用于计算同步指标的示例代码和数据包括:皮尔逊相关,时间滞后互相关,动态时间扭曲和瞬时相位同步。

(4) R

北大数院讲义 Chap 23 多元时间序列基本概念
ccf 函数

R 时间序列分析 CSDN
R 谱分析 CSDN
R 应用时间序列分析 psu 讲义

你可能感兴趣的:(时差相关分析)