This entry follows on from an earlier one describing optimal portfolio selection for portfolios where the expected return and standard deviation are sufficient to describe the decision-makers’ risk profile (i.e. the criteria to be used in deciding what is meant by “optimal”).
There are several ways to calculate this optimal or “efficient” frontier:
- Use Excel’s Solver. This would require the use of a matrix multiplication in Excel to determine, for any trial set of portfolio weights, the standard deviation of the resulting portfolio (taking into account the correlation matrix i.e. using matrix multiplication of the vector of standard deviation and the correlation matrix to determine the variance-covariance matrix). This will generate a single optimal portfolio for any given return (i.e. that portfolio with the minimum standard deviation).
- Use Palisade’s Evolver (genetic algorithm optimization add-in for Microsoft Excel statistics). This is analogous to the use of Solver, requiring the use of a matrix multiplication in Excel and returning a single optimal portfolio for any given return (i.e. that portfolio with the minimum standard deviation).
- Use Palisade’s RISKOptimizer (Monte Carlo simulation with genetic algorithm optimization software add-in for Excel). This requires essentially no use or knowledge of the mathematics of portfolio analysis (specifically of the matrix calculations to determine a variance-covariance matrix), because the software automatically deals with correlations between asset returns and calculates (by simulation) the standard deviation of any given portfolio. In this sense, it is the easiest method to implement, but one pays the price in terms of computation time.
- Repeated application of the above methods. Each of the above methods will each generate a single optimal point (e.g. a specific portfolio with a minimum standard deviation, for a single assumed level of return), so the frontier itself needs to be calculated by repetitive calculation of several points. For example VBA code can be used to repeatedly run Solver (see my book Financial Modelling in Practice for an example).
- Finally, the less well known analytic method developed by Huang and Litzenberger (H-L) can be applied. This allows the frontier to be determined analytically, which means that it is generally by far the quickest computation method. It essentially involves matrix inversion of the variance-covariance matrix followed by some straightforward vector multiplications. I will provide an example in a later posting. As well as being computationally quick, the method facilitates the exploration of parameter uncertainty, which is a topic barely addressed in much of the traditional literature; that is, to what extent is the composition of an optimal portfolio altered by the fact that historic returns and standard deviations themselves can only be measured within some confidence interval. Since H-L allows direct determination of the optimal portfolio, a sensitivity analysis (or full risk analysis) as parameter values vary is straightforward to conduct. The main disadvantage of this method is that it cannot be used when additional constraints wish to be applied to the situation, such as that all weights are positive with no short positions in the portfolio (whereas Solver, Evolver or RISKOptimizer can generally still be used when such constraints are to apply).
Dr. Michael Rees
Director of Training and Consulting