Cómo construir una aplicación de optimización de cartera en Android o MATLAB

El truco para la optimización de la cartera es obtener el algoritmo correcto. Existe la teoría moderna de la cartera, que incluye fórmulas para predecir las ganancias y variaciones promedio futuras de una cartera en función de los resultados anteriores de los activos individuales y sus correlaciones anteriores.
Puede obtener las fórmulas del artículo de Wikipedia, la teoría de la cartera moderna.

Su aplicación necesitaría como entrada un conjunto de activos. Puede hacer que cada usuario ingrese un conjunto. O podría ofrecer varios tipos de cartera, tal vez tecnología pesada, finanzas pesadas, todo el mundo, … La producción de su aplicación sería una fracción de la inversión total del usuario que se invertirá en cada uno de los activos.

Para que su aplicación sea fácil de usar, debe automatizar el proceso de ir a Internet para obtener datos anteriores de cada activo, tal vez de Amazon.com Inc. para Amazon, EI du Pont de Nemours y Com Stock – Yahoo! Financiación para du Pont, y similares para cada uno de los activos.

Su aplicación tendrá que calcular promedios y desviaciones estándar para todos los activos y luego tendrá que calcular las correlaciones entre cada par de activos. Tendrá que decidir el período de tiempo anterior para utilizarlo como base para sus cálculos. Hay datos de precios históricos para du Pont desde 1962, pero para Amazon, solo hasta 1997.

Una vez que se hayan calculado todos los promedios, las desviaciones estándar y las correlaciones, su aplicación deberá llamar a un optimizador. El optimizador podría comenzar con asignaciones iguales en cada activo (1 / N en cada una de las inversiones de N) y luego ajustar las asignaciones para maximizar el rendimiento esperado y minimizar la varianza esperada.

Desafortunadamente, hay muchas soluciones con retornos pronosticados más altos correlacionados con incertidumbres predichas más altas. Por lo tanto, su aplicación tiene que pedirle al usuario algún tipo de objetivo de riesgo-recompensa. Una forma sería solicitar un rendimiento esperado mínimo aceptable (digamos 6% por año) y una desviación estándar pronosticada máxima aceptable en los resultados (digamos 3%). Su aplicación puede devolver un conjunto de posibilidades. O puede encontrar que la cartera de insumos no se puede optimizar para proporcionar los objetivos.

Aquí hay algo muy importante: su aplicación tiene que decir que sus predicciones se basan en el comportamiento pasado, pero que el COMPORTAMIENTO ANTERIOR NO GARANTIZA LOS RESULTADOS FUTUROS. De lo contrario, podría estar violando algunas leyes de valores que regulan el asesoramiento de inversión. Eso sería malo para ti.

Estos son los diversos pasos que necesitaría una aplicación. Si puede programar con fluidez en Android o MATLAB, puede convertir estos pasos en un programa. He realizado la mayoría de estos pasos en Excel VBA (automatizar las descargas de datos se encuentra con problemas técnicos), y VBA debe ser más difícil que Android o MATLAB.

Buena suerte.

ps y Advertencia : no recomiendo utilizar las fórmulas de la teoría moderna de cartera para determinar sus inversiones porque el comportamiento pasado no garantiza resultados futuros . De hecho, el fenómeno frecuentemente observado de reversión a la media en los precios de las acciones sugiere que los resultados futuros pueden ser peores que un “óptimo” predicho en resultados anteriores.