4. Qué es optimizar matemáticamente
Nivel 7: Álgebra lineal y optimización de carteras
Ponerle límites a un optimizador nunca mejora el resultado teórico, y aun así casi todo el mundo se los pone.
Para entender esa aparente contradicción hay que desmenuzar antes qué significa optimizar. La palabra "optimizar" se usa mucho de forma vaga, pero en matemáticas tiene un significado preciso.
Qué significa optimizar, exactamente
Optimizar es buscar el valor máximo o mínimo de algo dentro de un conjunto de posibilidades permitidas.
Esa definición esconde dos piezas que conviene nombrar por separado desde el principio:
- Lo que se maximiza o minimiza es la función objetivo.
- El conjunto de posibilidades permitidas lo delimitan las restricciones.
En el problema de Markowitz, la función objetivo puede ser "minimizar la varianza de la cartera" o "maximizar la rentabilidad esperada", según qué versión del problema plantees.
Las restricciones, de las básicas a las realistas
Las restricciones típicas son que los pesos sumen 1 y, si no se permiten posiciones cortas, que ninguno sea negativo.
A veces se añaden a esas restricciones básicas otras adicionales bastante más realistas:
- Que ningún activo pese más de un 5%.
- Que un sector no supere el 20% del total.
- Que la cartera solo contenga activos con suficiente liquidez.
Por qué el papel y el lápiz dejan de servir
Con dos o tres activos, encontrar el óptimo es literalmente un ejercicio de geometría. Se puede resolver con papel y lápiz o con una calculadora, trazando a mano la frontera eficiente del módulo anterior con las fórmulas de varianza de dos o tres activos.
El problema es que ese enfoque no escala, así que mira lo que hay sobre la mesa con 500 activos, el universo completo del S&P 500:
- 500 pesos que decidir simultáneamente.
- Sujetos a que sumen 1 y a todas las restricciones adicionales que se quieran imponer.
- Y una matriz de covarianzas de 500 por 500, con los 124.750 términos cruzados del módulo anterior, que interviene en el cálculo de la varianza de cada combinación posible.
No es que el problema sea conceptualmente distinto al de 2 activos: es exactamente la misma pregunta.
Lo que cambia es la escala, porque el espacio de combinaciones posibles de pesos es tan enorme que ninguna persona podría explorarlo a mano en una vida entera. Aquí es donde entra el ordenador, no como un lujo, sino como un requisito estructural del problema.
Cómo bajan la montaña los algoritmos
Los algoritmos que resuelven esto se conocen genéricamente como métodos de optimización numérica. Ni prueban combinaciones al azar ni las enumeran todas, algo que sería inviable incluso para un ordenador, dado que los pesos son números continuos y no un conjunto finito de opciones.
En su lugar, parten de una combinación inicial de pesos y la van ajustando de forma sistemática, paso a paso. La ajustan siempre en la dirección que mejora la función objetivo, hasta que ajustar más ya no mejora el resultado de forma apreciable.
Es parecido, salvando las distancias, a bajar una montaña con niebla densa. No ves el valle completo, pero en cada punto puedes notar hacia qué lado baja el terreno y dar un paso en esa dirección. Repitiendo el proceso muchas veces, acabas llegando abajo sin haber visto el paisaje entero de una vez.
Mínimo local y mínimo global
Aquí aparece una distinción importante entre dos tipos de fondo del valle:
- Un mínimo local es un punto que es mejor que todos sus vecinos inmediatos, pero no necesariamente el mejor de todo el terreno.
- Un mínimo global es el mejor punto posible de todo el espacio de búsqueda.
En muchos problemas de optimización, el algoritmo puede quedarse atrapado en un mínimo local, sin llegar a darse cuenta de que existe un valle más profundo en otra parte del mapa.
La propiedad que salva a Markowitz
La buena noticia es que el problema clásico de Markowitz tiene una propiedad matemática favorable llamada convexidad. Ese problema clásico es minimizar varianza sujeto a pesos que suman 1 y sin posiciones cortas.
En un problema convexo, el terreno tiene una única forma de cuenco, sin valles secundarios. Así que cualquier mínimo local encontrado es automáticamente el mínimo global.
Esa propiedad es precisamente lo que hace que el problema de Markowitz sea resoluble de forma fiable, incluso con cientos de activos.
El precio de añadir restricciones
Sin embargo, esa garantía se pierde con facilidad en cuanto se añaden restricciones o funciones objetivo más realistas.
Algunas variantes conservan esa propiedad y otras la destruyen por completo:
- Exigir que ningún activo pese más de un 5%, o permitir posiciones cortas con ciertos límites, mantiene el problema convexo en la mayoría de los casos habituales.
- Forzar que el número de activos en cartera sea como mucho 20, eligiendo cuáles de los 500, convierte el problema en algo mucho más duro computacionalmente, donde ya no hay garantía de encontrar el óptimo global en un tiempo razonable.
Y hay un efecto colateral importante de añadir restricciones. La nueva frontera eficiente, restringida, queda siempre por debajo o como mucho igual que la frontera teórica sin restricciones.
Dicho de otra forma: restringir el espacio de búsqueda nunca puede mejorar el resultado óptimo, solo empeorarlo o dejarlo igual.
Entonces, ¿por qué restringe todo el mundo, si el óptimo teórico solo puede empeorar? Porque lo que se gana con las restricciones es realismo y control de riesgos concretos, no más rentabilidad teórica.
Un ejemplo de ese control lo deja claro: evitar que el optimizador concentre el 80% del capital en una sola acción por un artefacto de la estimación.