%23%20%2F%2F%2F%20script%0A%23%20requires-python%20%3D%20%22%3E%3D3.12%22%0A%23%20dependencies%20%3D%20%5B%0A%23%20%20%20%20%20%22marimo%3D%3D0.18.4%22%2C%0A%23%20%20%20%20%20%22numpy%22%2C%0A%23%20%20%20%20%20%22cvx-linalg%22%2C%0A%23%20%20%20%20%20%22cvxrisk%22%0A%23%20%5D%0A%23%0A%23%20%5Btool.uv.sources%5D%0A%23%20cvxrisk%20%3D%20%7B%20path%20%3D%20%22..%2F..%22%2C%20editable%3Dtrue%20%7D%0A%23%20%2F%2F%2F%0A%0A%22%22%22Sample%20covariance.%22%22%22%0A%0Aimport%20marimo%0A%0A__generated_with%20%3D%20%220.25.1%22%0Aapp%20%3D%20marimo.App()%0A%0Awith%20app.setup%3A%0A%20%20%20%20import%20marimo%20as%20mo%0A%20%20%20%20import%20numpy%20as%20np%0A%20%20%20%20from%20cvx.linalg%20import%20rand_cov%0A%0A%20%20%20%20from%20cvx.core.variable%20import%20Variable%0A%20%20%20%20from%20cvx.risk.portfolio%20import%20minrisk_problem%0A%20%20%20%20from%20cvx.risk.sample%20import%20SampleCovariance%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%20Sample%20covariance%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.function%0Adef%20problem(n)%3A%0A%20%20%20%20weights%20%3D%20Variable(n)%0A%20%20%20%20_riskmodel%20%3D%20SampleCovariance(num%3Dn)%0A%20%20%20%20_problem%20%3D%20minrisk_problem(_riskmodel%2C%20weights)%0A%0A%20%20%20%20return%20_problem%2C%20_riskmodel%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20_n%20%3D%2050%0A%20%20%20%20_a%20%3D%20rand_cov(_n%20-%202)%0A%20%20%20%20_problem%2C%20_riskmodel%20%3D%20problem(_n)%0A%20%20%20%20for%20_i%20in%20range(100)%3A%0A%20%20%20%20%20%20%20%20_riskmodel.update(cov%3D_a%2C%20lower_assets%3Dnp.zeros(48)%2C%20upper_assets%3Dnp.ones(48))%0A%20%20%20%20%20%20%20%20_problem.solve()%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20_n%20%3D%2050%0A%20%20%20%20_a%20%3D%20rand_cov(_n%20-%202)%0A%20%20%20%20for%20_i%20in%20range(100)%3A%0A%20%20%20%20%20%20%20%20_problem%2C%20_riskmodel%20%3D%20problem(_a.shape%5B0%5D)%0A%20%20%20%20%20%20%20%20_riskmodel.update(cov%3D_a%2C%20lower_assets%3Dnp.zeros(48)%2C%20upper_assets%3Dnp.ones(48))%0A%20%20%20%20%20%20%20%20_problem.solve()%0A%20%20%20%20return%0A%0A%0Aif%20__name__%20%3D%3D%20%22__main__%22%3A%0A%20%20%20%20app.run()%0A
8f2782c1df581af2ba8f565817b5e0ce