A New parameterization of Correlation Matrices

In volatility modelling, a typical challenge is to keep the covariance matrix estimate valid, meaning (1) symmetric and (2) positive semi definite*. A new paper published in Econometrica (citing from the paper) “introduces a novel parametrization of the correlation matrix. The reparametrization facilitates modeling of correlation and covariance matrices by an unrestricted vector, where positive definiteness is an innate property” (emphasis mine). Econometrica is known to publish ground-breaking research, and you may wonder: what is the big deal in being able to reparametrise the correlation matrix?

There are many statistical methods that are problematic to use for volatility modelling, exactly because the results are not guaranteed to be valid. The new reparametrization opens the door for all those methods.

Say you have a 3 by 3 matrix, the 3 off-diagonal elements could be, courtesy of the new proposal, stacked and modeled\estimated\predicted individually. Once you are done, it is assured that you get a valid correlation matrix. This is in contrast to working with the matrix “as a whole” (a la exponentially moving average), or coming up with underlying process’ suggestions (a la GARCH) so as to guarantee a valid result (reminder: symmetric and positive semi definite).

The most straightforward method I can think of, which was never before relevant for volatility modelling is linear (or non-linear) regression and variants thereof. There was never a point in applying a regression (or ridge regression, or LASSO regression) to the individual entries of the covariance matrix if, at the end of it, the result would not be invertible. But now it is possible using the new proposed parameterization.

The paper “A New parameterization of Correlation Matrices” is short and clear. Code is included and the numerical algorithm is fast enough for practical purposes. Code from the paper is below.

Code

You need to have the packages fBasics and expm installed to be able to execute this code.

Example
Assume you have a 5X5 correlation matrix, so 10 off-diagonal elements. Simulate from a random normal the diagonal, and verify that the mapping proposed in the aforementioned paper indeed result in a valid correlation matrix.

If you don’t get a positive definite result try reducing the tolerance level tol_value.

Footnotes and References

* See here for the rationale.

  • Archakov, Ilya, and Peter Reinhard Hansen. “A new parametrization of correlation matrices.” Econometrica 89, no. 4 (2021): 1699-1715.
  • One comment on “A New parameterization of Correlation Matrices”

    1. Can you explain how this works? I took a look at the arXiv version of the paper and couldn’t really grok how the while loop works.

    Leave a Reply

    Your email address will not be published. Required fields are marked *