• Nenhum resultado encontrado

Otimização na seleção de ativos e no Portfolio utilizando Algoritmos Genéticos

N/A
N/A
Protected

Academic year: 2021

Share "Otimização na seleção de ativos e no Portfolio utilizando Algoritmos Genéticos"

Copied!
7
0
0

Texto

(1)

Resumo—Neste artigo estão sendo abordados e comparados

dois métodos de seleção de ativos utilizando Algoritmos Genéticos. O primeiro agrupa 137 ativos da Bolsa de Valores de São Paulo em 5 grupos e o outro seleciona os 12 ativos mais relevantes, através de uma ordem otimizada pelos Algoritmos Genéticos, que apresentem maior expectativa de retorno, com menor risco e que apresentem também baixa correlação com os demais ativos. Depois da seleção destes ativos um outro Algoritmo Genético é utilizado para otimizar Portfolios, empregando o modelo de Markowitz e o Critério de Fronteira eficiente para a formação da Carteira de Investimentos. Este é um problema computacionalmente difícil devido à explosão combinatória, pois são N ativos para a carteira numa base de dados com 137 no total, o que reforça a necessidade de ferramentas inteligentes para estes tipos de problemas. Em função disto os resultados foram satisfatórios, pois estes métodos de seleção conseguem reduzir o número de ativos, que serão utilizados na elaboração dos Portfolios. Os resultados encontrados no método de agrupamento, otimizado pelos Algoritmos Genéticos, são mais flexíveis, pois conseguem criar 5 grupos diferentes de carteiras, onde todos os ativos são considerados ao invés de selecionar apenas 12 dos 137 ativos, pois neste caso ativos importantes poderão ficar excluídos da carteira de investimentos.

Palavras Chaves—Algoritmos Genéticos, Portfolio e

Markowitz

Title: Optimizing the selection of assets and the Portfolio using Genetic Algorithms

Author: Renato de C. T. Raposo

Abstract- This article is addressing and comparing two methods of selection of active genetic algorithm. The first 137 active groups of the Stock Exchange of Sao Paulo separated into five groups and the other method selects the 12 most important assets, through an order optimized of genetic algorithms, which have a greater expected return with lower risk and which are also in low correlation

with other assets. After the selection of these assets another genetic algorithm is used to optimize portfolios, using the Markowitz model and the criterion of Efficient Frontier for the formation of the Investment Portfolio. This is a difficult computation problem due to combinatorial explosion, they are N assets to the portfolio in a database with 137 in total, which reinforces the need for intelligent tools for these kinds of problems. The results were satisfactory due to the fact that the screening methods can reduce the number of assets that will be used in the preparation of the Portfolios. The results from the clustering method, optimized by genetic algorithms are more flexible because they can create five different groups of portfolios, where all assets are considered instead of selecting only 12 of 137 assets, in which case important assets may be excluded from the investment portfolio. Keywords-Genetic Algorithms, Markowitz Portfolio

I. INTRODUÇÃO

Neste trabalho dois algoritmos genéticos foram

modelados: o primeiro procura agrupar ativos dentre 137 negociados na Bovespa (Bolsa de Valores de São Paulo), que apresentem maior expectativa de retorno, com menor risco e que apresentem baixa correlação com os demais ativos; o segundo utiliza os ativos agrupados empregando o modelo de Markowitz e o Critério de Fronteira eficiente para a formação da Carteira

Otimização na seleção de ativos e no Portfolio

utilizando Algoritmos Genéticos

Renato de C. T. Raposo

Otimização na seleção de ativos e no Portfolio utilizando Algoritmos Genéticos

(2)

de Investimentos (Portfolio).

A decisão de alocação de um capital em uma carteira de investimento num mercado emergente é uma tarefa complexa. Primeiro a carteira tem que ser selecionada, isto é, deve-se escolher um conjunto de ações de empresas, dentre todas as que são negociadas na Bolsa de Valores, de modo a que se tenha a maior perspectiva de lucro.

O problema seguinte consiste em determinar a quantidade ou a percentagem do capital a investir em cada ativo selecionado; para este fim deve-se considerar o retorno esperado para cada ativo e as restrições de risco que cada investidor está disposto a aceitar no seu investimento.Este é um problema NP-Completo, como indicado por Tabata e Takeda [12] que propuseram um método heurístico para a solução do mesmo.

