You are on page 1of 10

Algoritmos Inteligentes en Optimizacin de Carteras Patricio Glvez G pgalvez@ubiobbio.cl Mauricio Gutirrez U mauricio.g@ubiobio.cl Erick Torres M erick@moosoolwon.

cl

Resumen
En este trabajo se hace una presentacin del modelo Markowitz ,como un modelo de Programacin Multiobjetivo, incorporando nuevas restricciones propuestas para representar mejor el problema a modelar , luego se propone como como diversas propuestas de Algoritmos Evolutivos, pueden ser utilizadas para resolver este problema. Se propone como este puede ser usado en el caso del modelo provisional chileno un trabajo actualmente en ejecucin. Palabra clave: Optimizacin en Finanzas, Modelo de Markowitz, Programacin Multiobjetivo, Algoritmos Evolutivos, Algoritmos Genticos

1.- Introduccin En el campo de la teora de seleccin de carteras, ocupa un lugar destacado Harry Markowitz [13] [14] que en 1952 publico en la revista Journal of Finance el articulo Portafolio Selection. El modelo planteado es considerado como un gran aporte a nivel terico, sin embargo su utilizacin en la prctica entre los gestores de carteras no es comparable con su xito terico. Una de las causas radicaba en la complejidad matemtica del modelo por ser este un modelo cuadrtico, parametrico y con un el elevado numero de estimaciones de rentabilidades esperadas, varianzas y covarianzas, de ah que generalmente se usen las simplicaciones planteadas por F Sharpe que dan una gran simplicacion en el calculo. Sin embargo , hoy en da las Tecnologas de Informacin y nuevos enfoques algortmicos permiten no solo resolver el modelo planteado inicialmente , sino adems que incorporar nuevas propuestas de mejoramiento del modelo , que exprese en forma mas fidedigna la realidad en el problema de seleccin de carteras que contribuir a suplir los inconvenientes para su utilizacin En el articulo, exponemos una nueva forma de plantear el Modelo de Markowitz que es a travs de la Programacin Multiobjetivo y cuya solucin sea realiza con tcnicas de optimizacin evolutiva multiobjetivo[3][4], que hace uso de variaciones de la meta heurstica de algoritmos genticos especializados con el objetivo de encontrar una buena aproximacin del frente de Pareto En el articulo se presenta primeramente el modelo de Markwitz planteado originalmente, posteriormente se muestran los elementos bsicos de Programacin Multiobjetivo, para despus dar una visin de los que se denominan

Algoritmos Inteligentes y como bajo estos nuevos enfoques se puede replantear el modelo de Markowitz y las ventajas de esta forma de resolucin

2.-El Modelo de Markowitz El origen de los conceptos de la teora de cartera asocia riesgo y rendimiento e introduce conceptos como rendimientos esperados y medidas de dispersin en la distribucin de los mismos, as como la covarianza entre los rendimientos esperados de dos ttulos. Markowitz desarrolla su modelo sobre la base del comportamiento racional del inversor .Es decir, el inversor desea la rentabilidad y rechaza el riesgo. As una cartera ser eficiente si proporciona la mxima rentabilidad posible para un riesgo dado, o de forma equivalente, si presenta el menor riesgo posible para un nivel determinado de rentabilidad [15]. Lo anterior se puede expresar en el siguiente modelo matemtico min sa E[ R p ] = wi E ( Ri ) = R *
i =1 n n 2 = p i =1

w w
i =1 i

ij

w =1
i =1 i

wi 0

Donde wi es la proporcin del ,presupuesto del inversor destinado al activo financiero i, 2 ( Rp ) la varianza de la cartera p, ij la covarianza entre los rendimientos de los valores i y j, E( R p ) es la rentabilidad o rendimiento esperado de la cartera p, de tal forma que al variar el parmetro V* obtendremos en cada caso , al resolver el programa , el conjunto de proporciones wi que minimizan el riesgo de la cartera . De esta manera el conjunto de pares [ E ( R p ), 2 ( Rp ) ] o combinaciones rentabilidad-riesgo de todas las carteras eficientes es denominado frontera eficiente. Una vez conocida esta, de acuerdo con sus preferencias, elegir su cartera ptima. De forma anloga, el conjunto de portafolios eficiente puede ser obtenido solucionando el problema dual

