我正在尝试使用CVXPY解决Python中的投资组合优化问题,但未定义错误sum_entries。我正在使用Anaconda 2.7和Jupyter笔记本。我已经使用conda pip install安装了cvxpy,msgpack,argpack和cvxopt。下面是代码片段。有什么建议吗?
w=Variable(len(CovMatrix))
risk=quad_form(w,Sigma)
constraints=[]
constraints.append(w>=0)
constraints.append(sum_entries(w)==1)
prob=Problem(cvx.Minimize(risk),constraints)
prob.solve(solver='CVXOPT',verbose=True)
这是我遇到的错误:
NameError Traceback (most recent call last) <ipython-input-20-7f2f1e65a66e> in <module>() 4 constraints=[] 5 constraints.append(w>=0) ----> 6 constraints.append(sum_entries(w)==1) 7 8
prob=Problem(cvx.Minimize(risk),constraints) NameError: name
答案 0 :(得分:1)
应为cvx.sum_entries
,而不是sum_entries
。同样,您的Problem
应该是cvx.Problem
。