II. ALGORITMOS GENÉTICOS: PRINCÍPIOS E APLICAÇÕES

Algoritmos Genéticos (GAs-Genetic Algorithms) constituem uma técnica de busca e otimização, altamente paralela, inspirada no princípio Darwiniano de seleção natural e reprodução genética [3]. Os princípios da natureza nos quais os

GAs se inspiram são simples. De acordo com a teoria de C. Darwin, o princípio de seleção privilegia os indivíduos mais aptos com maior longevidade e, portanto, com maior probabilidade de reprodução. Indivíduos com mais descendentestêm mais chance de perpetuarem seus códigos genéticos nas próximas gerações. Tais códigos genéticos constituem a identidade de cada indivíduo e estão representados nos cromossomas [7].

Estes princípios são imitados na construção de algoritmos computacionais que buscam uma melhor solução para um determinado problema, através da evolução de populações de soluções codificadas através de cromossomas artificiais.

Em GAs um cromossoma é uma estrutura de dados que representa uma das possíveis soluções do espaço de busca do problema. Cromossomas são então submetidos a um processo evolucionário que envolve avaliação, seleção, recombinação sexual (crossover) e mutação. Após vários ciclos de evolução a população deverá conter indivíduos mais aptos.

A analogia entre Algoritmos Genéticos e o sistema natural é representada através da tabela 1:

Tabela 1

Analogia entre Algoritmos Genéticos e o sistema natural

Podemos caracterizar os Algoritmos Genéticos através dos seguintes componentes [7]:

1. Problema a ser otimizado

2. Representação das Soluções de Problema 3. Decodificação do Cromossoma

4. Avaliação 5. Seleção

6. Operadores Genéticos 7. Inicialização da População

A seguir é apresentada uma breve discussão sobre cada um desses aspectos, exemplificando-se quando apropriado.

III. PROBLEMAESOLUÇÃODOPROBLEMA GAs são particularmente aplicados em problemas

complexos de otimização: problemas com diversos parâmetros ou características que precisam ser combinadas em busca da melhor solução; problemas com muitas restrições ou condições que não podem ser representadas matematicamente; e problemas com grandes espaços de busca. GAs têm sido aplicados a diversos problemas de otimização [3], tais como:

Otimização de Funções Matemáticas, Otimização Combinatorial,

Otimização de Planejamento, Problema do Caixeiro Viajante,

Problema de Otimização de Rota de Veículos, Otimização de Layout de Circuitos,

(3)

Otimização em Negócios e Síntese de Circuitos Eletrônicos.

Alguns exemplos de produtos desenvolvidos no ICA são:

Fluxo de Caixa Inteligente,

Classificação de Clientes (Data Mining), Alocação de Espaço Físico,

Planejamento e Otimização de Embarque de Minério no Porto de Tubarão,

Análise de Alternativas de Investimento em Projetos de Exploração e Prospecção de Petróleo sob Incertezas Técnicas e de Mercado,

Otimização da Quantidade e Localização de Poços Petrolíferos para o Desenvolvimento de um Campo de Petróleo sob condições de certeza.

Um dos maiores problemas nesta área financeira é encontrar os ativos que apresentem maior expectativas de retorno com menor risco e que apresentem também baixa correlação com os demais ativos que formarão a carteira.

Para solucionar de forma eficiente este problema, surge como uma ótima alternativa a utilização dos Algoritmos Genéticos, eles geram as possíveis soluções, as avalia e fornece o melhor conjunto de ativos. A ferramenta utilizada para a evolução da solução foi o Evolver 4.0 para o Excel.

Neste modelo optou-se por selecionar apenas 12 ativos para compor a carteira de investimento, a decisão de escolher este número ativos foi baseada no trabalho de Brito [1]. Deste modo emprega-se um Algoritmo Genético para escolher os ativos que devem compor a carteira de investimento, selecionando-se 12 dentre os 137 ativos negociados na BOVESPA.

IV. REPRESENTAÇÃO