MaxE ( R p ) = wi E ( Ri )
i =1

sa
2 p = V * = cte

w =1
i =1 i

wi 0

3.- Optimizacin Multiobjetivo

La programacin Multiobjetivo, segn Osczka se define como [17] El problema de encontrar un vector de variables de decisin que satisfaga ciertas restricciones y optimice una funcin vectorial cuyos elementos representen las funciones objetivo. Estas funciones forman una descripcin matemtica de los criterios de desempeo que usualmente estn en conflicto entre si y que se suelen medir en unidades diferentes. Por lo tanto, el termino optimizar significa encontrar una solucin tal que proporcione valores para todos los objetivos que resulten aceptables para el diseador El problema de optimizacin multiobjetivo (POM) se define formalmente como: uu r * * * T Encontrar el vector x* = x1 , x2 ,........, xn que satisfaga las m restricciones de desigualdad:

r g i ( x) 0 i = 1, 2,..........m que satisfaga las p restricciones de igualdad r hi ( x) = 0 i = 1, 2,....... p y optimice la funcin vectorial ur r uu r r r f ( x) = [ f1 ( x), f 2 ( x),....... f k ( x)]T r T donde: x = [ x1 , x2 ,.........xn ] es el vector de variables de decisin.
Las restricciones definen la regin factible F y cualquier punto en F forma parte de la solucin factible

Optimizar varias funciones objetivos a la vez, no se traduce en encontrar un optimo para cada funcin, sino en proponer un conjuntos de puntos en lo que cada

funcin objetivo contribuya en alcanzar una buena aptitud global, la cual ser establecida y evaluada por el diseador, un inversionista en nuestro caso Por simplicidad en la implementacin normalmente todas las funciones son convertidas una misma forma, a fin de minimizar o maximizar todas las funciones del problema. As el concepto de ptimo que se maneja en PMO es distinto al de una sola funcin objetivo y es el de un buen compromiso entre toda las variables que sastifacen las restricciones, es una solucin global de la optimizacin. Esta nocin de optimo fue propuesta originalmente por Francis Isidro Edgeworth en 1881 y luego generalizada por Wilfredo Pareto in 1986 y conocida como el ptimo de Pareto y su definicin formal es la siguiente

uu r Dadas k funciones objetivo del problema decimos que un punto x* F r de Pareto si para toda x F , tal que para toda i=1,2. k uu r r f i ( x* ) f i ( x ) y, al menos existe una i tal que r r f i ( x) < f i ( x)

Definicin 1 (Optimo de Pareto)

es un optimo

uu r Esta definicin dice que x* es un optimo de Pareto si no existe dentro del espacio de r bsqueda F un vector factible x que mejorara algn criterio sin hacer que empeore en uu r al menos otro de ellos, es decir que lo domine, por lo que se le conoce a x* como una solucin no dominada.

Otras importantes definiciones asociadas al ptimo de Pareto son las siguientes Definicin 2 Dominancia de Pareto r r u = (u1 ,........uK ) se dice que domina al vector v = (v1 ,..........vk ) Un vector r r denotado por u p v si y solamente si es parcialmente menor que v, es decir i {1,.........k}, ui vi i {1,...., k} : ui < vi El ptimo de Pareto casi siempre produce no una, sino un conjunto de soluciones a las que se llama no dominadas Definicin 3 Conjunto de ptimos de Pareto ur r Dado un PMO f ( x ) , el conjunto de ptimos de Pareto Ptrue ur r ur ur Ptrue := x F : x F f ( x) p f ( x) }

se define como:

A partir de la definicin 3 se define el Frente de Pareto. que no es otra cosa que el contradominio del conjunto de puntos que forman el conjunto de ptimos de Pareto. Es decir el frente de Pareto son los valores de las funciones objetivo correspondientes a las soluciones que pertenecen al conjunto de ptimos de Pareto.

