# Can I perform an asset allocation optimization if assets are perfectly uncorrelated?

(Here is a link to the original post)

I received this interesting problem from a friend today:

Assume that you are a portfolio manager with \$10 million to allocate to hedge funds. The due diligence team has identified the following investment opportunities (here Expected Return and Expected StdDev stand for Expected Monthly Return and Expected Standard Deviation of Monthly Return and Price = Price of each investment unit):

Hedge Fund 1: Expected Return = .0101, Expected StdDev = .0212, Price = \$2 million

Hedge Fund 2: Expected Return = .0069, Expected StdDev = .0057, Price = \$8 million

Hedge Fund 3: Expected Return = .0096, Expected StdDev = .0241, Price = \$4 million

Hedge Fund 4: Expected Return = .0080, Expected StdDev = .0316, Price = \$1 million

What is the optimal allocation to each hedge fund (use MATLAB)?

The responses to the original post were things I had considered, but the loss of correlation among assets still seems like a big issue. Under the assumption that the assets are independent, the covariance matrix is diagonal, and using the standard constrained portfolio allocation tools in MATLAB seem to fail. Should I be choosing a specific objective function like Mike Spivey suggested in the original post while assuming independence?

-

## 3 Answers

There is nothing wrong in using Mean-Variance with a collection of assets that would be uncorrelated (which is almost impossible by the way). The algorithm should converge.

Mean-Variance optimization basically aims to take advantage of diversification, which is, trivially, impossible where asset are perfectly uncorrelated, so you won't get amazing results.

If you want to use MATLAB, I'd suggest you use frontcon which should enable you to compute an efficient frontier with your data.

Note that your setup requires you to implement constraints, as you would like to spend the totality of the available 10M, but certain assets are available for a limited amount. You can define the constraints as follows, expressing them as a percentage of the total value of the portfolio.

$$\mathbf{w}=(w_1,w_2,w_3,w_4)' \quad \text{and} \quad I_4 \mathbf{w} \leq (0.2,0.8,0.4,0.1)'$$

and

$$w_i \geq 0 \quad \forall i$$

Since MV would not produce nice results (not well diversified), you could look at equal risk contribution algorithms which would allow you to spread the risk over all your available assets. I understand it is commonly use in Hedge Fund allocation.

-

There's no problem at all using mean-variance optimization when correlations are zero. Any Quadratic Program solver will give you optimal weights. The problem is that the optimal weight a QP will give you will not, in general, result in dollar allocations that are integer multiples of the Price. To enforce that constraint, you could look into Integer Program solvers, which are designed to work with those type of constraints. Though, given how small your problem is, it would likely be easier to just list all possible combinations of allocations (by my count, there are only a couple hundred feasible allocations), and calculate whatever criterion you use for allocation decision (Sharpe ratio?) for each possibility.

-

Of course you need an objective function otherwise you would optimally allocate 100% to the fund with the highest risk adjusted returns.

-
Hmmm, I asked the wrong question I guess. When I use MATLAB's portfolio allocation toolbox, I think it does mean-variance analysis. Perhaps a better question is assuming I've set up the problem correctly assuming independence among monthly returns, would this assumption (0 correlation among assets) give results that make any sense (I suspect no)? I have read before that classical mean variance optimization is very sensitive to its inputs, so without correlation data, is MV analysis the best approach here? Thanks. – David Feb 13 '12 at 2:57

1
You are right, MV analysis makes no sense without utility function, otherwise what do you intend to optimize for? You need to specify a function that dictates the goal of your optimization. With independence assumption and no utility your allocation is gonna be 100% to the fund that maximizes E(r)/ E(sd), simple as that. – matt Feb 13 '12 at 3:04
OK thanks Matt. Now I'm going back to the basics using Lagrange multipliers. Given the information, one constraint seems simple: 2x + 8y + 4y + z = 10 (where x,y,w,z are amount of assets from hedge fund 1, 2, 3, and 4 respectively). Now for argument's sake, let's say I choose the utility function U(x,y,w,z) = xywz based purely on symmetrical considerations. But with the specification thus far, I haven't included any of the standard deviation data. Any suggestions on how I may proceed from here? Thanks in advance. – David Feb 13 '12 at 3:32
– chrisaycock♦ Feb 13 '12 at 5:07
David, you can simply scale your weights by volatility or even better, risk adjusted expected return within your utility function. Given your (simplistic) assumptions of zero correlations, I would suggest your utility function ONLY reflect weights of risk adjusted returns. You can scale the weights by your preference, thats what the definition of Utility is actually all about. However, you have not given any indications that may allow me determine what your utility should look like. – matt Feb 13 '12 at 6:05
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 0, "mathjax_display_tex": 2, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.18, "absolute_threshold": 10, "end_threshold": 5, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "github"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.929152250289917, "perplexity_flag": "middle"}