A representação das possíveis soluções do espaço de busca de um problema define a estrutura do cromossoma a ser manipulado pelo algoritmo.

A representação do cromossoma depende do tipo de problema e do que, essencialmente, se deseja manipular geneticamente. Os principais tipos de representação são:

Tabela 2

Representação Problemas

A representação binária é simples, fácil de manipular cromossomas através dos operadores genéticos, fácil de ser transformada em inteiro ou real e, ainda, facilita a prova de alguns teoremas. Todavia, a representação por números reais (ponto flutuante) oferece melhor desempenho.

Por exemplo, seja o problema de encontrar o valor máximo da função f(x) = X2 inteiro [0,63].

Podemos representar as soluções do problema através de um cromossoma de 6 bits.

C1 0 0 1 0 0 1 representa x=9 C2 0 0 0 1 0 0 representa x=4

Um binário também pode representar um número real XR Є [Xmin,Xmáx], com precisão de p casas

decimais. Para isso são necessários K bits, sendo K calculado pela inequação:

Fig.1 inequação

A representação binária, entretanto, nem sempre pode ser empregada; o problema muitas vezes exige um alfabeto de representação com mais símbolos. Qualquer que seja a representação empregada, ela deve ser capaz de representar todo o espaço de busca que se deseja investigar.

V. DECODIFICAÇÃO

(4)

VI. AVALIAÇÃO

A avaliação é o elo entre o GA e o mundo externo. A avaliação é feita através de uma função que melhor representa o problema e tem por objetivo fornecer uma medida de aptidão de cada indivíduo na população corrente, que irá dirigir o processo de busca. A função de avaliação é para um GA o que o meio ambiente é para seres humanos. Funções de avaliação são específicas de cada problema. No exemplo, a função matemática f(x) = X2 mede aptidão de cada indivíduo. Na Tabela 2,

C1 é um indivíduo mais apto que C2.

Tabela 3

Representação da Avaliação

VII. SELEÇÃO

O processo de seleção em algoritmos genéticos seleciona indivíduos para a reprodução. A seleção é baseada na aptidão dos indivíduos: indivíduos mais aptos têm maior probabilidade de serem escolhidos para reprodução. Assim, se fi é a avaliação do indivíduo i na população corrente, a probabilidade pi do indivíduo i ser selecionado é proporcional a equação abaixo:

Fig.3 probabilidade do indivíduo ser selecionado Onde N é o número de indivíduos na população.

A seleção em GAs é tipicamente implementada por uma roleta onde cada indivíduo é representado por uma fatia proporcional a sua aptidão relativa. O operador de seleção é um componente essencial de algoritmos genéticos. A literatura identifica cinco principais mecanismos de seleção: proporcional, por torneios, com truncamento, por normalização linear e por normalização exponencial [14]. Um mecanismo de seleção é caracterizado pela pressão seletiva ou intensidade

de seleção que o mesmo introduz no algoritmo genético. O termo pressão seletiva é utilizado em diferentes contextos e com significados diferentes na literatura de computação evolucionária. A definição de intensidade de seleção empregada em genética é a variação na aptidão média da população induzida pelo método de seleção [14].

VIII. INICIALIZAÇÃO DA POPULAÇÃO

A inicialização da população determina o processo de criação dos indivíduos para o primeiro ciclo do algoritmo. Tipicamente, a população inicial é formada a partir de indivíduos aleatoriamente criados. Populações iniciais aleatórias podem ser semeadas com bons cromossomas para umaevolução mais rápida, quando se conhece, a priori, o valor de boas “sementes”. Uma técnica eficiente para se encontrar por GA boas soluções em um problema, consiste em executar evoluções (rodadas) sucessivas, semeando-se a população inicial da evolução seguinte com as melhores soluções encontradas na anterior.

IX. PARÂMETROS E CRITÉRIOS DE PARADA

Em um algoritmo genético vários parâmetros controlam o processo evolucionário:

Tamanho da População: número de pontos do espaço de busca sendo considerados em paralelo a cada ciclo.

Taxa de Crossover: probabilidade (pc) de um indivíduo ser recombinado com outro.

Taxa de Mutação: probabilidade (pm) do conteúdo de uma posição/gene do cromossoma ser alterado.