Resulta imposible determinar de manera analtica la expresin matemtica que corresponden al frente de Pareto de un problema arbitrario. Aproximar dicho frente es precisamente el objetivo de la optimizacin multiobjetivo 4.- Optimizacin y Algoritmos Inteligentes

La tendencia de las investigaciones en el rea de la Inteligencia artificial han derivado en mtodos de bsqueda de exploracin que son un smil con modelos biolgicos y fsicos que permiten resolver problemas de optimizacin, a continuacin haremos una resea que puede ampliarse en [16] [10] [18] La Computacin Evolutiva (CE) es un enfoque alternativo para abordar problemas de bsqueda y aprendizaje a travs de modelos computacionales de procesos evolutivos implementado a travs de algoritmos evolutivos ( AEs). El proceso genrico de los AEs consiste en guiar la bsqueda estocstica haciendo evolucionar a un conjunto de y seleccionar de modo iterativo las mas adecuadas: La CE forma parte a su vez de un conjunto de metodologas de resolucin de problemas que remedan con mayor o menor exactitud, como las Redes Neuronales [8] la Solidificacin Simulada o Simulated Anealing [10]: todas ellas se engloban bajo el termino Computacin Natural. En general, se llama Algoritmo Evolutivo a cualquier procedimiento estocstico de bsqueda basado en el principio de evolucin. Dicho principio tiene una doble vertiente: la finalidad ltima es la supervivencia del ms apto, el modo de conseguirlo es por adaptacin al entorno. Concretamente, al implementar un algoritmo a una poblacin de individuos que representan un conjunto de candidatos a soluciones de un problema, esta es sometida a una serie de transformaciones con las que actualiza la bsqueda y despus a un proceso de seleccin que favorece a los mejores individuos: Cada ciclo de transformacin +seleccin constituye una generacin. Se espera del AE que, tras cierto numero de generaciones (iteraciones) el mejor individuo este razonablemente prximo a la solucin buscada. Para simular el proceso de evolucin, un AE requiere de: 1:- Una poblacin de posibles soluciones debidamente representadas a travs de individuos 2.- Un procedimiento de seleccin basado en la aptitud de los individuos. 3:- Un procedimiento de transformacin, esto es, de construccin de nuevas soluciones a partir de las disponibles actualmente. Los Algoritmos Genticos que se han desarrollado bajo el esquema evolutivo, hace evolucionar una poblacin inicial que esta codificada como enteros binarios sometindola a transformaciones unitarias y binarias genricas y a un proceso de seleccin. As dentro de la implantacin de un algoritmo gentico es crucial definir el proceso de seleccin (como muestrear de la poblacin), el proceso de reproduccin que hacen uso de lo operadores genticos, los mas conocidos son el de cruce y la mutacin y el proceso de reemplazo.

Existen otros algoritmos inteligente (tambin conocidos como Meta heursticas) que han sido utilizados para resolver problemas de Optimizacin como Bsqueda Tab [9][10] y MetaRaps [7 ]

5.- Tratamiento de Problemas Multiobjetivo con Tcnicas Evolutivas El rea de investigacin nombrada optimizacin evolutiva multiobjetivo, se basa en la bsqueda de soluciones utilizando un AE como una forma alternativa para resolver problemas que presentan varios objetivos a la vez. La primera implementacin de un algoritmo evolutivo multiobjetivo fue Vector Evaluated Genetic Algorithm (VEGA) [19]. Que corresponde a la primera generacin de algoritmos de este tipo entre cuales se cuenta tambin NSGA [6], NPGA[9] y MOGA[10]. La implementacin del mecanismo de elitismo en el contexto de optimizacin multiobjetivo, que normalmente es implementado a travs de una poblacin secundaria en la que se almacenan los individuos no dominados encontrados durante el proceso de bsqueda (esto es introducen historia). Dentro de los algoritmos de segunda generacin nos interesan por su buen comportamiento y aplicaciones en el rea de las Finanzas [ 1 ] el NSGA II [21 ] y Micro-AG [5]

