MATLAB Answers

limited number of Assets in a universe, with constraints.

1 view (last 30 days)
Johan on 22 Jan 2013
I was wondering if someone could help me regarding portfolio construction and constraints.
Linear inequalities are quite straigtforward, however I cannot figure out how to limit the number of asset selected.
Building constraints, if I get 10 columns each representing an asset, is there a way to specify that the asset weight can only be 0 or between 0.2 and 0.5? (which would limit the number of asset to be selected)
Thank you

Accepted Answer

Matt J
Matt J on 22 Jan 2013
Edited: Matt J on 22 Jan 2013
You could solve the 2^10 separate problems corresponding to the different combinations of assets, each time deleting the corresponding columns from your problem data.
2^10 is not such a big number to loop over.
Johan on 22 Jan 2013
Thank you, it is a bit were I am going, I just hoped I missed it somwhere in the finanical toolbox.

Sign in to comment.

More Answers (2)

Shashank Prasanna
Shashank Prasanna on 22 Jan 2013
Are you using the Financial Toolbox? If you are then you can create a portfolio object and set bounds for each of the assets:

owr on 22 Jan 2013
Edited: owr on 22 Jan 2013
As stated, that's a very difficult problem. There are roughly 9e93 different ways to select a subset of 50 assets from a universe of 1500. If a good quadratic optimizer takes 1 second to find the optimal combination of each subset of 50, you'll still be waiting a long time to test every combination...
More generally, one approach to this type of problem is to use a hybrid optimization, use an integer based optimization (genetic algorithm) to choose which assets to include, and then a standard quadratic type optimizer within the objective to find the optimal combination of weights.
This webinar may give you some ideas - though it was written before the Global Optimization Toolbox was able to handle integer problems - so Id suggest adapting the ideas to the latest capabiliites:
Again though - this is going to be useless for a problem of the scale you're suggesting. Id try breaking your problem into subsets of assets by sector, industry group, etc. There is so much noise that goes into the usual expected returns/covariance calculation that I'd be skeptical of any results you get on a problem of this dimension.
Good luck!
  1 Comment
Johan on 23 Jan 2013
Thank you very much! I like your opinion. I am not a big fan of optimisation by weight on big universe, especially when they have to vary from 3 to 2%... I am going your way, and it looks very interesting!

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by