Número de Gerações: total de ciclos de evolução de um GA.

Total de Indivíduos: total de tentativas em um experimento (tamanho da população x número de gerações)

Os dois últimos parâmetros são em geral empregados como critério de parada de um algoritmo genético.

X. OBJETIVOS

(5)

dos ativos, em função da grande quantidade de possibilidades dos mesmos, gerando uma lista agrupada ou ordenada dos melhores ativos.

Este é um problema computacionalmente difícil devido à explosão combinatória, pois são N ativos para a carteira numa base de dados com 137 no total.

XI. IMPLEMENTAÇÃO

Representação e Decodificação do Cromossoma:

Na representação do problema o cromossoma, na figura 1, é composto por 137 genes onde cada gene identifica um ativo. O algoritmo genético busca os cromossomas cujos os grupos ou os 12 primeiros genes que representem os ativos com maior retorno, menor risco e baixa correlação com os demais ativos da carteira.

Fig. 3. Cromossoma: Lista de Ativos.

Na implementação da dissertação de mestrado em [6], podemos verificar que na avaliação do cromossoma procura-se maximizar a função objetivo definida pela equação abaixo:

Fig.4. Função objetivo

Os componentes da figura 4, que é a função objetivo para a avaliação do cromossoma, são os seguintes:

Ri é o retorno do ativo localizado no gene i do cromossoma representado pela média mensal;

é o risco próprio do ativo no gene i do cromossoma representado pelo desvio padrão;

é o coeficiente de correlação do ativo no gene i com o ativo no gene j do cromossoma.

Na implementação deste trabalho, a função objetivo, referenciada na figura 4, foi adaptada

mantendo as mesmas características, isto é, para avaliação do cromossoma procura-se maximizar a função objetivo definida pela equação abaixo:

Fig.5. Função objetivo

Na equação da figura 4 é realizado o produtório até “12”, que equivale dizer que apenas 12 ativos serão avaliados. Estes 12 ativos estarão na frente da lista ordenada, gerada pelo Algoritmo Genético, são estes ativos, que servirão de base para a formação da carteira de investimentos.

Na equação da figura 5 é realizado o produtório até “N”, que equivale dizer que todos os ativos estão sendo avaliados e estarão fazendo parte dos 5 grupos gerados pelo Algoritmo Genético, são estes grupos, que servirão de base para a formação das carteiras de investimentos.

Operadores Genéticos e Parâmetros da Evolução:

Os operadores utilizados neste modelo foram: Crossover de ordem e uniforme

Mutação

Rodou-se o algoritmo genético várias vezes, alterando-se os seguintes valores dos parâmetros:

Tamanho da População: 100, 500, 3500 indivíduos.

Taxa de Crossover : 0.5, 0.1, 0.25, 0.55. Taxa de Mutação : 0.06, 0.5, 0.35, 0.3, 0.7, 0.8.

(6)

Fig.6. Execução do programa no Evolver.

Na execução do programa o Algoritmo Genético gera as possíveis soluções, as avalia e fornece o melhor conjunto de ativos. A ferramenta utilizada para a evolução da solução foi o Evolver 4.0 para o Excel, como ilustrado na figura 6. XII. RESULTADOSDOEXEMPLOSIMILAR

De acordo com [6], O algoritmo genético

converge em todas as rodadas para os mesmos 12 ativos descritos a seguir:Banespa On, Banespa Pn, Bemge On, Bemge Pn, Cerj On, Enersul Pnb, Ericsson Pn, Fertibras Pn, Fertiza Pn, Pirelli Pn, Sansuy Pn, Trafo Pn.

XIII. RESULTADOS

Neste trabalho os respectivos ativos do exemplo similar apresentado, estão distribuídos em grupos diferentes, o que demonstra uma flexibilidade maior na escolha dos ativos, isto é, ao invés da seleção em ordem de apenas 12 ativos, foi realizado com sucesso a seleção em 5 grupos, utilizando assim todos os ativos disponíveis na

base de dados (137). Desta forma é possível aumentar o número de possibilidades de ganhos, na formação da Carteira.

.

XIV. CONCLUSÕES

