Portfolio Optimization in support of Monte Carlo method.

3 views (last 30 days)
Hi, everyone.
I have problem in finding optimal portfolio weights with Monte Carlo method. I'm using mixed rotated-gumbel copula to specify the joint distribution of the assets. Since the underlying distribution is complex, I plans to use Monte Carlo method to generate return distribution under given portfolio weights of each asset. So I tried to use fmincon to find the optimal weights that maximize expected value of my utility function. But 'fmincon' fails to find proper portfolio weights, probably because Monte Carlo simulation utilizes stochastic component in return generation and therefore in computing the utility.
Does anyone have faced similar problems like me? Plz help me to bring it off. Thx for reading!

Answers (1)

John D'Errico
John D'Errico on 2 Apr 2020
You cannot use a tool like fmincon to optimize a stochastic function. That is, any function where repeated calls to the function at the same set of parameters would not return the same exact result. That produces a non-differentiable, and worse, a discontinuous function.
FMINCON will fail. However, almost any standard optimizer will fail too. Some will be more robust thatn others. For eample, fminsearch, or GA could have a chance. That is, tools which do not try to estimate the gradient or hessian matrix of your function have at least some chance of partial success. What can you do even with those tools to achieve a positive result?
It will help to know the granularity of your objective function. That is, what is the noise magnitude in your objective? Set your convergence tolerances to be larger than the noise, as otherwise no method can possibly decide it has converged to a level that is finer then the noise in your process.
You can also use response surface methodologies. These are methods used by statisticians to optimize random processes. They will typically involve local low order fits to the surface in a limited region, using that information to predict where to look at each iteration, then producing a new locally approximative fit to the surface.

Categories

Find more on Portfolio Optimization and Asset Allocation in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!