1
$\begingroup$

I have a process described as

$r_t = \mu + \Sigma_t^{1/2}z_t$

where $z_t$ is let's say a standard normal distribution residual and $\Sigma_t$ is the conditional covariance matrix. The $t$ stands for the time indicator. In a paper I have further description that

$\Sigma_t^{1/2} = (\alpha_{i,j, t})_{i,j=1...n}$

is the Choleski decomposition of the covariance matrix and $n$ is the length of the returns vector $r_t$. I also have that now the returns look like this $r_{i,t} = \mu + \sum^n_{r=1} \alpha_{i,r,t}z_{r,t}$.

So my question is whether the matrix $\alpha_{i,j,t}$ is the upper triangular matrix as obtained by f.e. the chol(x) function in Matlab or does it stand for something else?

$\endgroup$
  • 1
    $\begingroup$ Presuming $z_t$ is a column vector, which It appears to be, I think you need to take the transpose of the output of the MATLAB chol function. MATLAB defines Cholesky factor as upper triangular, and most of the rest of the world defines it as lower triangular. I think it needs to be lower triangular as used here. I am too lazy now to make sure I just got it right, so I leave this as a comment, not an answer, and leave it to you to check. $\endgroup$ – Mark L. Stone Apr 13 '16 at 23:34
  • 1
    $\begingroup$ Can you please cite the paper you refer at? (Or even better link it) In general it should be a lower triangular matrix for this to generate random numbers based on covariance matrix of $\Sigma$ but taking the square roots of the eigenvalues to get the square root of the matrix should work too. (@MarkL.Stone; I checked :) ) $\endgroup$ – usεr11852 Apr 13 '16 at 23:36
  • $\begingroup$ The paper I am referring to is here. Most of the question refers to Appendix A.3. $\endgroup$ – Masher Apr 13 '16 at 23:41
  • $\begingroup$ O.k., I double checked my comment, so now I made it an answer. $\endgroup$ – Mark L. Stone Apr 13 '16 at 23:47
  • $\begingroup$ Also just to be clear $z_t$ is a $t x n$ matrix, where $n$ is the number of assets and $t$ the number of observations. $\endgroup$ – Masher Apr 14 '16 at 1:03
1
$\begingroup$

You need to take the transpose of the output of the MATLAB chol function. MATLAB defines Cholesky factor as upper triangular, and most of the rest of the world defines it as lower triangular. As used here, it needs to be lower triangular, and is the transpose of the output of MATLAB's chol function.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.