Markowitz portfolio with L1 norm regularization added L1 norm regularization based on the original model. The constraint equation is as follows:


The following code is the original Markowitz Mean-Variance model in matlab.

ExpReturn = [0.1 0.2 0.15];

ExpCovariance = [ 0.0100   -0.0061    0.0042
                 -0.0061    0.0400   -0.0252
                  0.0042   -0.0252    0.0225];
NumPorts = 4;

[PortRisk, PortReturn, PortWts] = frontcon(ExpReturn,ExpCovariance, NumPorts)

I have just started with Matlab and I don't know how to solve it in matlab.

Or is there any matlab code/toolbox to solve it? thank you!


1 Answer 1


You can decompose W in W+ and W- Where W = W+ + W- and W+>0 and W-<0. In that case, abs(W) = W+ - W-. That makes a problem 3x bigger but makes it easy to solve.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.