import numpy as npimport cvxpy as cvx
np.random.seed(12345)n = 10k = 8mu = np.abs(np.random.randn(n, 1))Sigma = np.random.randn(n, n)Sigma = Sigma.T.dot(Sigma)w = cvx.Variable(n)ret = mu.T*w risk = cvx.quad_form(w, Sigma)objective = cvx.Maximize(ret - risk)constraints = [cvx.sum_entries(w) == 1, cvx.sum_largest(w, k) == 1, w >= 0]prob = cvx.Problem(objective, constraints) prob.solve()print(w.value)