Os resultados apresentados foram bem promissores, pois a utilização dos Algoritmos Genéticos para seleção de ativos e formação da carteira de investimento (portfolio) consegue resolver ou amenizar estes problemas que são bem complexos, o que demonstra ser uma alternativa segura, em função destas dificuldades.

Para trabalhos futuros podemos comparar as rentabilidades dos resultados apresentados neste projeto, com os resultados de outros métodos, utilizados no mercado financeiro para a escolha dos ativos e na formação de portfolio, como por exemplo a utilização dos perfis dos usuários, que utilizam ao invés de Algoritmos Genéticos, uma Rede Neural ou Rede Neuro-Nebulosa.

XV. REFERENCES

[1] Brito, Ney R., O Mercado de Capitais e a Estrutura Empresarial Brasileira, Editora Guanabara Dois S.A., Rio de Janeiro, 1981. [2] G.M. Papadourakis, G. Spanoudakis and A. Gotsias. Application of

Neural Networks in Short-Term Stock Price Forecasting, Proceedings of 1st International Workshop Neural Networks in the Capital Markets, London, November 1993.

[3] D. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning, Addison-Wesley 1989.

[4] Jacqueline Shoaf and James A. Foster. The efficient set GA for stock portfolios. Proc. Int. Conf. on Evolutionary Computing (CEC), IEEE Press, 1998.

[5] Jacqueline S. Shoaf and James A. Foster. A Genetic algorithm solution to the efficient set problem: a technique for portfolio selection based on the Markowitz model. Proc. of the 1996 Annual Meeting, Decision Sciences Institute. Vol. II, pages 571-573. [6] Koza, John R., Genetic Programming: On the Programming of

Computers by Means of Natural Selection, MIT Press, USA, 1992.

[7] Marco Aurélio Pacheco, Notas de Aula em Computação Evolucionária, (www.ica.ele.pucrio.br).

[8] Lazo Lazo Juan G., Sistema Híbrido Genético-neural Para Montagem e Gerenciamento De Carteiras De Ações.Dissertação de Mestrado, Puc-Rio, 2000.

[9] I. Matsuda. Application of Neural Sequential Association to Long-Term Stock Price Prediction. Proceedings of IJCNN’91, Singapore, 1991

[10] Palisade Corporation, Evolver User’s Guide, http://www.palisade.com.

[11] Rezende, Solange Oliveira, Sistemas Inteligentes Fundamentos e Aplicações, Ed. Manole, 2003.

[12] Tabata, Yoshito e Eiji Takeda. Bicriteria Optimization Problem of Designing an Index Fund, Journal of the Operational Research Society 46(8), 1023-1032, 1995.

[13] Blickle, T., “Theory of Evolutionary Algorithms and Application to System Synthesis”, dissertação de doutorado, Swiss Federal Institute ofTechnology, Zurique, 1996.

(7)

Referências

Documentos relacionados

Para dar início às ações educativas no Contexto agroecológico e agroflorestal para a comu- nidade interna e externa à instituição, o NEA IFTM Campus Uberlândia propôs o “I Curso

No entanto, cabe ao gerente o cuidado de que os processos naturalmente relacionados entre si, não sejam mal utilizados, pois podem prejudicar um ao outro, ou seja, o

Assim como Palamedes não pode apresentar fatos em sua defesa, mas apenas um discurso sobre eles, Górgias tampouco os apresenta em sua apologia de Helena, recorrendo ao

A Bolsa de Valores de São Paulo (BOVESPA), sede do principal mercado de ações da América Latina, tem a honra de ter sido a primeira bolsa de valores do mundo a aderir ao Pacto

Mineração de conhecimento interativa em níveis diferentes de abstração: Como é  difícil  prever  o  que  exatamente  pode  ser  descoberto  de  um  banco 

Se você vai para o mundo da fantasia e não está consciente de que está lá, você está se alienando da realidade (fugindo da realidade), você não está no aqui e

Como o objetivo é a aquisição de biopotenciais da face, devem ser utilizados eletrodos superficiais pois são baratos, descartáveis e evitam procedimentos de

a) Comida, energia elétrica, TV por assinatura e pacotes de telefonia não utilizáveis. b) Supermercado, TV por assinatura, energia elétrica e pacotes de telefonia