CVaR optimization

159 views
Skip to first unread message

Volod Chernat

unread,
Oct 16, 2017, 5:49:36 PM10/16/17
to CVXOPT
Hi,

I am using cvxopt.solvers.lp() to construct portfolio which targets specific CVaR level. The mathematical formulation of LP is attached. Specifically, produce a vector of weights which yields the highest return without exceeding CVaR constraint on the portfolio.

However, i am always getting what looks like edge-case solution [0, 1, 0,0,0,0,0] weights regardless of the CVaR target level.

I use the same inputs for MatLab linprog function and it produces different weights. I wonder what might be the case. The interfaces in Python lp() and Matlab linprog() are a bit different in that Matlab has lb and ub as separate variables. I add lower bound (lb) and upper bound (ub) constraints  as part of matrix G and column-vector h.

I am ok to share  Python code with someone on cvxopt team.

Thank you in advance.  




Screen Shot 2017-10-16 at 4.47.41 PM.png
cvaropticv.m
Reply all
Reply to author
Forward
0 new messages