I have two matrices: One is an x-variable matrix (for example, 8 x variables as columns, with 1,000 rows, where each row represents a day). And one is a y-variable matrix (for example, 20 y variables as columns, with the same 1,000 rows).
I would like to calculate a matrix C that produces a rolling 100-day beta of each y variable to each x variable. Thus, C would have 20 * 8 = 160 columns. And moreover, since it's a rolling beta, the number of rows would be (1,000-100+1) = 901 rows (since the first 99 days wouldn't be eligible for a 100-day beta).
I have been playing around with various functions, e.g., corr, polyfit, and regress. However, none of these appear to address my query on rolling betas. In fact, I'm not sure I even see the ability to implement a rolling beta for just one variable in each matrix.
I would appreciate any guidance on this. Thank you!