Я пытаюсь написать задачу оптимизации портфеля, используя cvxpy.
initial_weights = [0.045, 0.035, 0.024, 0.028...]
rets = (np.log(data/data.shift(1))
w = cvx.Variable(38)
ret = np.sum(rets.mean()*w)*252
prob = cvx.Problem(cvx.Maximize(ret), [cvx.sum_entries(w)==1, w>0.02, w<0.06])
результат = prob.solve ()
После решения значение w.value имеет вид [[0,02], [0,02], [0,04] ...]
Мне нужно добавить больше ограничений, таких как abs (list_final_weights-w)> 0.005, но это будет возможно, если w.value имеет форму массива значений вместо массива массивов. Как я могу исправить эту ошибку?