Stabilizing Mean-Variance Optimization with Correlated Assets
Summary
The document examines a minimum-variance portfolio problem using a bank account, a stock, and call options on that stock. Monte Carlo paths under geometric Brownian motion supply estimated returns and covariance. Because the options and stock share a driver, the covariance matrix is poorly conditioned, raising concerns about the reliability and stability of the optimized weights.
It explains that small covariance eigenvalues make inversion amplify estimation errors, producing solutions that can change sharply when inputs change. Suggested remedies include flooring small eigenvalues, representing assets with a smaller set of factors, and adding a diagonal shrinkage term to the covariance estimate. It also discusses Black-Litterman expected returns as a way to align return estimates with market weights and covariance. Each remedy changes or discards information, and the answer offers no empirical comparison or definitive choice. The appropriate eigenvalue threshold and model specification remain judgment calls; robust optimization is mentioned as another avenue but not developed.
Key ideas
- Small covariance eigenvalues can magnify errors when optimization effectively inverts the covariance matrix.
- Flooring low eigenvalues can improve conditioning, but changes the estimated risk structure.
- Factor models reduce dimensionality by representing assets through shared drivers.
- Diagonal shrinkage trades some bias for lower estimation variability.
- Black-Litterman return estimates may improve stability by linking expected returns to covariance and market weights.
Tags
Full text
# Optimisation with strong correlated Assets
# Optimisation with strong correlated Assets
I have the following settings:
The allowed traded assets consists of 1 bank account, 1 non dividend paying stock and 19 call options whose maturity is in 30 days. I want to find an optimal static portfolio with holding period of 30 days. The current stock price is 150 USD and the 19 call options has strike price from 115 USD in 5 USD steps (i.e. 115, 120, 125 ....)
The minimization problem is thus:$$\text{minimize: }x^T\Sigma x\\\text{subject to: }\mu^T x=r\\x^TS\le w$$, where the second is the budget constraint and the first is the expected return being equal to $r$. $S$ is the price vector consists of prices of the 21 available assets at the beginning of holding period (1 bank account, 1 stock, 19 calls).
I have determined the covariance matrix $\Sigma$ and $\mu$ using Monte Carlo method. To be more specific, I assume that the stock price follows a geometric Brownian motion and generated a great deal of sample paths. Using those paths, I was also able to simulate the payoffs of the option.
Question: Normally I would solve this problem using the `quadprog` in MATLAB, which uses interior points method. However the covariance matrix $\Sigma$ is in this case ill-conditioned since the call options and the stock are driven by the same Brownian motion. (I have a correlation matrix with nearly all entries are in the range of 0.8 to 1 and the conditional number of the covariance matrix is in the order of $10^6$.) Can I still trust the result from MATLAB? How can I handle the ill-conditionedness? Will rescaling or preconditioning help?
## Answer by vanguard2k (score 5, accepted)
https://quant.stackexchange.com/a/34623
This answer will try and outline all the different possibilities I came across over the last couple of years, including drawbacks. But first, let me outline the problem a little.
To appreciate the problem, a first simplistic starting point is here. What the authors observe is similar to what you observed. "Optimization is Error-Maximization" is an often cited quote.
Why is that?
To build some intuition, look at the unconstrained solution of the MV problem. It is proportional to the inverse of the variance Covariance matrix $\Sigma^{-1}$. You see that by setting the first derivative to zero and solving for the weights.
The role of the spectrum of $\Sigma$
If you look at the Eigenvalues of $\Sigma$, the problem occurs when they are close to $0$. That is, because the inverse $\Sigma^{-1}$ has the inverse eigenvalues, which in turn means that upon solving the problems, certain directions are being extremely magnified. Also, these directions are very unstable, meaning that upon updating $\Sigma$ at a later point in time, directions and thus your solution are likely to show big changes over time and the solution is unstable.
==REMEDIES==
Be aware that all of the following methods will cause a loss of information of some kind. Also, I do not prefer one method over the other.
1. Messing around with the spectrum
One of the more straightforward things: If an Eigenvalue is, say $<10^{-6}$, set it to $10^{-6}$ and recalculate the variance covariance matrix. (If $\Sigma = E^{T} \Lambda E$ with Eigenbasis $E$ and spectrum $\Lambda$, you can define $\hat{\lambda}_i = \text{max}(10^{-6},\lambda_i)$ and then calculate $\hat{\Sigma} = E^{T} \hat{\Lambda} E$.
(Hint: you can force total variance to be the same by rescaling but the difference shouldnt be big).
Bear in mind that there are numerous ways you could do this but this is the most straightforward one I think. More difficult is the question how small do you accept your eigenvalues to be...
2. Factor Models
If we can express $N$ asset classes in terms of $F$ factors, this is effectively a dimension reduction. If you drop the idiosyncratic parts and the variance covariance matrix of the factors is stable (usually, the idea of factors is that their correlation is not too high). You would need to reformulate your problem
3. Shrinkage Estimation
In numerics, there is the common trick to "add a diagonal"($\hat{\Sigma} = \Sigma + \lambda \mathbb{1})$ to get the spectrum away from $0$. Now, if we come from statistics the total error of an estimator can be decomposed in a bias plus a variance component. The idea is to reduce the estimation error further by taking a bias (you can actually use an ansatz like metioned above and calculate the $\lambda$ if I remember correctly). Look at Shrinkage Estimation.
4. Expected Return estimation - Black Litterman method
One finding from employing the BL-method is that the results are more stable. This is because the expected (prior) returns are calculated via the market weights $w_M$ and the variance-covariance matrix: $\mu \approx \Sigma w_M$. Also, you can see that via the very heuristic argument that if your solution $w \approx \Sigma^{-1} \mu$ and $\mu \approx \Sigma w_m$ then this will be stable, as the idea is that both in a way "cancel out". I know this is by no means mathematically correct but just to give you a feeling.
I am sure the list is by no means complete. Take also a look at robust optimization. I didnt cover this here.Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.