Смешанное целочисленное квадратичное программирование в Python

Мне было интересно, может ли кто-нибудь дать мне какое-то руководство в определении моей цели.

Я пытаюсь свести к минимуму дисперсию в Python с некоторыми ограничениями по количеству активов в моем портфеле. Я не уверен, какой пакет поможет мне сделать это. И если бы был рабочий пример для вышесказанного.

2 ответа

Решение

Ниже приведена модель MIQP, которая иллюстрирует, как мы можем моделировать проблему портфеля с ограниченным количеством активов между minAssets и maxAssets. Если актив находится в портфеле, его доля ограничена значениями от fmin до fmax.

В этой ссылке вы также можете увидеть, как вы можете попытаться решить эту проблему с помощью ряда линейных задач MIP.

Решатели MIQP легко доступны: CVXPY/ECOS_BB, Cplex и Gurobi - несколько примеров. Все они могут быть вызваны из Python. Простая модель QP портфеля была бы хорошей отправной точкой (без сомнения, такая модель доступна в примерах для любого из этих решателей).

Вы можете взглянуть на некоторые ссылки, касающиеся пакета Python. CVXOPT:

https://cvxopt.org/examples/book/portfolio.html

https://scaron.info/blog/quadratic-programming-in-python.html

Другие вопросы по тегам