[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Nonlinear Optimization with Constraints



PureBytes Links

Trading Reference Links

First of all, thanks to all who responded.

I checked all the electronic references and the CERN site looks good
except that it is in Fortran. Lester Ingbers's is a little too user
unfriendly for my taste and adaptive annealing seems like overkill. As
far as applications go, Matlab seemed to be, by far, the best.

Sergey,

"Adding constraints simply means modifying an object
function via equation for constraints times Lagrange multipliers."


That's right! I completely forgot. If the old objective function is just
the minimum variance portfolio or :
Min: SUMi(Wi^2 * VARi) + SUMi(SUMi<>j(Wi*Wj*COVij))
Where Wi is the weight of each asset and VARi is the variance of asset i
and COVij is the covariance of assets i and j.

Then, for example, if I want to add the constraints that all the asset
weights sum to 1, :
SUMi Wi=1

and that the portfolio have expected return R :

SUMi Wi*Ei=R

where Ei is the expected return of each asset.


Then the new objective function would be:
Min: SUMi(Wi^2 * VARi) + SUMi(SUMi<>j(Wi*Wj*COVij)) - C*(1-SUM Wi)
-Z*(R-Wi*Ei)

Where C and Z would be two Lagrange multipliers which I would just add
as two additional elements to the input vector of independent variables
to be optimized. I could then just use the standard Simplex optimization
given in numerical recipes (www.nr.com). Is that right?

Gabriel



-----Original Message-----
From: Sergey Efremov [mailto:svefremov@xxxxxxxxx] 
Sent: Thursday, November 25, 2004 1:31 PM
To: omega-list@xxxxxxxxxx
Subject: Re: Nonlinear Optimization with Constraints


The best optimization program that I know of is
MINUIT, produced by CERN. It is distributed freely for educational and
research purposes and may be purchased for applications other than
above. (No relation other than past experience with it).

http://wwwasdoc.web.cern.ch/wwwasdoc/hbook_html3/node118.html

It contains several algorithms for non-linear global optimization and
especially good for finding global minimum of an object function.
Contains SIMPLEX, MIGRAD, HESSE, MINOS, MINIMIZE (Monte-Carlo). It can
simply SCAN over all parameters and find the minimum like TradeStation
does. I believe some people work on converting it from FORTRAN to C/C++.


Adding constraints simply means modifying an object
function via equation for constraints times Lagrange multipliers.

Sergey