Suppose there are three assets, and the first asset has volatility 18%, the second asset has volatility 16%, and the third asset has volatility 16%. Suppose also that the first two assets' returns are correlated with each other with correlation coefficient 0.7, but the third asset is not correlated with the first two assets.

Suppose the risk free rate is 2%, and the expected returns of the three assets are 7%, 4% and 5% respectively.

Now consider the efficient portfolio of risky assets, i.e. the "one fund" F. What is the weight of the first asset?
Answer should be 0.87 (87%)

What I have done so far: Using matrix notation: M(covariance matrix)* v(vector of unscaled weights) = r (mean return value)- risk free rate

Step1. I constructed M using volatilities and p given.

Step 2. subtracted mean returns - risk fee rate

Step 3. Taking inverse of M solved for v, scaled to w(weights) But as a weight of first asset I am getting 0.51 instead of 0.87. What am I doing wrong?

  • $\begingroup$ Can you put that in latex notation, please? Thanks! $\endgroup$ Jan 21, 2021 at 22:18
  • $\begingroup$ which portfolio strategy do you want to use $\endgroup$
    – develarist
    Jan 22, 2021 at 12:18
  • $\begingroup$ do you know what the target weights are? Or are you trying to infer these from cross-market behavior? In which case, HSBC's Asian exposures might tell you it's a miner rather than a bank. Absent this basic reality check, just PCA the return or correlation matrix. $\endgroup$
    – demully
    Jan 23, 2021 at 3:30

1 Answer 1


You indeed seem to have an error in your calculation somewhere.

Let the covariance matrix be

$$\Sigma=\begin{pmatrix}0.0324&0.021016&0\\ 0.021016 & 0.0256 & 0 \\ 0 & 0 & 0.0256\end{pmatrix}$$ and the vector of (excess) returns are

$$ \mu-r_f=\begin{pmatrix}0.05 \\ 0.02 \\ 0.03\end{pmatrix} $$

Ultimately, the weights are then computed as

$$ w^*=\frac{\Sigma^{-1}\left(\mu-r_f\right)}{e^T\Sigma^{-1}\left(\mu-r_f\right)} $$

where $e$ is a vector of ones, as usual.


  • $\begingroup$ Hello, thanks for your response! I got the same covariance matrix and same v vector of weights. However, the correct answer is 0.87. Why and how? $\endgroup$ Jan 23, 2021 at 1:50
  • $\begingroup$ Hi, did you you take the same steps as I did? Did you form a correct inverse,etc? $\endgroup$ Jan 23, 2021 at 5:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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