Podcast #128: We chat with Kent C Dodds about why he loves React and discuss what life was like in the dark days before Git. Listen now.
12

it doesn't require normality. What it requires is that the investor's decisions are determined by mean and variance. A normal distribution is determined by mean and variance, so if you assume joint normality then there is no point in the investor being interested in anything else. (we try to discuss assumptions thoroughly in our book, Introduction to ...


10

This is indeed an interesting question. According to this website, a paper by Goldman Sachs [Tierens and Anadu (2004)] proposes three alternative methods for estimating average stock correlations: Calculate a full correlation matrix, weighting its elements in line with the weight of the corresponding stocks in the portfolio/index, and excluding ...


6

What you basically do here is a Principal Component Analysis (PCA). A good starting point in the financial sphere is Managing Diversification by Attilio Meucci (2010) Page 3: "The most natural choice of uncorrelated risk sources is provided by the principal component decomposition of the returns covariance [...] The eigenvectors define a set of N ...


6

I just want to add to vonjd's answer some info on the comparison of the 3 methods. This is too big for a comment so I'm posting as a separate answer but please upvote his answer, not mine. Do the differences in methodologies matter in practice? To gauge the practical importance of the biases in methods 2 and 3, we calculate the weighted stock correlation ...


6

Let $s$ be a $N\times1$ vector of standard deviations and $C$ be an $N\times N$ correlation matrix. The covariance matrix is equal to $$\Sigma=\text{diag}(s) \ C \ \text{diag}(s)$$ where $\text{diag}(x)$ is a function that takes an $N\times1$ vector and puts it on the diagonal of a $N\times N$ matrix. If you get some better standard deviation estimates, ...


5

The given matrix can not represent a covariance matrix since it would imply that asset 1 is negatively correlated to asset 2 and asset 3. But asset 2 is negatively correlated to asset 3 which contradicts the first statement. In general a covariance matrix has to be positive semi-definite and symmetric, and conversely every positive semi-definite symmetric ...


5

We have weights $w_A$, $w_B$ and $w_C = 1 - w_A - w_B$ that sum to $1$. With de-meaned returns $r_A$, $r_B$, and $r_C$, the portfolio variance is $$E\{[w_A r_A + w_B r_B + (1 - w_A - w_B)r_C]^2 \} = w_A^2\sigma_A^2 + w_B^2\sigma_B^2 + 2 w_A w_B\rho_{AB}\sigma_A \sigma_B,$$ assuming the cash volatility $\sigma_C$ is zero.


4

One way to this is the following (you can code all these constraints if you use the right software, I am doing such things using mathematica) You define $w_{i,j}$ which is the weight of asset $j$ in subportfolio $i$, furthermore you define $w =(w_j)_{j=1}^{\text{no of assets}}$ the total weight of the portfolio in asset $j$. the objects for the optimization ...


4

He is forced to use some tricks because Excel can only take average of a rectangular area, but he wants the avg of upper non-diagonal elements of the matrix only. So he subtracts $\frac{1}{n}$ (the average of the 1's on the diagonal), then scales the result by $\frac{n^2}{n(n+1)/2}$ which is the number of total elements divided by on-or-below-diagonal ...


4

This is a common problem in covariance matrix estimation, with several possible solutions. One of the simplest involves two steps: (1) You compute each element of the covariance matrix on a 'best efforts' basis, meaning you take the covariance of the two time series involved after REMOVING any data pairs having a N/A value. (Note that this means each ...


4

Multivariate volatility models for replacing the sample covariance matrix with in the mean-variance portfolio selection model: RiskMetrics 1996 EWMA (Exponentially weighted moving average) covariance matrix RiskMetrics 2006 EWMA covariance matrix Multivariate DCC-GARCH covariance matrix Jon Danielsson "Financial risk forecasting" has EWMA and GARCH for R ...


3

There are 2 issues that come to mind What is the correct definition of semi-covariance $$ \frac{1}{n}\sum\limits_{i = 1}^n {\sum\limits_{j = 1}^n {\min \left( {{r_i},0} \right)} } \min \left( {{r_j},0} \right) $$ $$ \frac{1}{n}\sum\limits_{i = 1}^n {\sum\limits_{j = 1}^n {\min \left( {{r_i}{r_j},0} \right)} } $$ 2. Can you get a positive semi-definite ...


3

one solution that works is set up the usual correlation matrix and pre- and post multiply by a diagonal matrix with semi standard deviations down the diagonal taking care that they are not zero


3

It depends on your investment process: more specifically, on how you generate views. Here are three practical cases which lead to different choices for $\Omega$: Let's assume you are an investor who acts on (more or less) arbitrary bits of opinion: e.g. you like Italian equities because you like Italy, and German equities because you find Angela Merkel's ...


3

In The Black-Litterman Model In Detail Jay Walters says the following on p. 13 (top paragraph): First, by construction we will require each view to be unique and uncorrelated with the other views. This will give the conditional distribution the property that the covariance matrix will be diagonal, with all offdiagonal entries equal to 0. We constrain the ...


3

For a swap, we have a sequence of re-setting and payment dates. The # of forward rates corresponding to the # of payment dates. For example, let us assume that we have $n$ payment dates $t_1, \ldots, t_n$, where $0< t_1 < \cdots < t_n$. Then there are $n$ forward rates. During the simulation, for time steps prior to $t_1$, there exist $n$ "...


3

You have to find the market portfolio, which is the portfolio with maximum Sharpe Ratio: $$S^*(w)=\frac{R_p(w)-R_f}{\sigma_p(w)}$$ So calculate this ratio and maximize it (I think there is also an exact analytic expression for the market portofolio weights). Then investors will mix this optimal "best" Market portfolio with the riskfree asset based on ...


3

I think Cholesky on correlation matrix is better because it makes code apply more generally in case we don't have full rank. For example, suppose we want to simulate three correlated normals with covariance matrix [[a^2,0,0], [0,b^2,0], [0,0,c^2]] i.e. variables are uncorrelated and have vols a, b, and c. Because this is positive definite, we can do ...


3

You can use the either, as both necessarily are symmetric positive definite; covariance is a personal preference. It's really just a matter of scaling, as $\mathcal{N}(0,\Sigma)$ is distributionally $\sqrt{\Sigma} \mathcal{N}(0,1) $. Correlation would require additional scaling (i.e. multiplication of every $\mathcal{N}(0,\rho)$ element by its respective ...


3

I thought I would answer the question of "what am I using." All shrinkage estimators map to a Bayesian estimator that differs only in the prior distributions. In other words, you get a point estimate that is indistinguishable from a Bayesian estimate except that the calculation rule determines the prior distribution. Stein estimators for the Gaussian are ...


3

A useful decomposition is, in R's matrix notation, V = S %*% C %*% S, in which S is a matrix with the standard deviations on the main diagonal and zeros elsewhere, and C is the correlation matrix. (See this note on Matrix Multiplication with Diagonal Indices.) To get a meaningful V, you need to have C positive (semi)-definit. A simple way to achieve this is ...


3

I do not have access to this book but I suppose the decomposition is the cholesky decomposition (if you use R, simply generate it with chol(cov(g)) where g is a matrix with forecasts. What the transformation is doing are essentially two steps: 1. You replace the forecasts g with the normalized forecasts g-E(g). This can be done by demeaning the matrix (R: ...


3

Broadly speaking, as you probably already know, there are 2 approaches to estimating large covariance matrices: 1) Shrinkage Methods like Ledoit-Wolf that try to reduce the noise in a large matrix (N by N) that has been estimated using the conventional method. 2) Factor Models of Covariance as described in for example Connor Korajczik 2007 that assume that ...


3

EDITED You are right. We have to look town to the "leaves" in each iteration. I would do it the following way: If $L_i^{(j)}$ is the set of indices in the $j$ branch ($j \in \{1,2\}$), then we define $s_i^{(j)}=\sum_{n \in L_i^{(j)}w_n}$, the weight of the branch before scaling and $n_i^{(j)}=\left|L_i^{(j)}\right|$ the number of leaves in the branch. ...


3

After writing an email to Meucci directly, I posted the question in his LinkedIn Group ARPM - Advanced Risk and Portfolio Management. Below are his answer and the answer of other group members, which echo the answer and comments already given here on SE. Attilio Meucci Suppose that you are in an ideal world where you have a perfectly balanced panel of data ...


2

Let $t$ be the number of days (time periods), and let $p$ be the number of assets. You have $t=1000$ and $p=10000$. For any given dataset, it is assumed that the sample covariance matrix $\mathbf{C}$ accurately represents the population covariance matrix $\boldsymbol{\Sigma}$, however, as $p \rightarrow t$ or if $p > t$ (as in your case), the ...


2

I think that your problem can be solves by using another estimator for your covariance matrix. A so called shrinkage estimator leads to covariance matrix that is non-singular. Then a Cholesky decomposition should work (maybe there is even a short-cut in the shrinkage world, I will check alter on). The R package corpcor contains functions to perform ...


2

A few points. First, In a typical factor model, the idiosyncratic piece (what you call $Var[\epsilon_k]$) is non-negligible, which results in a $\hat\Sigma$ that is going to be well-conditioned. From a numerical point of view, this is very convenient. The more well-conditioned a covariance matrix, the less susceptible the optimization routine is to round-...


2

Your issue demonstrated in R with interesting solution Equity Risk Model Using PCA. Another useful link in Matlab by Nick Higham himself NCM implementation by Nick Higham written for Matlab. Another good discussion on shrinkage and other aspects of Correlation Adjustment


Only top voted, non community-wiki answers of a minimum length are eligible