首页 > 解决方案 > Scipy Optimize - 如何设置库存重量下限

问题描述

我正在尝试创建一个不允许卖空的最小差异投资组合。我得到了正确的解决方案,但是我想将库存权重设置在 5% 到 15% 之间。我已经添加了上边界,它工作正常,但是不知道添加下边界的正确方法。

def objective(w):
return np.matmul(short,np.matmul(covvar,shortweights))
w = np.random.random(497)
e = ones
const = ({'type' : 'eq' , 'fun' : lambda w: np.dot(w,e) - 1})  # sum(w) - 1 = 0
non_neg = []
for i in range(497):
  non_neg.append((0,.15))
non_neg = tuple(non_neg)
solution = minimize(fun=objective, x0=w, method='SLSQP',constraints=const,bounds=non_neg)
w = solution.x.round(6)

标签: pythonoptimizationscipyportfolio

解决方案


推荐阅读