动态滚动相关性 excel

Dynamic rolling correlation excel

我有一个金融时间序列数据集。我需要进行滚动 window 相关,我可以在其中控制 window 大小、1 个因变量和 2 个或更多自变量。更新数据历史时需要动态。我也希望可以选择家属

我已经设法建立了第一个动态相关性,其中 i 随着我改变 window 大小

的常数而改变

="Data!"&ADRESS($A11;MATCH(B;TitleArray;0))&":"&ADRESS($B+ROW(Data!$A);MATCH(B$;TitleArray;0))

单元格现在保存第一个变量window中数据范围的地址

然后我将这个公式复制到旁边列的下一个单元格中,用 C7 替换 B7

然后,在一个新的单元格中,我通过这种方式找到了两者之间的对应关系:

CORRELATION(INDIRECT($o);INDIRECT(P16))

在这里,我对集合 window 的因变量和另一个变量进行了校正(我用 24 个月对其进行了测试)。

任何人都可以帮助我完成最后的步骤以扩展它以显示剩余历史记录的最后更正 windows 吗?我想这应该很容易,但我似乎找不到正确的方法。我想我必须删除一些 $ 符号,然后将其向下拖动,但随后我会得到很多行,地址后跟相关性。可以用更聪明的方式制作吗?

如有遗漏请告知

谢谢!

有点难以遵循您的具体目标,但这里有一种使用 OFFSET 的方法。

=CORRELATION( OFFSET( Data!$A; $A11-1; MATCH($B7;TitleArray;0 )-1; ($B+2-$A); 1 ); 
              OFFSET( Data!$A; $A11-1; MATCH(C7;TitleArray;0 )-1; ($B+2-$A); 1 ) )

B7 是因变量的名称,C7 是自变量名称。当您向右拖动此公式时,它将比较 B7 和 C7,然后是 D7,等等。

注意:我的 OS 是英文的,所以这是我机器上的工作版本,以防我在翻译时出错:

=CORREL( OFFSET( Data!$A, $A11-1, MATCH($B7,TitleArray,0 )-1, ($B+2-$A), 1 ), 
         OFFSET( Data!$A, $A11-1, MATCH(C7,TitleArray,0 )-1, ($B+2-$A), 1 ) )

通过这种方法,您可以避免使用以下公式的辅助单元格:

="Data!"&ADDRESS($A11;MATCH(B;TitleArray;0))&":"&ADDRESS($B+ROW(Data!$A);MATCH(B;TitleArray;0))