Dado un índice, digamos S&P500, estoy tratando de encontrar una lista de máximos n subyacentes, que en conjunto siguen bastante bien el índice. Estoy pensando en ejecutar un algoritmo de optimización de la cartera, en el que pongo en largo el índice (peso = 1) y en corto el n subyacentes, con el objetivo de minimizar la varianza de la cartera. El resultado serían las ponderaciones de los activos subyacentes.
Sin embargo, dado que hay 500 subyacentes, habría demasiadas combinaciones diferentes de subyacentes, cuya len(subyacentes) <= n, y como resultado el programa se ejecutaría muy lentamente. ¿Existe una forma más rápida / otra forma de seleccionar una cesta de valores que siga bien el índice?