6.- Modelo de Markowitz como Problema de Programacin Multiobjetivo El modelo de Media- Varianza de Markowitz (MV) se define a partir de su formulacin inicial presentadoa en el apartado 2 considerando la optimizacin simultnea de dos funciones objetivo Rendimiento del portafolio Max E ( R p ) = wi E ( Ri )
i =1 n

Riesgo del Portafolio


Min = wi w j ij i j
2 p i =1 j =1 n n

s.a

w
i =1

=1

wi 0

donde se ha introducido la relacin

De una revisin de las referencias bibliograficas de la aplicacin del enfoque del paradigma evolutivo se plantean las dificultades y ventajas y desventajas de este.

La primera pregunta que surge, es por que no disear tan solo un algoritmo que solucione el problema cuadrtico propuesto inicialmente por Markowitz al respecto Vedejaran y otros [22] seala que para un portafolio de tamao n, el conjunto de datos de entrada es (2*n)+(n*(n-1)/2), por lo que si n es grande puede ser laborioso seguir la pista de todos los coeficientes de correlacin, y se pueden generar problemas por restricciones de almacenamiento de memoria. Adems y mas restrictivo que lo anterior que para resolver el problema, es necesario que la matriz de covarianzas sea positiva y si existen discrepancias numricas( por ejemplo imprecisin por redondeo), esta suposicin podra ser violada y no se podra resolver .Esta no es improbable con datos reales particularmente cuando n es muy grande, dado que las covarianzas son estimaciones de series de tiempo de los precios de los instrumentos financieros reales , las cuales no necesariamente satisfacen las restricciones especificadas a priori . Por otro lado existen como se planteo en la introduccin, que el escaso uso del modelo a que este no considera aspectos entre otros como el costo de transaccin por cambios en el portafolio y una mayor diversificacin del portafolio. Para incorporar la diversificacin del portafolio es necesario agregar la restriccin i {1, 2,....n} : wi Wmax donde wmax es una cte La variante que considera el costo de transaccin por cambios en el portafolio (rebalanceo), causa problemas al algoritmo cuadrtico, cuestin que puede ser resuelta en el enfoque multiobjetivo introduciendo una tercera funcin objetivo a ser minimizada f cos t =

c (w w )
i =1 i i

* 2 i

0 donde : wi* R+ es el peso inicial del instrumento

financiero i en el portafolio que va a ser potencialmente cambiado i debido a transacciones por rebalanceo y la constante ci R es el costo de transaccin del instrumento financiero i.

7.- Consideraciones Finales Las tcnicas que actualmente estn en uso para abordar en general para problema de Finanzas y en particular de prediccin de valores burstiles estn basadas en Redes Neuronales. El uso de Algoritmos Evolutivos es mucho mas recientes al 2002 se haban reportado 3 artculos referentes a optimizacin de portafolios [9 ] [2 ] [20] segn Coello [3 ]. Respecto en particular al Modelo de Markwotiz se usa Programacin Cuadrtica y Tcnicas de Montecarlo, Sin embargo al agregar nuevas condiciones al modelo estas podran no ser computacionalmente no factibles. En la actualidad los autores se encuentran trabajando en la aplicacin del modelo de Markowitz (con tres objetivos a optimizar) para el caso de las

inversiones de las AFP en Chile, para lo cual se implementara con el algoritmo micro AG [5] Otras posibles investigaciones es usar la Meta heurstica de Simulated Annealing para problemas de Programacin Multiobjetivo. Adems es importante resaltar la convergencia de dos disciplinas como son las finanzas y los algoritmos, en una investigacin intradiciplinaria.

8 Agradecimientos Este proyecto es financiado por un proyecto de investigacin interna de la Universidad del Bio-Bio, lo cual ha permitido contar con los recursos y tiempo necesarios para desarrollar esta actividad acadmica.

