我正在做投资组合优化。我有以下代码:
def objective(weights):
return -np.sum(rets.T*weights)
其中rets是从Bloomberg导入的回报列表
def max_volatility(weights):
vol = min_volatilty - np.sqrt(np.dot(weights.T, np.dot(cov_matrix, weights)))
return vol
opts_vol = sco.minimize(objective, list_initial_weights, bounds = bnds, method = 'SLQSP', constraints = cons)
当前程序以min_volatility的一个值运行,但我希望它在参数的值范围内运行:
parameters = np.linspace(8,10,20)
我希望程序使用优化为我提供参数中每个点的权重的新列表。
我该怎么做?