mean variance model using l1 norm
10 次查看(过去 30 天)
显示 更早的评论
I have to apply the l1 norm constraint to the classical mean variance model.
I found a way to linearize this kind of problem, in order to solve it through Quadprog in this way 

Note that u_i is considered as an auxiliary variable( and not as a binary one).
I wrote the script in the following way:
H=[sigma zeros(n);zeros(n,2*n)];
f=[zeros(n,1);ones(n,1)];
Aeq_lasso=[ones(1,n) zeros(1,n)];
beq_lasso=1;
A=[zeros(1,n) ones(1,n) ;eye(n) -eye(n);-eye(n) -eye(n)];
b=[t;zeros(2*n,1)];
LB_=[zeros(n,1); zeros(n,1)];
UB=ones(2*n,1);
The problem is that for a value of t >= the sum in absolute value of the unconstrained markowitz problem, this one give me a correct solution (basically the portfolio without the l1 norm constraint), but when I set a t smaller than the sum in absolute value of the unconstrained markowitz problem, Quadprog gives me a portfolio which include all the asset that previously is not held in the portfolio. The rigth solution should be: when t decrease, the number of assets in my portfolio have to reduce ( so the weigths of some assets tends to increase, while other assets tends to zero), until a certain value t_min, for which only one asset(with weigth equal to one), is included in the portfolio. I have no idea to solve this problem
0 个评论
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Portfolio Optimization and Asset Allocation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!