9.- Referencias Bibliograficas [1] Castro S (Julio 2005) Creacin de Portafolios de Inversin utilizando Algoritmos Evolutivos Mutiobjetivo. Tesis de Maestra en Ciencias Centro de Investigacin y Estudios Avanzados del Instituto Politcnico Nacional Mxico. [2] Chang T J;Meade N; Bealey J E (1998) Heuritcs for Cardinality Constrained Portfolios Optimization.Tecnical report, The Management School, Imperial College, London SW72A2 England. [3] Coello C; Van Veldhuizen D; Lamont G (2002) Evolutionary Algorithms for solving Multi-Objective Problems. Kluver Academic Publisher, New York ISBN 0-3064-6762-3 [4] Coello C; Lamont G editors (2004) Applications of Multi-Objective Evolutionary Algorithms Word Scientific Singapore [5] Coello C; Toscano G (2001) A Micro Genetic Algorihm for Multiobjetive Optimizacion. First International Conference on Evolutionary Multi-Criterion Optimizacion .Springer Verlag. Lecture notes in Computer Sciencies [6] Deb K; Amrit P; Agrawal S; Pratab A; Meyarivan (2002) A Fast and Elitist Multiobjetive Genetic Algorithm: NSGA II IEEE Transactions on Evolutionary Computation, 6(2) April 2002 [7] Depuy G W; Moraga R, Witehouse G E (2002)

Using the Meta-Raps Approach to solve Combinatorial Problems European Journal of Operational Research [8] Hertz J; Krogh R P; Palmer R (1991) Introduction to the Theory of Neural Computations Adisson Wesley [9] Horn J; Nafpliotis N;Goldberg D (1994) A Niched Pareto Genetic Algorithm for Multiobjetive Optimization. In Proceedings of the First IEEE Conference on Evolutionary Computation

[10] Fonseca C; Fleming P (1993) Genetic Algorithms for Multiobjetive Optimization: Formulation, Discussion and Generalization. IN Stephanie Forrest, editor, Proceedings of the Fifth International Conference on Genetic Algorithms. University of Illinois at Urbana_Champaign,Morgan Kauffman Publishers. [11] Glover F; Laguna M (1997) Tabu Search Kluver Academic Pub [12] Pham D; Karaboga D (1998) Intelligent Optimization Techniques: Genetic Algorithms,Tabu Search, Simulated Annealing, and Neural Networks Springer Verlag [13] Markowitz H (1952) Portfolio Selection Journal of Finance Vol 7 N 1 Marzo [14] Markowitz H (1959) Porfolio Selection Efficient diversification of investments John Wiley & sons New York. [15] Mendizabal A; Meira L; Zubia M (2002) El modelo de Markowitz en la gestin de carteras Cuadernos de Gestin vol2 N 1 Espaa [16] Michelwicz Z (1996) Genetic algorithms+ Data Structures= Evolutionary programs [17] Osyczka A (1984) Multicriterion optimization in engineering with Fortran Programs Ellis Horwood Limited [18] Torres E (Marzo 2005) Algoritmos Inteligentes Aplicados a Carteras de Inversin. Informe Proyecto de Titulo Ingeniera Civil Informtica Departamento Sistemas de Informacin Universidad del Bio_Bio. [19] Shaffer J D (1985)

Multiobjetive Objetive Optimization with Vector Evaluated Genetic Algorithms.In Genetic Algorithms and their Applications: Proceedings of the First International Conference on Genetic Algorithms Lawrence Erbauln [20] Shoaf J S; Foster J A (1996) A Genetic Algorithms Solution to the Efficient Set Problem: A Technique for Portfolio Selection Based on the Markowitz Model. In Proceeding of the Decision Sciences Institute Annual Meeting Orlando Florida. [21] Srinivas N; Deb K (1994) Multiobjetive Optimization Using No dominated Sorting in Genetic Algorithms. Evolutionary Computation 2(3). [22] Vederajan G; Chi Chan L; Goldberg (1997) Investment portfolio optimization using genetic algorithms. In John R Koza, editor, Late Breaking Papers at the 1997 Genetic Programing Conference Sandford University, CA;USA

You might also like