You are on page 1of 159

LUIZ PAULO RODRIGUES DE FREITAS PARREIRAS

MODELO GENTICO-NEURAL DE GESTO DE CARTEIRAS DE AES

Trabalho de Formatura apresentado Escola Politcnica da Universidade de So Paulo para obteno do Diploma de Engenheiro de Produo.

So Paulo
2003

LUIZ PAULO RODRIGUES DE FREITAS PARREIRAS

MODELO GENTICO-NEURAL DE GESTO DE CARTEIRAS DE AES

Trabalho de Formatura apresentado Escola Politcnica da Universidade de So Paulo para obteno do Diploma de Engenheiro de Produo.

Orientador: Prof. Dr. Tamio Shimizu

So Paulo 2003

FICHA CATALOGRFICA
Parreiras, Luiz Paulo Rodrigues de Freitas Modelo Gentico-Neural de Gesto de Carteiras de Aes. So Paulo, 2003. 127 p. Trabalho de Formatura Escola Politcnica da Universidade de So Paulo. Departamento de Engenharia de Produo. 1. Finanas 2. Redes Neurais 3. Algoritmos Genticos. I. Universidade de So Paulo. Escola Politcnica. Departamento de Engenharia de Produo II.t

Para meus pais Aurea e Alvaro.

AGRADECIMENTOS
Gostaria de agradecer a meus pais, Aurea e Alvaro, que infelizmente j no esto mais aqui seu esforo instigou minha curiosidade intelectual e a vontade de superao. A minha irm, Mariana, amiga e companheira, pela fora nos momentos difceis que passamos, e pelo apoio incessante. E ao resto de minha famlia, pelos momentos felizes, e os nem tanto - vocs so parte daquilo que eu sou.

Devo ainda agradecer ao Prof. Tamio Shimizu, cuja insistncia em aplicao prtica fez com que este trabalho fosse mais do que uma mera acumulao de teorias. Ao Prof. Ademar Ferreira, que me ensinou sobre redes neurais. A todos os meus colegas nestes anos de Poli seu apoio foi indispensvel.

Hedging-Griffo, empresa em que trabalho, que me acolheu e me motivou a aprender e me esforar. Ao Marcelo Cavalheiro e o time do Research, que me ensinaram boa parte do que sei sobre os mercados de aes. Ao Jlio, Dilton e toda a equipe de Gesto, que me receberam, me incentivaram e continuam me ensinando sobre os mercados, e porque no, sobre a vida. E ao Lus Stuhlberger, cujo talento guia para todos ns.

Por fim, a todos aqueles que, direta ou indiretamente, contriburam com a elaborao deste trabalho.

RESUMO
O presente trabalho busca reunir duas ferramentas de Inteligncia Artificial, as redes neurais e os algoritmos genticos, e coloc-las a servio da construo de carteiras de aes. Dentro do paradigma terico da Moderna Teoria de Portflios, o problema de construo de carteiras de investimento tem como base de sua soluo as expectativas futuras de retornos e riscos dos ativos, sendo ento possvel otimizar carteiras para obter mais retorno com menos risco. Dada a necessidade de ter boas previses dos retornos e riscos futuros, devem-se buscar ferramentas adequadas para a realizao de tais previses. Para prever os retornos futuros, sero testadas diversas configuraes de redes neurais, com cinco algoritmos de treinamento diferentes, de maneira a determinar qual tem melhor performance e assim aplic-la previso dos retornos de 25 aes diferentes, todas negociadas na Bolsa de Valores de So Paulo, a Bovespa. As redes sero treinadas recebero vrios dados como input, e devero aprender a dar como sada a cotao da ao no dia seguinte. Para o treinamento sero usadas cotaes de 900 dias, para validao 100 dias subseqentes, e para o teste do modelo, mais 100 dias. Para prever os riscos futuros, ser utilizado um modelo GARCH (1,1) com janela deslizante, de maneira a realizar previses um dia frente com base nos ltimos 21 dias. Obtidas as previses de retornos e riscos futuros para cada uma das 25 aes, buscarse- ento construir carteiras que otimizem a relao risco-retorno para o investidor. Dado o tamanho do espao de solues possveis, necessrio uma heurstica de busca eficiente, e para tanto foi escolhido um modelo de algoritmo gentico, que se mostra eficiente em obter boas solues em termos de retorno e risco para o investidor. Ao fim, conclui-se que as redes neurais, quando propriamente modeladas e treinadas, podem realizar boas previses de preos futuros de aes, e quando integradas num modelo integrado de risco-retorno baseado numa heurstica de busca eficiente, geram retornos superiores. Em outras palavras, um modelo de Rede Neural Algoritmo Gentico uma ferramenta adequada para a gesto de carteiras de aes.

ABSTRACT
This work represents an attempt to bring together two leading tools from Artificial Intelligence, namely Neural Networks and Genetic Algorithms, and put them to work on managing stock portfolios. Under the Modern Portfolio Theory framework, the task of building investment portfolios depends on the knowledge of future returns and risks for a given set of assets, which opens up the possibility of optimization in search of more returns with less risk. Therefore, good forecasting of future returns and volatility is essential to building good portfolios, and advanced tools such as the ones here discussed may be good candidates. The forecasting of future returns is done with Neural Networks. Several configurations are tested, with five different training algorithms, in order to establish the best performing one, and then apply it to forecasting returns for 25 different stocks, all traded on So Paulo Stock Exchange (Bovespa). Inputs will contain several different data, and the networks will be trained to predict next days stock price. Training will be done with 900 quotes, validation with the next 100 quotes, and the forecasts on the following 100 days. Volatility (ie. risk) forecasting will be done by a GARCH (1,1) model, with a 21-day sliding window, and predictions one day ahead. Given the forecasts for future returns and risks for each of the 25 stocks, under the mean-variance theoretical framework the next step is finding portfolios that provide the adequate mix of returns and risk. Given the sheer size of the search space, a good heuristic for finding portfolios is needed, and genetic algorithms are just that tool. A GA-based model is then built, and it demonstrates good performance and efficiency. To sum up, the work clearly demonstrates the capabilities of neural networks applied to stock price forecasting. Furthermore, it shows that integrating such predictions under a Genetic Algorithm-based model creates portfolios with good returns and low risk. In other words, a Neural Network-Genetic Algorithm model provides an adequate tool for stock portfolio management.

ndice

1. Introduo
1.1. 1.2. 1.3. 1.4. Motivao Objetivos O Estgio Descrio e Organizao do Trabalho 01 02 03 04

2. Finanas & Mercados


2.1. Introduo 2.2. Histrico 2.3. Mercados Financeiros 2.3.1. Mercados Financeiros e a Economia 2.3.2. O Mercado Brasileiro 2.3.3. A Hiptese dos Mercados Eficientes 2.4. Modelagem e Previso 2.5. Moderna Teoria de Portflio 2.5.1. Markowitz e a Mdia-Varincia 2.5.2. Sharpe e o CAPM 2.5.3. Arbitrage Pricing Theory 2.6. Risco 2.7. Mtricas de Desempenho 06 06 07 08 09 10 11 13 14 19 21 22 24

3. Redes Neurais
3.1. Introduo 3.2. Histrico 3.3. O Neurnio Artificial 3.3.1. Funo de Ativao 3.3.2. Topologia de Rede 3.4. Processos de Aprendizagem 3.4.1. Aprendizagem Supervisionada 3.4.2. Aprendizagem No-Supervisionada 3.5. O Algoritmo Backpropagation 3.5.1. Taxas de Aprendizagem 3.6. Desempenho de Redes Neurais 3.6.1. Generalizao 3.6.2. Algoritmos de Treinamento 3.6.3. Treinamento Sequencial e por Lote 3.6.4. Tcnicas de Poda de Rede 3.6.5. Pr e Ps-Processamento 3.7. Concluses 27 31 33 36 37 39 39 39 40 41 42 42 45 46 48 50 51

4. Algoritmos Genticos
4.1. Introduo 4.2. Perspectiva Histrica 4.3. Evoluo como Ferramenta 4.4. Terminologia Biolgica 4.5. Elementos Bsicos de um Algoritmo Gentico 4.5.1. Codificao 4.5.2. Funes de Utilidade 4.5.3. Operadores 4.6. Um Algoritmo Gentico Bsico 4.7. Algoritmos Genticos vs. Mtodos de Busca Tradicionais 52 52 55 57 58 59 60 61 62 63

5. Inteligncia Artificial em Finanas: Anlise da Pesquisa Prvia


5.1. Introduo 5.2. Redes Neurais em Finanas 5.3. Algoritmos Genticos em Finanas 5.4. Pesquisa Prvia: Que Caminhos Seguir? 5.4.1. Pontos Fortes 5.4.2. Limitaes 5.4.3. Concluses 66 66 70 72 72 73 75

6. Modelos & Experimentos


6.1. Introduo 6.2. Dados 6.2.1. Escolha 6.2.2. Pr-Processamento 6.3. Modelo de Previso de Retornos com Redes Neurais 6.3.1. Introduo 6.3.2. Entradas, Sadas e Targets: Pr e Ps-Processamento 6.3.3. Modelos de Rede Neural 6.3.3.1. Rede Backpropagation com Momentum 6.3.3.2. Rede Backpropagation Resiliente 6.3.3.3. Rede Powell-Beale 6.3.3.4. Rede Quasi-Newton BFGS 6.3.3.5. Rede Levenberg-Marquardt 6.3.4. Resultados 6.4. Modelo de Previso de Risco GARCH 6.5. Modelo de Gesto de Carteiras com Algoritmos Genticos 6.5.1. Inputs do Modelo 6.5.2. Parmetros do Algoritmo Gentico 6.5.3. Resultados 6.6. Concluses 77 78 79 83 84 84 87 90 91 95 98 100 101 103 105 109 109 111 113 117

7. Concluses
7.1. Concluses 7.2. Trabalhos Futuros 118 119 120

8. Bibliografia

Apndice 1 Detalhamento dos Modelos e Cdigos


A1.1. Modelo de Redes Neurais A1.2. Modelo GARCH A1.3. Modelo de Algoritmo Gentico A1.4. Principais Cdigos A1.4.1. Rede Neural A1.4.2. Modelo GARCH

i i iv v vii vii ix x x x xv

Apndice 2 Resultados Completos


A2.1. Introduo A2.2. Previso de Retornos A2.3. Previso de Riscos

ndice de Figuras
Curvas de Fronteira Eficiente para vrias correlaes Fronteira Eficiente de uma Carteira Combinao de Ativos de menor risco em uma carteira Modelo de um Neurnio Artificial Exemplo de Rede No-Recorrente com 1 camada escondida Exemplo de Rede Neural Recorrente Fluxograma do Processo de Treinamento da Rede Neural Previso de Preos de ARCZ6 por uma rede Levenberg-Marquardt com 12 neurnios na camada escondida Figura 9. Diviso de Dados Treinamento/Validao/Previso Figura 10. Disperso Resultados para Algoritmo Backpropagation com Momentum Figura 11. Histograma de Distribuio dos Neurnios na Camada Escondida para o algoritmo Backpropagation com Momentum Figura 12. Resultado de Previso com algoritmo Backpropagation com Momentum Figura 13. Histograma de Distribuio dos Neurnios na Camada Escondida para o algoritmo Backpropagation Resiliente Figura 14. Histograma de Distribuio dos Neurnios na Camada Escondida para o algoritmo Powell-Beale Figura 15. Histograma de Distribuio dos Neurnios na Camada Escondida para o algoritmo BFGS Figura 16. Histograma de Distribuio dos Neurnios na Camada Escondida para o algoritmo Levenberg-Marquardt Figura 17. Passos do Modelo GARCH de Previso de Risco Figura 18. Volatilidade Prevista de CSNA3 Figura 19. Volatilidade Prevista de PETR4 Figura 20. Volatilidade Prevista de USIM5 Figura 21. Evoluo da Utilidade das Solues (esq.) e Utilidade dos Organismos numa dada populao dentro do Algoritmo Gentico (dir.), ao incio da otimizao Figura 22. Evoluo da Utilidade das Solues (esq.) e Utilidade dos Organismos numa dada populao dentro do Algoritmo Gentico (dir.), prximo ao fim da otimizao Figura 23. Retornos Contnuos Dirios das carteiras otimizadas por Algoritmo Gentico, entre 23/05/2003 e 10/10/2003 Figura 24. Evoluo do Portflio montado a partir das carteiras dirias Figura 1. Figura 2. Figura 3. Figura 4. Figura 5. Figura 6. Figura 7. Figura 8. 17 17 18 34 38 38 87 89 91 92 94 95 97 99 101 103 107 108 108 108

114

114 116 116

ndice de Tabelas
Tabela 1. Tabela 2. Tabela 3. Tabela 4. Tabela 5. Tabela 6. Tabela 7. Tabela 8. Pesquisa Prvia de Aplicaes de Redes Neurais Aes Escolhidas para Experimentos com Modelos Tipos de Dados usados como Inputs Parmetros do Modelo de Previso de Retornos Resultados Algoritmo Backpropagation com Momentum N de Neurnios na Camada Escondida para Backpropagation Resultados Algoritmo Backpropagation Resiliente N de Neurnios na Camada Escondida para Backpropagation Resiliente Tabela 9. Resultados Algoritmo Powell-Beale Tabela 10. N de Neurnios na Camada Escondida para Powell-Beale Tabela 11. Resultados Algoritmo BFGS Tabela 12. N de Neurnios na Camada Escondida para BFGS Tabela 13. Resultados Algoritmo Levenberg-Marquardt Tabela 14. N de Neurnios na Camada Escondida para Levenberg-Marquardt Tabela 15. Topologias de Melhor Performance Tabela 16. Resumo da Performance Preditiva dos Algoritmos Tabela 17. Parmetros do Algoritmo Gentico 69 80 82 87 93 94 96 97 99 100 100 101 102 103 104 105 113

1. INTRODUO
O que seria a histria, seno o enorme prazer de se conhecer os detalhes, e no s os padres abstratos?
Stephen Jay Gould1

1.1. Motivao

Disse George Soros: Os mercados acionrios so um excelente laboratrio para o teste de teorias2. Em nenhum outro campo, as doses de risco so to abundantes. Como tambm o so as potenciais recompensas e perdas. Em um ambiente em que a maioria pode se tornar pobre ou inimaginavelmente rica com o advento de uma notcia, ou com o piscar de uma cotao na tela a as oportunidades e os desafios intelectuais so enormes. Especialmente em mercados pouco maduros e constantemente volteis como o brasileiro, onde as ferramentas ainda no foram plenamente desenvolvidas, e a sofisticao dos players ainda no atingiu os nveis de uma Wall Street ou da City de Londres. Assim, a motivao bsica por trs do presente trabalho a tentativa de obter modelos que gerem bons retornos para o investidor. No caso especfico aqui discutido, modelos baseados em ferramentas de Inteligncia Artificial, tentando criar uma ponte entre o estado-da-arte em termos de tcnicas de previso e busca, com um conhecimento dos detalhes do dia-a-dia do mercado de aes. As tcnicas de engenharia so teis na abordagem do problema, no seu tratamento quantitativo, e tambm na anlise das limitaes dos resultados obtidos. Obter retornos em excesso aos do mercado no tarefa simples (uma enormidade de recursos financeiros e intelectuais tem sido dedicada ao problema nas ltimas dcadas), e este trabalho no aspira, a priori, a resolver de uma vez por todas a questo. A idia bsica trazer para o mercado brasileiro uma linha de pesquisa que muitos frutos rendeu (em trabalhos acadmicos com certeza absoluta, em retornos financeiros j no se sabe com certeza) no exterior.
1

Apud Bernstein, 1992. Apud Bass, 2000.

1.2. Objetivos

O objetivo fundamental deste trabalho aplicar, de maneira realista, um modelo de previso do mercado de aes baseado em Redes Neurais, utilizando toda a potencialidade da ferramenta para a obteno de boa performance preditiva, e a partir da integrar tais previses a um modelo de alocao de ativos baseado em Algoritmos Genticos, outra ferramenta poderosa de Inteligncia Artificial, para obter carteiras de investimento gerenciadas dinamicamente, que resultem em retornos em excesso aos de mercado. Embora tenha um cunho acadmico, este trabalho feito com uma preocupao acerca de sua aplicabilidade prtica. Isso o que o distingue fortemente de outros trabalhos de mesmo cunho3. Assim, enfatizado o papel da liquidez no mercado de aes brasileiro, alm de algumas caractersticas peculiares deste mercado, que introduzem vieses que devem ser tratados com cuidado, para que os resultados no se percam, por inteis e inaplicveis. Vale dizer que, de um modo geral, so muito poucos os trabalhos brasileiros que se propuseram a tarefa semelhante deste trabalho. A literatura de aplicaes em finanas nos mercados brasileiros razoavelmente escassa, e so poucos os autores que se aventuraram alm do conhecido e bem-estabelecido pela experincia internacional. A literatura na interface Finanas-Inteligncia Artificial ento, ainda mais escassa. A crnica falta de recursos para pesquisa no pas provavelmente tem muito a ver com isso, mas talvez a razo de fundo seja mesmo as constantes crises econmicas que o pas vivenciou na ltima dcada. Como deve ficar claro no item 2.3 deste trabalho, h uma relao intrnseca e simbitica entre o desenvolvimento econmico e o desenvolvimento dos mercados financeiros em um pas, e a variedade de crises e a falta de crescimento do pas certamente no contriburam para isso. De todo modo, em ambientes de elevada volatilidade como o mercado brasileiro

Lazo Lazo (2000) por exemplo, tem os mesmos fundamentos tericos e modelos razoavelmente semelhantes aos aqui desenvolvidos. Contudo, parte de seus resultados no faz sentido por no levar em conta o problema de liquidez do mercado de aes. disso que trata a frase preocupao com a aplicabilidade prtica.

que ferramentas de boa qualidade para avaliao de riscos e retornos, alm de boa alocao de ativos, permitem a obteno consistente de performances positivas. nesse contexto que este trabalho desenvolvido, visando aplicar uma perspectiva de engenharia ao projeto de um modelo consistente de gesto de carteiras de aes, usando as ferramentas mais avanadas disponveis.

1.3. O Estgio

O estgio foi desenvolvido na Hedging-Griffo Corretora de Valores S.A. A Hedging-Griffo uma corretora de valores e administradora de recursos. Especificamente, o estgio ocorreu nesta segunda rea, onde so administrados diversas carteiras e fundos de investimentos. A Hedging-Griffo foi fundada em 1981, inicialmente apenas como corretora de valores, especializando-se primeiramente em commodities agrcolas, e mais tarde se expandindo para os mercados de commodities financeiras e aes na Bovespa. Consolidou sua posio como uma das maiores do mercado ao longo das dcadas de 80 e 90, e em 1992 iniciou as atividades da Hedging-Griffo Asset Management, o brao de administrao de recursos. Em 1997 criou o fundo HG Verde FIF, o mais antigo hedge fund (fundo multimercado, que investe em diversos ativos diferentes simultaneamente) em atividade no pas. Atualmente a empresa administra por volta de seis bilhes de reais em recursos de terceiros. Inicialmente o estgio foi desenvolvido na rea conhecida como Research dentro da empresa. Esta rea responsvel por estudar e analisar empresas cujas aes so cotadas na Bolsa de Valores de So Paulo, a Bovespa. Alm disso, a equipe, composta de cinco pessoas, administra fundos e carteiras com recursos da ordem de R$ 30 milhes, integralmente aplicados em aes. Nesta rea, foram desenvolvidos estudos quantitativos e de anlise fundamental de empresas, alm de estudos e desenvolvimento de metodologias para melhor gesto cotidiana dos recursos administrados. Posteriormente, o estgio passou a ser desenvolvido na rea conhecida como Gesto. Esta rea responsvel pela administrao de uma grande gama de fundos de investimento, com recursos da ordem de R$ 2,5 bilhes, incluindo o carro-chefe

da empresa, o j citado HG Verde. Nesta rea, foram desenvolvidos estudos e aplicaes para melhor alocao e controle dos recursos investidos, e tambm para auxiliar na tomada de deciso sobre investimentos em diversos mercados diferentes (aes, renda fixa, derivativos, cmbio, entre outros). Tanto a primeira quanto a segunda etapa do estgio permitiram ao autor aprofundar e expandir seu conhecimento sobre o mercado financeiro, seus detalhes intricados, qual tipo de modelagem possvel fazer, quais os reais limites de mtodos quantitativos e qualitativos de tomada de deciso, e tambm observar, cotidianamente, como tais decises podem ter impacto sobre a rentabilidade obtida dos recursos, e em ltima instncia, o dinheiro que os investidores confiam empresa para gerir. Tais conhecimentos foram fundamentais para o desenvolvimento deste trabalho.

1.4. Descrio e Organizao do Trabalho

O trabalho organizado em cinco partes bsicas. A premissa bsica solidificar uma base terica, apresentar as aplicaes prticas passadas desta teoria, e por fim acrescentar a contribuio original. A parte terica comea no captulo 2, onde so apresentados os conceitos fundamentais de finanas e dos mercados financeiros. Aps uma introduo e um breve histrico, so discutidos os principais conceitos que envolvem os mercados financeiros, sua relao com a economia como um todo, e a famosa Hiptese dos Mercados Eficientes. Entram em cena ento os conceitos por trs de tentativas de modelar e prever os mercados, seguidos da chamada Moderna Teoria de Portflios, talvez o marco fundamental da teoria de finanas da segunda metade do sculo XX. Por fim, so discutidos os conceitos bsicos de Risco aplicado ao mercado, e as principais mtricas de avaliao de decises. No captulo 3 so introduzidos as Redes Neurais artificiais. Novamente inicia-se com uma introduo e um histrico, passando aos conceitos bsicos de redes neurais, quais sejam, o neurnio artificial e suas caractersticas bsicas, os tipos bsicos de redes e os principais processos de aprendizagem. Restringindo o foco, apresentado

o algoritmo Backpropagation, base dos modelos discutidos adiante. Por fim, algumas variveis importantes no projeto de redes de alta performance so discutidas. No captulo 4 apresentada a outra ferramenta de Inteligncia Artificial usada aqui: os Algoritmos Genticos. O captulo construdo de modo a facilitar a compreenso do desenvolvimento e das potencialidades do uso do algoritmo. Assim, ao histrico seguem-se sees sobre o relacionamento entre a biologia e a ferramenta, os elementos bsicos de construo de um AG, um modelo genrico, e por fim uma comparao com mtodos de busca mais tradicionais e estabelecidos. Concluda a introduo terica, passa-se a uma discusso acerca daquilo que j foi obtido por pesquisas passadas, na questo de conjugar Inteligncia Artificial com aplicaes de finanas. So abordadas separadamente as contribuies de Redes Neurais e de Algoritmos Genticos resoluo de problemas da rea, notadamente aqueles que envolvem previso de mercados (no primeiro caso) e alocao em carteiras (no segundo). As principais concluses tiradas da pesquisa prvia so ento discutidas, levantando benefcios e limitaes, e apontando caminhos para a construo dos modelos. Finalmente, no captulo 6, so apresentados os modelos construdos e aplicados. Primeiramente so apresentados os dados utilizados nos experimentos, suas limitaes e caractersticas fundamentais. Depois, o modelo de Rede Neural desenvolvido detalhado e aplicado aos dados, para a obteno de previses de retornos das aes. Aqui, so explicados em detalhe o pr e o ps-processamento, as principais escolhas de parmetros e sua razo. A seguir, discutido brevemente o modelo GARCH aplicado previso dos riscos associados a cada ao, e so apresentadas as previses obtidas. Finalmente, o modelo de Algoritmos Genticos discutido, e so apresentados os resultados de alocao de carteiras obtidos pelo modelo. Finalmente, uma concluso com os principais resultados apresentada. No captulo 7, so apresentadas e discutidas as principais concluses do trabalho. As falhas e pontos fortes so o tema fundamental, na tentativa de encaminhas pesquisas futuras e sugerir potenciais extenses do presente trabalho.

2. FINANAS & MERCADOS


Posso calcular os movimentos dos corpos celestes, mas no a loucura das pessoas
Sir Isaac Newton, aps perder 20.000 no mercado de aes1

2.1. Introduo Desde pocas imemoriais, tem sido um dos objetivos fundamentais do homem aumentar o seu bem-estar. Um dos meios que ele encontrou para isso foi atravs da obteno de ganhos atravs dos mercados, inicialmente atravs de trocas de mercadorias fsicas, mais tarde tendo a mediao do dinheiro, uma espcie de graxa que permite s rodas econmicas girarem. E como todo ativo, o dinheiro acabou por ter seu prprio mercado, o financeiro. Em torno deste se elaboraram teorias e pesquisas, usualmente englobadas no campo de finanas. deste estudo que trata o presente captulo. O objetivo fundamental entender os conceitos bsicos por trs do funcionamento do mercado financeiro, e tambm quais as principais teorias que permitem entender e otimizar a busca de ganhos atravs da gesto adequada dos ativos financeiros.

2.2. Histrico Mercados so praticamente to antigos quanto o homem moderno. Traar sua origem talvez seja impossvel, e no o propsito deste trabalho. Contudo, possvel apontar as origens dos modernos mercados financeiros (e das crises que os acompanham) menos difcil. Talvez o primeiro relato completo dos tempos modernos seja na Holanda, com o mercado de tulipas. Ali possvel ver os elementos modernos que caracterizam os mercados financeiros: um local central para as operaes, a tentativa de agregar os resultados das mesmas, e at a criao de instrumentos derivativos2. Posteriormente, os mercados financeiros ajudaram a
1

Apud Dunbar, 2000.

2 Para um relato detalhado do mercado de tulipas, ver Devil Take the Hindmost, de Edward Chancellor. Este livro traz um histrico completo e fundamentado de todas as grandes crises da histria dos mercados financeiros.

financiar a expanso colonial inglesa (o que resultou na chamada Bolha do Mar do Sul, ou South Sea Bubble) e a guerra de Secesso nos Estados Unidos, passando a ser parte integral do dia-a-dia econmico das maiores economias do mundo. Embora os mercados sejam razoavelmente antigos, a moderna teoria de finanas encontra suas razes apenas no comeo do sculo3. do francs Louis Bachelier o primeiro trabalho que busca explicar o comportamento dinmico dos preos dos ativos financeiros. Isso ocorreu no comeo do sculo vinte mas o trabalho de Bachelier permaneceu relegado a segundo plano durante quase cinqenta anos. Embora grandes economistas como Keynes tenham trabalhado na questo, nunca formalizaram os conceitos fundamentais da dinmica dos preos. Coube a Harry Markowitz, em 1959, dar o passo fundamental nessa direo, estabelecendo o formalismo bsico para o estudo de finanas, com o paradigma da mdia-varincia. Seu aluno William Sharpe levou a teoria alm, com a criao do CAPM, uma teoria que permite explicar o preo de qualquer ativo. Num contexto mais genrico, Samuelson e posteriormente Fama buscaram explicar o comportamento do mercado financeiro como um todo, formulando a controversa Hiptese dos Mercados Eficientes. Da em diante, o nvel de sofisticao analtica da teoria de finanas avanou a passos largos, com o desenvolvimento de instrumentos derivativos, como swaps e futuros, alm das opes, cujo passo fundamental foi a descoberta, por Black, Merton e Scholes nos anos 70, da famosa frmula de Black & Scholes. Hoje, a moderna teoria de finanas envolve conceitos de campos to distintos quanto psicologia e clculo estocstico, tendo se ramificado em diversos sub-campos de estudo.

2.3. Mercados Financeiros Poucas coisas despertam reaes to distintas quanto os mercados financeiros: h aqueles que os consideram cassinos (normalmente os que no os conhecem), h aqueles que os consideram requisito fundamental para o desenvolvimento econmico (normalmente economistas excessivamente ortodoxos). E h uma enorme gama que fica entre estes dois plos do espectro. De uma certa maneira, so ambas as coisas:
Para um relato completo do desenvolvimento da teoria de finanas, ver Bernstein (1993) e tambm Sornette (2003). Esta seo baseada fundamentalmente no primeiro livro.
3

tm um papel fundamental no desenvolvimento econmico, ao permitir o financiamento de negcios e de governos, mas tambm tm uma certa dose de jogo envolvida, pois so o locus onde se ganha e se perde dinheiro cotidianamente4. Nos itens a seguir, vai-se examinar o relacionamento entre a economia e os mercados, se delinear brevemente o mercado brasileiro, e por fim se examinar a famosa Hiptese dos Mercados Eficientes, um prembulo antes de focar nas tentativas de modelar e prever os mercados, e tambm das teorias modernas de portflios.

2.3.1. Mercados Financeiros e a Economia O que move os mercados? H vrios fatores que influenciam as cotaes do mercado: o ambiente econmico, a bolsa de valores, as taxas de juros, entre outros. Estes so fatores de suma importncia, mas h outros, que no podem ser negligenciados assim, h que se levar em conta, por exemplo, os preos de produtos industrializados, como carros e mquinas. Estes, por sua vez, so determinados pelos preos de materiais bsicos, como ao e plsticos e as oscilaes dos preos desses materiais so portanto importantes para a determinao dos lucros das empresas, e conseqentemente, para os preos de suas aes. Assim, possvel dizer que de certo modo h um ciclo de realimentao dinmica, que ajuda a determinar os preos dos ativos no mercado. Contudo, essa observao no significa que os impactos so diretos, nem muito menos imediatos os efeitos muitas vezes levam meses para serem sentidos e exercerem impacto, com uma variedade enorme de lags e atrasos impossivelmente difceis de mensurar. H um considervel gap portanto entre os fatos econmicos e os dados de alta freqncia dos mercados (o preo a preo, ou tick por tick5). Portanto, tarefa bastante difcil montar modelos ab initio dos efeitos de quaisquer combinaes de variveis econmicas sobre os preos dos mercados
4

Atribui-se ao famoso economista John Maynard Keynes a seguinte frase: A sociedade normalmente considera que, para seu prprio bem, os jogos de cassino devem ser restritos a poucos. Pois bem, com os mercados financeiros deveria ser igual (apud Bass, 1999).

5 Um tick indica um negcio no mercado. Ele representa a combinao de oferta e demanda no mercado financeiro: se h mais oferta que demanda, o preo cai, logo ocorre um downtick, e vice-versa.

justamente porque to difcil mensurar a dinmica desses efeitos. Alm disso, devese levar em conta o efeito da psicologia dos investidores vrios trabalhos acadmicos tm sido publicados nesse campo, e costumeiramente os mercados financeiros operam com um comportamento tpico de manada, onde o sentimento geral sobre a direo dos preos pode ser muito mais importante que os fatores econmicos que os determinam6.

2.3.2. O Mercado Brasileiro O mercado financeiro no Brasil segue, em linhas gerais, os acontecimentos do mercado internacional. No aspecto regulatrio e institucional, o tempo entre os acontecimentos nas Bolsas do Primeiro Mundo e nas brasileiras tende a ser maior, mas essa distncia vem se encurtando nos ltimos anos. Em linhas gerais, as principais instituies do mercado financeiro brasileiro so7: Governo: o Banco Central do Brasil e a Comisso de Valores Mobilirios, que determinam o arcabouo jurdico-regulatrio do mercado. Bolsas: at alguns anos atrs, o mercado de aes brasileiro era bipolar: havia a Bovespa (Bolsa de Valores de So Paulo) e a BVRJ, sua equivalente carioca. At o fim dos anos 80, a bolsa do Rio de Janeiro predominava, at o advento do escndalo Naji Nahas, que iniciou um longo processo de declnio da mesma, at chegar aos dias de hoje, onde apenas a Bovespa tem relevncia. Existe ainda a BM&F (Bolsa de Mercadorias e Futuros), onde so negociados a maioria dos contratos derivativos no pas. Instituies Financeiras: de um modo geral, o mercado brasileiro tem trs tipos de players: corretoras de valores, bancos (tanto de atacado quanto de varejo), e fundos de investimento. Muitas vezes, empresas congregam em suas estruturas os trs tipos de instituio, mas de um modo geral possvel separar suas atividades e propsitos. Os fundos de investimento, em descrio simples, buscam aplicar rentavelmente o dinheiro captado de seus clientes, ganhando para isso taxas de
Para uma introduo a esses trabalhos de psicologia dos mercados, ver Shiller, R. Irrational Exuberance, Nova York: Broadway Books, 2001. Esse campo de estudos em finanas conhecido como Finanas Comportamentais (Behavioral Finance em ingls). Para detalhes e explicaes mais aprofundadas, alm de um histrico completo do desenvolvimento do mercado financeiro brasileiro, ver Fortuna (2002).
7 6

administrao e/ou performance. Os bancos, tanto de atacado quanto de varejo, captam dinheiro de clientes e tentam rentabiliz-lo, ficando com a diferena conseguida. J as corretoras so como que os intermedirios de toda a estrutura: recebem e executam ordens de operao, recebendo para isso uma remunerao pelo servio. A interao contnua e dinmica desses players, junto da atuao governamental, e do constante fluxo de informaes cotidianas, gera os movimentos de preos dos ativos negociados nos mercados (notadamente nas Bolsas, mas no s h, por exemplo, o importantssimo mercado interbancrio, onde os bancos negociam entre si).

2.3.3. A Hiptese dos Mercados Eficientes As tentativas de prever o mercado so praticamente to antigas quanto o prprio mercado. H mais de uma gerao, pelo menos, a questo da eficincia dos mercados tem sido um dos pontos de mais interesse na rea, e foco de intensa pesquisa. Ela tem sido debatida e testada basicamente na forma de duas teorias predominantes: a hiptese do caminho aleatrio8 e a Hiptese dos Mercados Eficientes9. Tendo isto em vista, examinar esta questo de fundamental importncia para o trabalho aqui apresentado, levantando as principais descobertas e argumentos tericos, afinal, se sabido a priori que no possvel prever os mercados, todo o trabalho de faz-lo cai por terra. Por mais de quarenta anos, pesquisadores tm deliberado acerca da natureza preditiva dos mercados financeiros, e proposto teorias para explicar os mecanismos subjacentes que determinam a dinmica dos preos dos ativos financeiros. A pesquisa normalmente se foca na questo da previsibilidade dos retornos dos ativos, com a motivao vindo de um interesse notadamente econmico em entender como flutuaes na economia influenciam os mercados financeiros e tambm com o

Em ingls, conhecida como random walk. Formalmente introduzida por Paul Samuelson em 1965 no artigo Proof that properly antecipated prices fluctuate randomly in Industrial Management Review 6, pp. 41-49.

Em ingls, referida como Efficient Market Hypothesis, ou simplesmente EMH. Formalmente introduzida por Eugene Fama e colaboradores em 1969, no artigo The adjustment of stock prices to new information in International Economic Review 10, pp. 1-21. Para uma viso completa dos argumentos tericos e empricos em favor da hiptese, vide Malkiel (2003).

10

interesse prtico de se conseguir maneiras de melhorar os retornos obtidos com investimentos. Mesmo aps esse perodo de intensos debates e discusses, no possvel dizer que h consenso entre os acadmicos, sobre o que explica o comportamento dos preos dos ativos financeiros. A viso dominante (pode-se dizer ortodoxa), resumida em duas teorias inter-relacionadas, quais sejam, a Hiptese dos Mercados Eficientes, e a teoria do caminho aleatrio. Esta assume que os preos so completamente estocsticos por natureza, enquanto aquela implica na ausncia de oportunidades de lucro em mercados perfeitamente eficientes. Em essncia, ambas as teorias implicam que, em mercados funcionando bem, os preos so inerentemente imprevisveis e refletem plenamente toda a informao disponvel no momento. A verso mais prtica (mas tambm mais fraca) da hiptese diz que os preos refletem toda a informao disponvel, at o ponto em que o lucro marginal de se operar usando uma informao igual ao custo marginal de obteno daquela informao. Isso quer dizer que em um mercado racional, onde a informao livremente disponvel e corretamente interpretada, os preos no deveriam se desviar da informao fundamental sobre a economia e o mercado. Nos ltimos dez anos, contudo, argumentos tericos e pesquisas empricas tm questionado seriamente ambas teorias, embora no haja, ainda, concordncia ampla acerca da validade (ou no) das mesmas10.

2.4. Modelagem e Previso Dado que existe algum grau de evidncia de que os mercados financeiros so, at certo ponto, previsveis, quaisquer desvios do modelo de caminho aleatrio que os retornos de ativos apresentem podem fornecer a base terica necessria para a construo de expectativas sobre esses retornos no futuro. Fazendo esta hiptese, as estimativas ingnuas, baseadas puramente em estatsticas do passado, podem ser substitudas por estimativas mais precisas, condicionadas mais fortemente nos dados
Para um apanhado de tais argumentos, vide Shadbolt e Taylor (Eds.) (2003), pp. 24-33, e Campbell et. al (1997) para uma perspectiva mais aprofundada dos testes economtricos usados para provar (ou no) a Hiptese dos Mercados Eficientes. Para uma perspectiva de teoria do caos da questo que tenta provar que os mercados so previsveis, vide Sornette (2003).
10

11

recentes ou em conjuntos de dados fundamentais, que influenciem decisivamente tais retornos. Assim, expectativas no condicionadas dos retornos e riscos futuros so substitudas por modelos de previso condicionados a um determinado conjunto de variveis (o que implica tomar uma perspectiva bayesiana, por assim dizer, do problema de previso toda a previso condicionada a um determinado conjunto de informaes que se opta por usar). Uma enorme variedade de tcnicas de modelagem e previso podem ser aplicadas tarefa de determinar a dinmica futura dos retornos de ativos. A natureza altamente estocstica desses retornos, e o pequeno entendimento da dinmica que guia os mesmos, levou ao desenvolvimento de tcnicas cada vez mais complexas, que tentam capturar as influncias no-lineares e variantes no tempo que podem estar presentes nas sries temporais de ativos financeiros. Inicialmente, modelos lineares de previso podem se provar uma ferramenta poderosa para a compreenso dos retornos de ativos. A gama de modelos disposio do estudioso vai desde simples mdias mveis, at modelos mais complexos, como tcnicas ARIMA, mtodos de regresso, cointegrao e modelos de correo de erro, at tcnicas no estado-da-arte, como modelos de espao de estado11. Cada um desses modelos tem seus pontos fortes e fracos, tendo sido aplicados em maior ou menor grau ao problema de modelagem do mercado. A evoluo natural dos modelos lineares a aplicao de modelos no-lineares. Novamente, a gama de modelos vasta, comeando nos modelos mais simples de regresso no-linear, e avanando por toda uma srie de tcnicas de fronteira, como teoria do caos e teoria de catstrofes,12 redes neurais, algoritmos genticos13, lgica fuzzy, modelos de simulao onde mercados virtuais so simulados computacionalmente na tentativa de capturar comportamentos do mercado real14, e tambm misturas, combinaes e comits de modelos.

Para um apanhado geral desses modelos, com indicao de farta bibliografia, e delineamento de aplicaes em modelagem e previso do mercado financeiro, ver Shadbolt e Taylor (Eds.) (2003), cap. 9, pp. 69-76.
12 13 14

11

Para uma aplicao de teoria do caos e teoria de catstrofes previso do mercado, vide Sornette (2003). Vide captulo 5 para detalhes.

Para detalhes de como isso feito, e resultados preliminares, vide Shadbolt e Taylor (Eds.) (2003), cap. 26, pp.247-258.

12

Alm das tcnicas de cunho quantitativo (basicamente de natureza estatstica, economtrica), existem duas outras perspectivas consagradas para a tentativa de prever os preos de ativos. So elas as chamadas anlise fundamentalista e anlise tcnica. A primeira, tambm conhecida pelo nome valuation, parte do princpio de que os preos de aes refletem os fluxos de lucros projetados de uma empresa, descontados a uma taxa apropriada. Assim, ao analisar e projetar os balanos futuros da empresa, teoricamente seria possvel determinar o valor justo das aes de uma empresa, e assim determinar se esto sub ou supervalorizadas15. J a segunda tcnica, tambm conhecida como anlise grfica, parte do princpio de que os preos refletem os fluxos de compradores e vendedores no mercado, e assim possvel inferir tendncias a partir da observao de grficos de preos das aes. De um modo geral, possvel dizer que o campo de estudo da modelagem e previso dos mercados financeiros ainda um campo aberto. No h paradigmas estabelecidos, e dificilmente possvel afirmar com alguma dose de certeza que h uma maneira tima de prever o comportamento futuro dos preos. Alm disso, dado o dinamismo do mercado, o modelo quasi-timo de hoje pode ser intil amanh. Nesse contexto, talvez seja til se referir, dada a discusso da seo 2.3.3, verso de Lo e MacKinlay para a Hiptese dos Mercados Eficientes: no possvel obter, sistematicamente, retornos em excesso do mercado, sem algum tipo de vantagem competitiva (por exemplo, tecnologia superior, informao proprietria, mtodos avanados), sobre outros participantes do mercado (apud Shadbolt e Taylor (Eds.), 2003). Em resumo, lucros acima do mercado so a remunerao marginal do esforo intelectual de desenvolvimento dos modelos e tcnicas que os geraram. 2.5. Moderna Teoria de Portflio16 Nesta seo apresenta-se brevemente a teoria moderna de carteiras de investimento, descrevendo-se: os fundamentos estatsticos para a formao de
A tcnica de anlise fundamentalista foi desenvolvida pelo americano Benjamin Graham. Seu texto mais famoso se chama Security Analysis. Os resultados do investidor Warren Buffet (que foi aluno de Graham), o segundo homem mais rico do mundo, costumam ser o melhor marketing dos que advogam seu uso. Vale dizer que o autor trabalhou, durante seis meses, como analista de aes, fazendo justamente anlise de balano e valuation de empresas cotadas na Bovespa.
16 15

A seo 2.5 baseada em Gruber et al (2003), caps. 4-16, e Lazo Lazo (2000), cap. 2.

13

carteiras (proposta inicialmente por Harry Markowitz em 1959), os diferentes modelos da derivados, propostos para descrever o comportamento do mercado (como o Capital Asset Pricing Model e o Arbitrage Pricing Theory).

2.5.1. Markowitz e a Mdia-Varincia Harry Markowitz formula a teoria de investimento como um problema de maximizao de utilidade do investidor, sob condies de incerteza, a partir das preferncias descritas por Von Neumann e Morgenstern. Inicialmente, foi estudado apenas o caso especial em que as preferncias do investidor podem ser definidas pelos dois primeiros momentos da distribuio do retorno de uma carteira em um nico perodo, constituindo o critrio de Mdia-Varincia. Markowitz reconheceu o retorno como uma varivel aleatria com distribuio normal, ou seja, completamente descrita pelos seus dois primeiros momentos: mdia e varincia. Supe-se que existe apenas um intervalo de tempo, ou seja, o mundo uniperidico, que a estrutura de covarincias (matriz de Varincias-Covarincias) constante e que o investidor avesso ao risco. Pode-se definir que um ativo i dominante em relao a um ativo j , pelo critrio de Mdia-Varincia, se:

E[ Ri ] E[ R j ] Var[ Ri ] Var[ R j ]

(2.1)

onde E[R] e Var[R] so o valor esperado e a varincia da varivel R respectivamente; logo, um ativo i dominante ou prefervel a um ativo j se a expectativa de retorno (mdia) maior (ou igual) que a expectativa de retorno j e a varincia menor (ou igual) que a varincia de j. Note-se que a varincia o indicador de risco. Para qualquer par de ativos cujas mdias e varincias guardem relaes diferentes das contempladas na equao 2.1, o critrio de MdiaVarincia concede-lhes a condio de indiferentes. O critrio de MdiaVarincia uma tima regra de deciso quando se assume uma distribuio normal para os retornos da carteira. Assim, o critrio de MdiaVarincia emprega a mdia dos retornos passados para estimar o retorno futuro de um ativo e o risco representado pela varincia. Usando a notao de somatrio, temos que o valor esperado, dados M retornos com

14

igual probabilidade para um ativo i, expresso pela equao 2.2. Para resultados com probabilidades diferentes, sendo Pij a probabilidade de retorno j de um ativo i, o valor esperado representado pela equao 2.3. Ri =
j =1 M

Rij M

(2.2) (2.3)

Ri = Pij Rij
j =1

A varincia usada como uma medida de risco, pois representa o grau de disperso dos retornos. A equao 2.4 mostra a varincia dos retornos do ativo i para retornos com igual probabilidade e a equao 2.5 mostra a varincia se as observaes no tiveram igual probabilidade. ( Rij Ri ) 2 = M 1 j =1
2 i M

(2.4)

i2 = Pij ( Rij Ri ) 2
j =1

(2.5)

Como o investidor tem muitas opes disponveis e no s a escolha entre um ou outro ativo, ele pode investir apenas parte de seu dinheiro em cada ativo. Na construo de carteiras considera-se a combinao de ativos, assim, o risco da combinao de ativos diferente do risco individual ou da mdia do risco individual de cada ativo. Portanto, a varincia de uma combinao de dois ou mais ativos pode ser menor do que a varincia de qualquer um dos ativos. O retorno de uma carteira de ativos um somatrio dos pesos vezes o retorno de cada ativo. O peso aplicado para cada retorno a frao da carteira investida nesse ativo. Se Rpj o j-simo retorno na carteira e Xi a frao do fundos investidos no isimo ativo, temos (equao 2.6).
R pj = X i Rij
i =1 N

(2.6)

A expectativa de retorno tambm uma mdia ponderada da expectativa de retorno dos ativos individuais e denomina-se Retorno Mdio (equao 2.7):
RP = X i Ri
i =1 N

(2.7)

15

O risco de uma carteira estimado pela varincia da carteira, designada por que o valor esperado do quadrado dos desvios do retorno da carteira, em relao mdia de retorno da carteira (equao 2.8); para o caso de uma carteira com dois ativos a varincia dada pela equao 2.9.
2 P = E ( RP RP ) 2

(2.8) (2.9)

2 2 P = X 12 12 + X 22 2 + 2 X 1 X 2 12

Onde a covarincia que mede o comportamento dos retornos dos ativos ao moverem-se juntos. Para muitos propsitos utiliza-se o coeficiente de correlao, definido como a covarincia dividida pelo produto do desvio padro de cada ativo (equao 2.10), que varia no intervalo de 1 a +1.

ij =

ij i j

(2.10)

Pode-se generalizar a equao da varincia para mais de dois ativos considerando a covarincia (equao 2.11) ou o coeficiente de correlao (equao 2.12):
2 P = X i2 i2 + X i X j ij i =1 i =1 j =1 j i N N N N N

(2.11)

2 P = X i2 i2 + X i X j i j ij i =1 i =1 j =1 j i

(2.12)

Para procurar uma carteira eficiente devem ser observadas as caractersticas de risco e retorno das combinaes de ativos, com a ajuda de uma interpretao geomtrica das mesmas. Esta geometria usada denominada curva da fronteira eficiente, que representa a relao risco-retorno de uma carteira, para cada combinao de possveis pesos de cada ativo. Para construir tal curva, o valor do coeficiente de correlao de suma importncia, como visto na equao 2.12. O valor do coeficiente de correlao varia entre 1 a +1. Assim, um valor de +1 indica que os ativos movimentam-se em unssono, indicando que o risco e o retorno da carteira so uma combinao linear do risco e retorno de cada ativo individual que a componha, isto , que para maior retorno se tem maior risco. Neste caso de perfeita correlao entre os ativos da carteira, o retorno e o risco da carteira nada mais so do que a mdia ponderada do retorno e risco de cada ativo individual, ou seja, no h benefcios de diversificao.

16

Por outro lado, um valor do coeficiente de correlao de 1 indica que os comportamentos dos ativos so extremadamente opostos. Neste caso o risco da carteira sempre pequeno em comparao com o caso anterior onde o valor da correlao foi +1 (para uma carteira de dois ativos possvel obter risco zero). Na prtica, no existem ativos cuja correlao perfeitamente positiva ou negativa. Na Figura 1 a seguir so apresentadas algumas curvas de fronteira eficiente, para diferentes valores do coeficiente de correlao.

C
14.0

C
=0 =0,5 =-1

Rp

Rp

8.0

=1

3.0

6.0

Figura 1 Curvas de Fronteira Eficiente para vrias Correlaes (Lazo Lazo, 2000)

Figura 2 Fronteira Eficiente de uma Carteira (Gruber et. al, 2003)

Na Figura 2 mostra-se uma curva de fronteira eficiente de uma carteira formada pela combinao de ativos, considerando que o investidor prefere o maior retorno com o menor risco possvel. Claramente pode-se observar que a carteira eficiente dever estar em algum ponto da parte superior esquerda da curva de fronteira eficiente, indicada pelos pontos S-C; esta parte da curva a que apresenta os maiores retornos com menor risco (Gruber et al., 2003). J para o investidor que prefere qualquer retorno com o menor risco possvel, isto , o investidor deseja fundamentalmente minimizar o risco, esperando s algum retorno, a carteira eficiente est no ponto S da fronteira eficiente. Dado que o investidor, ao investir em uma carteira, procura ter um retorno maior que o obtido por um investimento em renda fixa, na formao da fronteira eficiente introduz-se o ativo livre de risco para indicar a procura de retornos superiores aos de renda fixa. RF o retorno do ativo livre de risco (renda fixa), onde o desvio padro destes fundos

17

zero, ou seja, o risco zero. Logo, assume-se que, para a carteira A, a frao original de fundos que o investidor coloca na carteira X, e (1-X) a frao de fundos colocados no ativo livre de risco. A expectativa de retorno e o risco da combinao so dados pelas equaes 2.13 e 2.14, respectivamente:

RC = (1 X ) RF + X R A
2 2 C = [(1 X ) 2 F + X 2 A + 2 X (1 X ) A F AF ] 1/ 2

(2.13) (2.14)

Mas, como, por definio, F = 0 (risco zero ativo livre de risco), tem-se as equaes 2.15 e 2.16):
2 c = (X 2 A ) 1/ 2

= X A

(2.15) (2.16)

X=

C A

Substituindo na expresso para a expectativa de retorno da combinao, tem-se a equao 2.17 que representa uma linha reta, onde a tendncia da linha (RA RF)/A e a interseo com o eixo de retorno RF.
R RF R C = RF + A A C

(2.17)

Esta linha reta pode ser deslocada at o ponto de tangncia (B), assim, tem-se o maior retorno para algum risco, como mostra a Figura 3 a seguir.

Figura 3 Combinao de Ativos de menor risco em uma carteira (Gruber et al., 2003 reelaborado pelo autor)

18

Para o caso da figura anterior, a carteira sobre o raio RF-B preferida a todas as outras carteiras, pelo que se denomina Carteira Eficiente, e a fronteira eficiente a longitude inteira do raio estendido desde RF at B. Para o clculo deste ponto suficiente maximizar a funo (equao 2.18):
N

X (R
i =1 i

RF )
1

N N N X 2 2 + X X i i i j ij i =1 i =1 j =1 j i

(2.18)
2

Para o investidor que deseja obter um retorno de modo que o risco seja mnimo, o objetivo minimizar a equao do risco total da carteira (ver equaes 2.11 ou 2.12), dado como restrio um determinado nvel de retorno esperado (esse um problema tpico de Pesquisa Operacional, otimizao no-linear).

2.5.2. Sharpe e o CAPM O Capital Asset Pricing Model (CAPM) proposto por William Sharpe em 1964, baseia-se no paradigma da Mdia-Varincia originado por Markowitz. Partindo da equao do modelo Diagonal, equao 2.19: ri = i + i rM + ei seguinte relao (equao 2.20):
2 i2 = i2 M + e2
i

(2.19)

e aplicando o operador varincia nos dois lados da equao acima, obtm-se a

(2.20)

A equao 2.20 mostra que o risco total do ativo, ou sua varincia, composto por duas parcelas. A primeira delas, o produto do quadrado do beta (uma definio de beta ser dada mais adiante) e a varincia do retorno de mercado, dita risco sistemtico, de mercado ou no diversificvel, reflete a correlao entre os retornos do ativo e do mercado; portanto, no pode ser diversificada. A segunda parcela, varincia de resduo, representa todos os efeitos dos demais fatores alm do retorno de mercado. Nota-se que este risco, dentro de uma carteira, pode ser cancelado por movimento de direo contrria de outro ativo. Denomina-se risco prprio, no

19

sistemtico ou diversificvel. Portanto, o risco total de qualquer ativo a soma do risco de mercado com o risco prprio. Como o beta o nico fator caracterstico do ativo na parcela do risco sistemtico (a varincia do retorno de mercado igual para todos os ativos), este pode ser encarado como uma medida do risco sistemtico do ativo. Assim, a maior mensagem do CAPM que apenas o risco no-diversificvel recompensado em termos de excesso de retorno, j que o risco prprio pode ser diversificvel dentro de uma carteira. Alm das hipteses de Markowitz, o CAPM aceita outras relativas ao comportamento do consumidor e ao funcionamento e competitividade do mercado: Investidores so racionais e maximizadores da utilidade da riqueza final; Investidores so avessos ao risco e diversificam seus portflios segundo o critrio Mdia-Varincia; Existe uma taxa livre de risco, rf , igual para tomadores e investidores em qualquer quantidade de capital; No existem taxas nem custos de transao e o custo de falncia desconsiderado; A informao est gratuitamente disposio de todos os investidores; Todos os ativos so divisveis e tm liquidez; Vendas a descoberto so ilimitadas; A quantidade de cada ativo no mercado pr-fixada; O mercado competitivo de forma que os investidores no acreditam que possam influenciar as cotaes, ou seja, as decises de um investidor qualquer no influenciam os preos. Sob todas estas hipteses, o CAPM indica o retorno que o investidor deveria esperar de um ativo dado seu risco no-diversificvel (beta). Assim, sugere-se uma relao de funcionalidade linear entre o retorno esperado e o beta (equao. 2.21), onde o coeficiente angular o prmio de risco. ri = rF + i (rM rF ) (2.21)

Esta relao para os ativos do mercado vista, graficamente, na Linha do Mercado de Capitais (LMC). A interseo entre a LMC e o eixo dos retornos esperados o retorno da renda fixa, e sua inclinao a diferena entre o retorno

20

esperado do mercado e da renda fixa. Os ativos em equilbrio, segundo a CAPM, esto na LMC. Ativos que estiverem abaixo da linha esto desvalorizados; aqueles acima, supervalorizados

2.5.3. Arbitrage Pricing Theory Segundo o Arbitrage Pricing Theory, APT, toda a estrutura do retorno, suas componentes sistemtica e particular, definida a priori. Isto possvel atravs de uma estrutura linear de fatores exgenos. Propriedade fundamental e natural do APT sua multiperiodicidade. O APT um dos resultados imediatos da teoria de arbitragem e baseado no Teorema Fundamental da Formao de Preos de Ativos. O teorema assegura a equivalncia das trs afirmativas a seguir: (i) ausncia de arbitragem; (ii) existncia de uma regra de formao de preos linear positiva; (iii) existncia de uma demanda tima para qualquer agente racional. A elaborao terica do APT uma construo razoavelmente complexa17. Envolve a aplicao de conceitos de no-arbitragem, e algumas hipteses sobre a distribuio dos fatores que compe os preos dos ativos. possvel resumir o edifcio terico da teoria nas equaes 2.22 e 2.23: ri = rF + i1 ( 1 rF ) + ... + iJ ( J rF ) (2.22) (2.23)

ij =

cov(ri , j ) var( j )

A equao 2.22 a generalizao multifatorial do modelo do CAPM. Em termos simples, o que ela faz atribuir a J fatores diferentes o retorno de um ativo, ao invs de apenas um fator, como fazia Sharpe. A equao 2.23 do mesmo modo, explica como se compe cada um dos J betas da carteira. Como o APT uma generalizao do CAPM, ele guarda relao com a eficincia segundo o critrio de Mdia-Varincia: O APT no faz nenhuma suposio acerca da distribuio emprica dos retornos, enquanto o CAPM impe normalidade;

17 Para um desenvolvimento completo e detalhado da teoria por trs do APT, ver Gruber et al. (2003), cap. 16, pp. 364-394. Esta seo baseada nesta referncia.

21

O APT no faz nenhuma hiptese forte sobre a funo utilidade do indivduo (apenas prev no-saciedade e averso ao risco); O APT permite que o equilbrio dos retornos dos ativos dependa de vrios fatores, no apenas de um como o retorno do mercado no CAPM; O APT fornece uma estrutura de preos relativos de qualquer subconjunto de ativos. Assim, no preciso utilizar todo o universo de ativos para testar a teoria; No h regra especial para a carteira de mercado no APT. J no CAPM exige-se que ela seja eficiente; O APT facilmente estendido para uma estrutura multiperidica; o CAPM no. A mensagem central que tanto a construo terica, quanto os testes empricos apontam o APT como o melhor modelo de formao de preos disponvel18. 2.6. Risco19 Risco um dos conceitos mais fundamentais da histria da humanidade. Est envolvido em literalmente todos os empreendimentos humanos, seja a descoberta das Amricas, as Cruzadas ou a fundao da USP. Desde a Idade Mdia, seu estudo tem gerado profundas implicaes para o desenvolvimento dos mercados, vindo, mais tarde, a se tornar talvez o seu paradigma maior20. O Risco pode ser definido como a volatilidade de resultados inesperados21, normalmente relacionada ao valor de ativos ou passivos de interesse. As perdas podem ocorrer pela combinao de dois fatores: volatilidade da varivel financeiraobjeto e exposio a essa fonte de risco. Embora as empresas no tenham controle sobre a volatilidade das variveis financeiras, elas podem ajustar suas exposies a tais riscos, atravs de derivativos, por exemplo. O valor do risco captura o efeito combinado da volatilidade com a exposio aos riscos financeiros.

18 19

Para testes economtricos do modelo, ver Campbell et al. (1997).

Esta seo baseada em Jorion (1997), Gruber et al. (2003), Lazo Lazo (2000) e para os detalhes do modelo GARCH, em The Mathworks (1999).
20

Para uma abordagem geral do estudo do risco, incluindo o histrico do seu desenvolvimento, ver Bernstein (1998). H uma edio brasileira deste livro, chamada Desafio aos Deuses. Definio de Jorion (1997).

21

22

A medida de risco no constante ao longo do tempo. Alm disso, a variao do risco no decorrer do tempo poderia explicar o fato da distribuio emprica dos retornos no se ajustar, de maneira exata, a uma distribuio normal. Em relao ao modelo normal, a distribuio real com freqncia contm mais observaes na parte central e nas caudas. Essas caudas grossas podem ser explicadas atravs de dois pontos de vista alternativos: o primeiro argumenta que a distribuio real estacionria e que realmente contm caudas grossas, caso em que uma aproximao normal nitidamente inadequada; o segundo, diz que a distribuio realmente muda com o tempo. Por conseguinte, em perodos de turbulncia, um modelo estacionrio poderia considerar outliers as grandes observaes, quando, de fato, so provenientes de uma distribuio com disperso temporria menor. Na prtica, existe certa dose de verdade em ambas as explicaes. Por conta disso, a previso da volatilidade particularmente frutfera para o gerenciamento de risco. Nesta seo atenta-se para as abordagens tradicionais baseadas na modelagem de sries temporais "paramtricas". A estimativa da volatilidade acabou tendendo aplicao de modelos que atribuem maior peso s informaes mais recentes. O primeiro deles foi o heterocedstico autoregressivo generalizado (Generalized Autoregressive Conditional Heteroskedastic ou simplesmente GARCH), proposto por Engle e Bollerslev em 1982. O modelo GARCH pressupe que a varincia dos retornos siga um processo previsvel. A varincia condicional depende da inovao mais recente e, tambm da varincia condicional anterior. Define-se ht como a varincia condicional, usando-se as informaes at o instante t-1, e rt-1 como o retorno do dia anterior. O modelo mais simples desse tipo o processo GARCH (1,1):
ht = 0 + 1 rt 21 + ht 1

(2.24)

A mdia, ou varincia incondicional, encontrada estabelecendo-se:


E[ rt 21 ] = ht = ht 1 = h

(2.25)

Resolvendo para h, encontra-se:


h=

0 1 1

(2.26)

23

Para que esse modelo seja estacionrio, a soma dos parmetros deve ser menor que um. Essa soma tambm denominada persistncia. A beleza desta especificao est no fato de fornecer um modelo parcimonioso, com poucos parmetros, que parece adequar-se muito bem aos dados. Os modelos GARCH tornaram-se a base das anlises de sries temporais dos mercados financeiros, que demonstram, sistematicamente, perodos de "aglutinao" de volatilidade. Literalmente centenas de trabalhos aplicaram os modelos GARCH a retornos de aes, de taxas de juro e de moedas. Econometristas tambm criaram muitas variantes para o modelo GARCH22, com a maioria apresentando apenas melhorias marginais em relao ao original. A desvantagem dos modelos GARCH sua no-linearidade. Os parmetros devem ser estimados pela maximizao da funo de verossimilhana, que envolve otimizao numrica. Vale dizer que o modelo tambm pode ser usado para calcular volatilidade sobre vrios horizontes. Por razes de simplicidade e por estar fora do escopo deste trabalho, no se vai estender o modelo aqui.

2.7. Mtricas de Desempenho Mensurar desempenho vem da necessidade de comparao entre os fundos para que se possa identificar os superiores, segundo a varivel de desempenho preestabelecida, e entre estes e outras opes de investimento. A literatura23 apresenta alguns parmetros para medir o desempenho das carteiras, ressalte-se que a qualidade destes parmetros est sob julgamento do critrio Mdia-Varincia. A seguir algumas destas medidas de desempenho das carteiras: Por Retorno e Risco: para medir o desempenho da carteira empregam-se duas dimenses: uma para mensurar o retorno - retorno mdio do investimento - e a outra para medir o ndice de risco associado com este retorno - varincia. Para comparar o desempenho de duas carteiras, comparam-se o retorno mdio e o risco com o retorno
22 23

Para um apanhado geral desses modelos, ver Campbell et al. (1997).

As referncias bsicas so Gruber et al. (2003) e Lazo Lazo (2000). Existem ainda outros ndices, como o de Modigliani e o de Sortino. Contudo, sua aplicao bastante restrita, e portanto optou-se por no inclu-los aqui.

24

mdio e o risco de um ndice geral (o IBOVESPA no caso brasileiro por exemplo) ou outra carteira formada pelos ativos do mercado (embora esta carteira seja sempre uma proxy). A equao 2.27 representa o retorno acumulado do fundo i no perodo T, e a equao 2.28 representa o retorno mdio do fundo i no perodo.
riT = (1 + rit ) 1
i =1 T

(2.27) (2.28)

r iT = (1 + riT )

1 T

Varincia Total versus o Beta como ndice de Risco: para comparar o desempenho de duas carteiras usando o Beta como ndice de risco, este beta est definido pela equao 2.29):
Cov ( Ri , Rm )
2 m

i =

(2.29)

Onde Ri e Rm so os retornos do ativo i e da carteira de mercado, respectivamente;


2 m a varincia da carteira de mercado, a covarincia o fator de risco que

distingue um ativo de menor risco de outro e mede o movimento do retorno i com o mercado. ndice de Sharpe: proposto por Sharpe, este ndice o coeficiente de variao do excesso de retorno durante o perodo T. O ndice de Sharpe est representado pela equao 2.30: IS = ri r f

(2.30)

Onde ri retorno do ativo ou carteira i; rf o retorno do ativo livre de risco e i o desvio padro do retorno do ativo ou carteira i. A medida de Sharpe extenso direta do critrio de mdia-varincia, por tanto, suas hipteses so as mesmas deste critrio. ndice de Sharpe Generalizado: Sharpe props a generalizao de seu ndice para o ambiente multidimensional dos modelos multifatoriais como o APT. No ndice de Sharpe generalizado, o excesso de retorno, di, representa a diferena entre o retorno do fundo e o retorno de um ativo similar segundo um modelo de J fatores (equao 2.31): 25

~ ~ ~ d i = ~ i1 ( F1 ~f ) i 2 ( F2 ~f ) ... iJ ( FJ ~f ) ri r r r Define-se, o ndice de Sharpe generalizado como (equao 2.32): ISg =

(2.31)

di

(2.32)
i

Gruber et al. (2003) afirmam que, se a estimao das sensibilidades do portflio padro (benchmark) feita por anlise de sries temporais de um modelo de mltiplos fatores, ento o ndice Sharpe Generalizado torna-se a Taxa de Informao. Uma vez fixado o conjunto de fatores do modelo, o alfa e o ndice de Sharpe generalizado identificam as mesmas carteiras como aquelas de desempenho superior. ndice de Treynor: Esta medida similar ao ndice de Sharpe, no sentido de medir o excesso de retorno por unidade de risco. No entanto Sharpe utiliza o desvio padro do retorno da carteira como ndice de risco; Treynor utiliza o beta caracterstico da carteira, i. Define-se, o ndice de Treynor como (equao 2.33): IT = ri r f

(2.33)

Treynor aceita o CAPM e suas hipteses, ao empregar o beta como medida de risco.

26

3. REDES NEURAIS1
Qualquer tecnologia suficientemente avanada indistinguvel da mgica.
Arthur C. Clarke2

3.1. Introduo

O trabalho em redes neurais artificiais, normalmente chamadas apenas de redes neurais, tem sido motivado desde o comeo pelo reconhecimento de que o crebro processa informaes de um modo inteiramente diferente do computador digital convencional. O crebro um computador (sistema de processamento de informao) altamente complexo, no-linear e paralelo. Ele tem a capacidade de organizar seus constituintes estruturais, chamados de neurnios, de forma a realizar determinados processamentos (tarefas como reconhecimento de padres, percepo, controle motor) muito mais rapidamente que o mais rpido computador digital existente. A viso humana um exemplo interessante: a funo do sistema visual fornecer uma representao do ambiente nossa volta, e fornecer a informao necessria para interagir com este ambiente. Mais especificamente, o crebro realiza rotineiramente tarefas de reconhecimento perceptivo (reconhecer um rosto familiar em uma cena no-familiar por exemplo) em aproximadamente 100-200 ms, ao passo que tarefas de complexidade muito menor podem levar dias para serem executadas em um computador convencional. Como possvel que o crebro humano faa isso? No momento do nascimento, um crebro tem uma grande estrutura e a habilidade de desenvolver suas prprias regras atravs daquilo que comumente denominado de experincia. Na verdade, a experincia vai sendo acumulada com o tempo, sendo que o mais dramtico desenvolvimento (i.e., por ligaes fsicas) do crebro humano acontece durante os dois primeiros anos de vida; de todo modo, o desenvolvimento continua por muito mais tempo alm disso.

O presente captulo baseado em grande medida em Haykin (2001), cap. 1, pp.27-70. Apud Bass (2000).

27

Um neurnio em desenvolvimento sinnimo de um crebro plstico: a plasticidade permite que o sistema nervoso em desenvolvimento se adapte ao seu meio ambiente. Assim como o processamento de informao do crebro humano, tambm ela o com relao s redes neurais construdas com neurnios artificiais. Na sua forma mais geral, uma rede neural uma mquina projetada para modelar a maneira como o crebro realiza uma tarefa particular ou funo de interesse; a rede normalmente implementada usando-se componentes eletrnicos ou simulada por programao em um computador digital. Para alcanarem bom desempenho, as redes neurais empregam uma interligao macia de clulas computacionais simples denominadas neurnios, ou unidades de processamento. possvel ento dar a seguinte definio de uma rede neural, vista como uma mquina adaptativa3: Uma rede neural um processador paralelo maciamente distribudo, constitudo de unidades de processamento simples. Assemelha-se ao crebro em dois pontos: (i) o conhecimento do ambiente externo incorporado rede via um processo de aprendizagem e (ii) foras de conexo entre os neurnios so usadas para armazenar esse conhecimento. O mtodo utilizado para realizar o processo de aprendizagem chamado de algoritmo de aprendizagem, cuja funo modificar as foras de conexo (tambm chamadas de pesos sinpticos) da rede de forma ordenada para alcanar um determinado objetivo desejado. A modificao dos pesos sinpticos o procedimento tradicional para o projeto de redes neurais. Entretanto, possvel tambm para uma rede neural modificar sua prpria topologia, o que motivado pelo fato de os neurnios no crebro humano poderem morrer e novas conexes poderem nascer4. evidente que as redes neurais extraem seu poder computacional, primeiro, de sua estrutura paralela maciamente distribuda e segundo, de sua habilidade de aprender e portanto de generalizar. A generalizao se refere ao fato de a rede neural produzir sadas adequadas para entradas que no estavam presentes durante o treinamento (aprendizagem). Estas duas capacidades de processamento de informao tornam possvel para as redes neurais resolver problemas complexos de
3

Definio adaptada de Haykin (2001), que por sua vez adaptada de Aleksander e Morton (1990). Essa a distino bsica entre treinamento supervisionado e no-supervisionado, conforme se ver adiante.

28

grande escala, que so normalmente intratveis por mtodos mais tradicionais. Na prtica, contudo, as redes neurais no so capazes de fornecer solues trabalhando individualmente. Em vez disso, elas precisam ser integradas em uma abordagem consistente de engenharia: um problema complexo de interesse decomposto em tarefas relativamente simples, e atribui-se s redes neurais as tarefas que coincidem com suas capacidades inerentes5. O uso de redes neurais oferece as seguintes propriedades teis:

No-linearidade: um neurnio artificial pode ser linear ou no linear. Uma rede neural, constituda por conexes de neurnios no-lineares ela mesma no-linear. Alm disso, a no-linearidade de um tipo especial, no sentido de ela ser distribuda por toda a rede. Esta uma propriedade muito importante, particularmente se o mecanismo responsvel pela gerao do sinal de entrada for inerentemente nolinear6. Mapeamento de Entrada-Sada: um paradigma popular de aprendizagem chamado aprendizagem com professor ou aprendizagem supervisionada envolve a modificao dos pesos sinpticos de uma rede neural pela aplicao de um conjunto de amostras de treinamento rotuladas ou exemplos da tarefa. Cada exemplo consiste de um sinal de entrada nico e de uma resposta desejada correspondente. Apresentase para a rede um exemplo escolhido ao acaso do conjunto, e os pesos sinpticos (parmetros livres) da rede so modificados para minimizar a diferena entre a resposta desejada e a resposta real da rede, produzida pelo sinal de entrada, de acordo com um critrio estatstico apropriado. O treinamento da rede reproduzido para muitos exemplos do conjunto, at que a rede alcance um estado estvel onde no haja mais modificaes significativas nos pesos sinpticos. Os exemplos de treinamento previamente aplicados podem ser reaplicados durante a sesso de treinamento, mas em ordem diferente. Assim, a rede aprende dos exemplos ao construir um mapeamento entrada-sada para o problema considerado. H uma analogia prxima
5

Como ficar claro ao longo deste trabalho, justamente esta a perspectiva aqui adotada. As redes neurais sero usadas para resolver apenas uma parte do problema de gesto de portflios, qual seja, a da previso dos retornos dos ativos. Embora, como ficar claro no captulo 5, elas sejam capazes de resolver outras partes (como a da otimizao da carteira), no o que se far no presente trabalho.

possvel dizer que as sries temporais de retornos de ativos financeiros so inerentemente no-lineares. Para uma formulao interessante do problema, vide Sornette (2003).

29

entre o processo de mapeamento entrada-sada e o conceito de inferncia estatstica no-paramtrica. Adaptabilidade: as redes neurais tm uma capacidade inata de adaptar seus pesos sinpticos a modificaes do meio ambiente. Em particular, uma rede neural treinada para operar em um ambiente especfico pode ser facilmente retreinada para lidar com pequenas modificaes nas condies operativas do meio ambiente. Alm disso, quando est em um ambiente no-estacionrio (i.e.,onde as estatsticas mudam com o tempo), uma rede neural pode ser projetada para modificar os seus pesos sinpticos em tempo real. A arquitetura natural de uma rede neural para classificao de padres, processamento de sinais e aplicaes de controle, aliada capacidade de adaptao da rede, a torna uma ferramenta muito til para classificao adaptativa de padres, processamento adaptativo de sinais e controle adaptativo. Como regra geral, pode-se dizer que quanto mais adaptativo se fizer um sistema, assegurando que ele permanea estvel, mais robusto ser o seu desempenho quando o sistema for exigido a operar em um ambiente no-estacionrio. Contudo, deve ser enfatizado, que adaptabilidade nem sempre resulta em robustez, e na verdade pode resultar no contrrio. Um sistema adaptativo com constantes de tempo pequenas, por exemplo, pode se modificar rapidamente e assim tender a responder a perturbaes esprias, causando uma drstica degradao no desempenho do sistema. Para aproveitar todos os benefcios da adaptabilidade, as constantes de tempo principais do sistema devem ser grandes o suficiente par que o sistema ignore perturbaes esprias mas ainda assim pequenas o suficiente para responder a mudanas significativas no ambiente esse trade-off normalmente chamado de dilema estabilidade-plasticidade. Resposta a Evidncias: no contexto de classificao de padres, uma rede neural pode ser projetada para fornecer informao no somente sobre qual padro particular selecionar, mas tambm sobre a confiana ou crena na deciso tomada.Esta ltima informao pode ser usada para rejeitar padres ambguos, caso eles estejam presentes, e com isso melhorar o desempenho de classificao da rede. Informao Contextual: o conhecimento representado pela prpria estrutura e estado de ativao da rede neural. Cada neurnio da rede potencialmente afetado pela atividade de todos os outros neurnios da rede. Conseqentemente, a informao contextual tratada naturalmente pela rede.

30

Tolerncia a Falhas: uma rede neural tem o potencial de ser inerentemente tolerante a falhas, ou capaz de realizar computao robusta, no sentido de que seu desempenho se degrada suavemente sob condies de operao adversas. Se um neurnio ou suas conexes danificado, por exemplo, a recuperao de um padro armazenado prejudicada em qualidade. Contudo, devido natureza distribuda da informao armazenada na rede, o dano deve ser extenso para que a resposta global da rede seja degradada seriamente. Assim, a principio, uma rede neural exibe uma degradao suave do desempenho em vez de apresentar uma falha catastrfica. H algumas evidncias para a computao robusta, mas geralmente ela no controlada (Haykin, 2001). Para se assegurar que uma rede neural seja de fato tolerante necessrio adotar-se medidas corretivas no projeto do algoritmo utilizado para treinar a rede (Kerlirzin e Vallet, 1993).

3.2. Histrico

A era moderna das redes neurais comeou com o trabalho pioneiro de McCulloch e Pitts (1943). McCulloch era um psiquiatra e neuroanatomista por treinamento, que passou 20 anos refletindo sobre a representao de um evento no sistema nervoso. Pitts era um matemtico, que se associou a McCulloch em 1942. No se clssico artigo A logical calculus of the ideas immanent in nervous activity, eles descrevem um clculo das redes neurais que unificava os estudos de neurofisiologia e lgica matemtica. Eles assumiam que seu modelo formal de um neurnio seguia uma lei tudo ou nada. Com um nmero suficiente dessas unidades simples e com conexes sinpticas ajustadas apropriadamente e operando de forma sncrona, os autores mostraram que uma rede assim constituda realizaria, a principio, a computao de qualquer funo (computvel). Este era um resultado muito significativo e com ele geralmente aceito o nascimento das disciplinas de redes neurais e inteligncia artificial. O prximo desenvolvimento significativo das redes neurais veio em 1949, com a publicao do livro de Hebb The Organization of Behavior, no qual foi apresentada pela primeira vez uma formulao explicita de uma regra de aprendizagem fisiolgica para a modificao sinptica. Especificamente, Hebb

31

props que a conectividade do crebro continuamente modificada conforme um organismo vai aprendendo tarefas funcionais diferentes e que agrupamentos neurais so criados por tais modificaes. Alm disso, tambm apresentou o postulado da aprendizagem, que afirma que a eficincia de uma sinapse varivel entre dois neurnios aumentada pela ativao de um neurnio pelo outro, atravs daquela sinapse. Ao longo dos anos seguintes muitos grandes nomes da computao deram contribuies ao estudo das redes neurais. Cientistas como Minsky7, Gabor8 e Von Neumann9 trabalharam em aspectos do problema. No entanto o avano mais significativo foi alcanado em 1958 por Rosenblatt, com o desenvolvimento do perceptron, hoje o modelo bsico de neurnio artificial. Alm disso, Rosenblatt tambm introduziu o famoso teorema de convergncia do perceptron10. Em 1960 Widrow e Hoff introduziram o algoritmo LMS (Least Mean-Square, ou mnimos quadrados mdios, um algoritmo de aprendizagem para redes neurais simples), e o estudo e desenvolvimento de redes neurais ganharam forte impulso. Mas ento veio o livro de Minsky e Papert11, que utilizaram a matemtica para demonstrar que existem limites fundamentais para aquilo que os perceptrons de camada nica podem calcular. Em uma breve seo sobre perceptrons de mltiplas camadas, eles afirmavam que no havia razo para supor que qualquer uma das limitaes do perceptron de camada nica poderia ser superada na verso de mltiplas camadas. Foi um banho de gua fria em um crescente campo de pesquisa. O problema bsico encontrado no projeto de um perceptron de mltiplas camadas o problema de atribuio de crdito (i.e., o problema de atribuir aos neurnios escondidos da rede o crdito pelo erro). A conjuno do livro de Minsky e Papert

Seu artigo de 1961 Steps toward Artificial Intelligence contm uma grande seo sobre redes neurais.

Mais conhecido como inventor da holografia, foi um dos pioneiros da teoria da comunicao e props a idia do filtro adaptativo no-linear.

Um dos pais da computao, realizou em 1957 as famosas Palestras Silliman, postumamente publicadas no livro The Computer and the Brain (1958). Esse teorema garante que um perceptron de camada nica consegue, aps um nmero finito de iteraes de treinamento, classificar dois conjuntos de dados linearmente separveis.
11

10

Perceptrons, MIT Press, 1969, republicado em 1988.

32

com a ausncia de uma idia clara sobre como resolver esse problema fez com que as redes neurais ficassem adormecidas por mais de uma dcada. Alguns desenvolvimentos relevantes aconteceram no fim dos anos 70 e inicio dos 80, como a criao dos mapas auto-organizveis de Kohonen12, e das mquinas de Boltzmann13, mas foi apenas em 1986, com a publicao, por Rumelhart, Hinton e Williams do artigo Learning representations of back-propagation erros14, que o estudo das redes neurais voltou a ganhar fora. O trio conseguiu resolver definitivamente o problema de atribuio de crdito, deixando as objees de Minsky e Papert para trs e o algoritmo de retropropagao emergiu como o paradigma bsico para aprendizagem, sendo o mais popular e conhecido algoritmo para treinamento de redes de mltiplas camadas. Em 1988, Broomhead e Lowe descreveram um procedimento para o projeto de redes alimentadas adiante, em camadas utilizando funes de base radial, que fornecem uma alternativa aos modelos de perceptrons de mltiplas camadas. No incio dos anos 90, Vapnik e co-autores desenvolveram uma classe de redes de aprendizagem supervisionada poderosa do ponto de vista computacional, chamada de mquinas de vetor de suporte, para ser utilizada em reconhecimento de padres, regresso e problemas de estimao. Este apenas um breve histrico dos principais desenvolvimentos no contexto das redes neurais. Em resumo, pode-se dizer que o trabalho pioneiro de McCullochPitts e Rosenblatt constitui o cerne de uma primeira era das redes neurais, e o trabalho de Rumelhart e parceiros trouxe o ressurgimento do campo, para uma ainda corrente segunda era das redes neurais.

3.3. O Neurnio Artificial

Um neurnio uma unidade de processamento de informao que fundamental para a operao de uma rede neural. O diagrama em blocos da Figura 4 mostra o modelo de um neurnio, que forma a base para o projeto de redes neurais artificiais.

12

Um tipo de rede neural com treinamento no-supervisionado. Redes inspiradas pela mecnica estatstica, onde h aprendizado estocstico. Revista Nature, vol. 323, pp.533-536.

13

14

33

Figura 4: Modelo de um Neurnio Artificial (Haykin, 2000)

H trs elementos bsicos no modelo neuronal:

Um conjunto de sinapses ou elos de conexo, cada uma caracterizada por um peso prprio.Especificamente um sinal xj na entrada da sinapse j conectada ao neurnio k multiplicado pelo peso sinptico wkj. importante notar a maneira como so escritos os ndices do peso sinptico wkj. O primeiro ndice se refere ao neurnio em questo e o segundo se refere ao terminal de entrada da sinapse ao qual o peso se refere. Ao contrrio de uma sinapse do crebro, o peso sinptico de um neurnio artificial pode estar em um intervalo que inclui valores negativos bem como positivos. Um somador para somar os sinais de entrada, ponderados pelas respectivas sinapses do neurnio; essas operaes caracterizam um combinador linear. Uma funo de ativao para restringir a amplitude da sada de um neurnio. A funo de ativao tambm referida como funo restritiva j que restringe o intervalo permissvel de amplitude do sinal de sada a um valor finito. Tipicamente o intervalo normalizado da amplitude da sada de um neurnio escrito como o intervalo unitrio fechado [0,1] ou alternativamente [-1,1].

O modelo neuronal da figura 4 inclui tambm um bias (vis) aplicado externamente, representado por bk. O vis tem o efeito de aumentar ou diminuir a entrada lquida da funo de ativao, dependendo se ele positivo ou negativo, respectivamente.

34

Em termos matemticos, podemos descrever um neurnio k escrevendo o seguinte par de equaes:

uk = wkj x j
j =1

(3.1)

e, y k = (u k + bk ) (3.2)

onde, xj so os sinais de entrada; wkj so os pesos sinpticos do neurnio k; uk a sada do combinador linear devido aos sinais de entrada; bk o vis; a funo de ativao e yk o sinal de sada do neurnio. O uso do vis bk tem o efeito de aplicar uma transformao afim sada uk do somador linear no modelo da figura 4, como mostrado por: vk = u k + bk (3.3)

Em particular, dependendo se o vis bk negativo ou positivo, a relao entre o campo local induzido ou potencial de ativao vk do neurnio k e a sada do combinador linear uk modificada: a partir desta transformao afim, o grfico de vk em funo de uk no passa mais pela origem. O vis bk um parmetro externo do neurnio artificial k. possvel considerar sua presena como na equao 3.2. Equivalentemente se podem formular as equaes 3.1 at 3.3 como segue:

vk = wkj x j
j =0

(3.4) (3.5)

y k = (v k )

Na equao (3.4) se adicionou uma nova sinapse. A sua entrada e o seu peso so dados, respectivamente, por: x0 = +1 w k 0 = bk (3.6) (3.7)

possvel, portanto, reformular o modelo do neurnio k (da Figura 4). onde o efeito do vis levado em conta de duas maneiras: (i) adicionando-se um novo sinal de entrada fixo em +1 e (ii) adicionando-se um novo peso sinptico igual ao vis bk.

35

3.3.1. Funo de Ativao A funo de ativao, representada por (v) , define a sada de um neurnio em termos do campo local induzido v. H trs tipos bsicos de funo de ativao:

Funo de Limiar: para este tipo de funo de ativao, tem-se:

(v ) =

1, se v 0 0, se v < 0

(3.8)

Na literatura de engenharia, esta forma de funo de limiar normalmente referida como funo de Heaviside (Haykin, 2000). A sada do neurnio k que emprega esse tipo de funo pode ser expressa como: 1 se vk 0 yk = 0 se vk < 0 (3.9)

onde vk o campo local induzido do neurnio. Tal neurnio referido na literatura como modelo de McCulloch-Pitts, a partir do trabalho dos pioneiros de redes neurais (Haykin, 2000). Esse tipo de neurnio apresenta uma caracterstica do tipo tudo-ounada. Funo Linear por Partes: para este tipo de funo de ativao, tem-se:

v + 12 1, (v) = v, + 1 2 > v > 1 2 0, v 12

(3.10)

onde assume-se que o fator de amplificao dentro da regio linear de operao a unidade. Esta forma de funo de ativao pode ser vista como uma aproximao de um amplificador no-linear (Lazo Lazo, 2000). A funo de limiar pode ser considerada um caso especial desta, onde o amplificador tomado infinitamente grande. Funo Sigmide: a funo sigmide, cujo grfico tem a forma de S, de longe a forma mais comum de funo de ativao utilizada na construo de redes neurais artificiais. Ela definida como uma funo estritamente crescente que exibe um balanceamento adequado entre comportamento linear e no-linear (Haykin, 2000). Um exemplo de funo com essas caractersticas a funo logstica, dada por:

36

(v ) =

1 1 + exp(av)

(3.11)

onde a o parmetro de inclinao da funo sigmide. Uma caracterstica importante para o desenvolvimento da teoria subjacente s redes neurais a diferenciabilidade da funo de ativao. Nesse aspecto, funes sigmides so claramente melhores candidatas que funes de limiar ou lineares por partes (a necessidade da diferenciabilidade est ligada ao clculo dos erros, que guia o processo de aprendizado de uma rede neural). Algumas vezes desejvel que a funo de ativao se extenda de 1 a +1 (as anteriores vo de 0 a +1), ou seja, sejam anti-simtricas em relao a origem. Para a funo sigmide deste tipo, tem-se a funo tangente hiperblica:

(v ) = tanh( v )

(3.12)

De um modo geral, a funo logstica e a tangente hiperblica so as mais usadas em aplicaes reais de redes neurais artificiais.

3.3.2. Topologia de Rede

A maneira pela qual os neurnios de uma rede neural esto estruturados est intimamente ligada com o algoritmo de aprendizagem usado para treinar a rede. Assim, analisar a topologia de redes neurais sem estudar os algoritmos de aprendizagem pode no fazer muito sentido. Em sees subseqentes, vai-se mostrar os principais tipos de aprendizagem, mas antes uma breve introduo aos tipos bsicos de estruturas de rede devida. Em uma rede neural em camadas, os neurnios esto organizados na forma de camadas. Na forma mais simples de uma rede deste tipo, h uma camada de entrada de ns de fonte que se projeta sobre uma camada de sada de neurnios (ns computacionais), mas no vice-versa. Em outras palavras, uma rede alimentada adiante (feedforward). A segunda classe de rede neural alimentada adiante se distingue pela presena de uma ou mais camadas ocultas, cujos ns computacionais so chamados correspondentemente de neurnios ocultos. A funo destes intervir entre a entrada externa e a sada da rede de uma maneira til. De um modo bastante geral, os

37

neurnios da camada escondida servem para armazenar o conhecimento contido nos padres de treinamento, de maneira a que a rede seja capaz de generalizar quando apresentada a padres desconhecidos. J uma rede neural recorrente se distingue pelo fato de ter pelo menos um lao de realimentao. Isso se refere a uma situao em que pelo menos uma sada da rede realimentada para sua entrada. De um modo geral, os laos de realimentao servem para introduzir um componente de memria na rede neural, de maneira a que ela considere os resultados passados que produziu no seu processo de aprendizagem. As figuras 5 e 6, a seguir, ilustram os principais tipos de rede descritos.

Figura 5: Exemplo de Rede No-Recorrente com 1 camada escondida (Lazo Lazo, 2000)

Figura 6: Exemplo de Rede Neural Recorrente (Haykin, 2000)

38

3.4. Processos de Aprendizagem

Aprendizagem, no sentido de redes neurais, o processo de calcular os pesos sinpticos de uma rede. Os pesos, como j discutido, so um fator crucial, definindo o valor da sada de um neurnio, e portanto definindo qual o resultado que a rede obtm. Num sentido mais genrico, possvel dizer que os pesos so o conhecimento, j que todos os exemplos apresentados rede so armazenados medida que so apresentados durante o treinamento. Com a exceo do vis e de tcnicas mais avanadas de poda de rede (explicadas mais adiante), os pesos so a caracterstica bsica da rede que alterada ao longo do processo de aprendizagem. H dois tipos bsicos de processos de aprendizagem: a supervisionada e a nosupervisionada, que vo ser descritas a seguir.

3.4.1. Aprendizagem Supervisionada

A aprendizagem supervisionada necessita de um par de vetores composto da entrada e do vetor alvo que se deseja como sada. Juntos, estes vetores so chamados de par de treinamento ou vetor de treinamento, sendo que geralmente a rede treinada com vrios vetores de treinamento. O processo de aprendizagem feito da seguinte maneira: o vetor de entrada aplicado, a sada da rede calculada e comparada com o correspondente vetor alvo. O erro encontrado ento realimentado atravs da rede e os pesos so atualizados de acordo com um algoritmo determinado a fim de minimizar este erro. Este processo de treinamento repetido at que o erro, para todos os vetores de treinamento, tenha alcanado o nvel especificado.

3.4.2. Aprendizagem No-Supervisionada

A aprendizagem no-supervisionada no requer vetor alvo para as sadas. O conjunto de treinamento modifica os pesos da rede de forma a produzir sadas que sejam consistentes, isto , tanto a apresentao de um dos vetores de treinamento, como a apresentao de um vetor que suficientemente similar, iro produzir o

39

mesmo padro nas sadas. O processo de treinamento extrai as propriedades estatsticas do conjunto de treinamento e agrupa os vetores similares em classes.

3.5. O Algoritmo Backpropagation

algoritmo

de

retropropagao

do

erro

(Backpropagation)

consiste,

basicamente, em determinar as variaes nos pesos sinpticos da rede neural, tendo como objetivo minimizar o erro obtido na sada atravs do aprendizado do vetor de treinamento (entrada-sada). A caracterstica inovadora desse algoritmo dada pela sua capacidade de atribuir os erros obtidos na sada da rede s camadas ocultas. O algoritmo trabalha em duas etapas: um passo de computao para frente (forward-propagation), onde calculada a sada da rede, e um passo de computao para trs (backpropagation), onde os erros so calculados e os pesos so recalculados, de maneira a minimizar o erro. O passo para a frente funciona da seguinte maneira: dado um exemplo de treinamento representado por (x, d), como o vetor de entrada x aplicado camada de entrada de ns da rede, e o vetor sada desejada apresentado camada de ns de sada da rede. Primeiramente devem ser calculados os campos locais induzidos e os sinais funcionais, prosseguindo atravs da rede, camada por camada. O campo local induzido v (l ) para o neurnio j na camada l : j

(l ) j

= w(jil ) yi(l 1)
i =0

m0

(3.13)

onde yi( l 1) o sinal (funo) de sada do neurnio i na camada anterior l-1, e w(l ) o ji peso sinptico do neurnio j na camada l, que alimentado pelo neurnio i da camada l-1. Assumindo-se uma funo de ativao sigmide (vide item 3.3.1), o sinal de sada do neurnio j da camada l dado por:

y (jl ) = j (v (jl ) )
Se o neurnio j est na primeira camada da rede (ou seja, l=1), tem-se:

(3.14)

y (j0) = x j

(3.15)

onde xj o j-simo elemento do vetor de entrada x. Se o neurnio j est na camada de sada da rede (ou seja, l=L, onde L chamado de profundidade da rede), tem-se:

40

y (j L ) = o j
O passo para a frente termina com o clculo do erro na camada de sada:
ej = d j oj

(3.16)

(3.17)

O passo para trs se refere atribuio de responsabilidades pelo erro na sada. Ele se inicia com o clculo dos gradientes locais em cada camada da rede, definidos por:

(j l ) = e (j L ) ' j (v (j L ) ) para o neurnio j na camada de sada L


( j(l ) = ' j (v (jl ) )' k(l +1) wkjl +1) para o neurnio j da camada oculta l k

(3.18) (3.19)

onde o apstrofe em ' () representa a diferenciao em relao ao argumento. Os pesos sinpticos da rede so ajustados ento com base na seguinte regra:

w(jil ) (n + 1) = w(jil ) (n) + (j l ) (n) yi(l 1) (n)


onde a taxa de aprendizagem.

(3.20)

Os passos de computao para frente e para trs so ento iterados sucessivamente, at que algum critrio de parada seja alcanado (normalmente nmero de iteraes ou erro pr-estabelecido). Embora o algoritmo parea razoavelmente simples (talvez a resida sua fora), ele est por trs da maior parte das aplicaes contemporneas de redes neurais. Como possvel depreender do histrico (seo 3.2), seu desenvolvimento tornou o campo das redes neurais artificiais um dos mais estudados em inteligncia artificial.

3.5.1. Taxas de Aprendizagem

O algoritmo de retropropagao fornece uma aproximao para a trajetria no espao de pesos calculada pelo mtodo da descida pelo gradiente. Quanto menor for o parmetro da taxa de aprendizagem , menor sero as variaes dos pesos sinpticos da rede, de uma iterao para a outra, e mais suave ser a trajetria no espao de pesos. Esta melhoria, entretanto, obtida custa de uma taxa de aprendizagem lenta. Por outro lado, se o parmetro da taxa de aprendizagem for colocado muito grande, para acelerar o processo de treinamento, as grandes modificaes nos pesos sinpticos resultantes podem tornar a rede instvel (Haykin

41

(2000) chama de oscilatria). Resolver este dilema no tarefa simples, e requer uma de duas atitudes: (i) experimentao com o algoritmo, ou seja, alterao manual da taxa de aprendizagem de maneira a obter resultados melhores, ou (ii) o uso de tcnicas mais avanadas, que contornam engenhosamente o problema, introduzindo alteraes no algoritmo bsico, de maneira a obter melhor performance. Tais tcnicas sero discutidas na seo 3.6.2 adiante.

3.6. Desempenho de Redes Neurais

Apesar de serem uma ferramenta poderosa, as redes neurais artificiais so extremamente sensveis. Assim, sua aplicao em problemas prticas requer toda uma carga de preparao e cuidados a priori, e a anlise a posteriori tambm requer uma boa dose de cuidado, de modo a no tomar por certo aquilo que no necessariamente . Neste item, vai-se discutir alguns fatores fundamentais para a boa performance de redes neurais na resoluo de problemas prticos, e quais passos devem ser tomados para preparar os dados, treinar a rede, validar os resultados obtidos e analis-los.

3.6.1. Generalizao

Na aprendizagem por retropropagao, comea-se tipicamente com uma amostra de treinamento e se usa o algoritmo de retropropagao para calcular os pesos sinpticos de um perceptron de mltiplas camadas carregando (codificando) tantos exemplos de treinamento quanto possvel para dentro da rede. Espera-se que a rede neural assim projetada seja capaz de generalizar. Diz-se que uma rede generaliza bem quando o mapeamento de entrada-sada da rede for correto (ou aproximadamente correto) para dados de teste no-utilizados para a criao ou treinamento da rede; o termo generalizao tomado emprestado da psicologia. Aqui se assume que os dados de teste so tirados da mesma populao usada para gerar os dados de treinamento. O processo de aprendizagem (i.e., treinamento de uma rede neural) pode ser visto como um problema de ajuste de curva. A prpria rede pode ser considerada

42

simplesmente como um mapeamento no-linear de entrada-sada. Este ponto de vista nos permite considerar a generalizao no como uma propriedade mstica das redes neurais, mas simplesmente como o efeito de uma boa interpolao no-linear sobre os dados de entrada (Haykin, 2001). A rede realiza boa interpolao fundamentalmente porque perceptrons de mltiplas camadas com funes de ativao contnuas produzem funes de sada que tambm so contnuas. Uma rede neural, que projetada para generalizar bem, produzir um mapeamento de entrada-sada coreto, mesmo quando a entrada for um pouco diferente dos exemplos usados para treinar a rede. Entretanto, quando uma rede neural aprende um nmero excessivo de exemplos de entrada-sada, a rede pode acabar memorizando os dados de treinamento. Ela pode fazer isso encontrando uma caracterstica (devido ao rudo, por exemplo) que est presente nos dados de treinamento, mas no na funo subjacente que deve ser modelada. Este fenmeno conhecido como excesso de ajuste ou excesso de treinamento15. Quando a rede treinada em excesso, ela perde a habilidade de generalizar entre padres de entradasada similares. Normalmente, carregar dados desta forma em um perceptron de mltiplas camadas requer o uso de mais neurnios ocultos do que realmente necessrio, resultando que contribuies indesejveis no espao de entrada devido a rudo sejam armazenadas nos pesos sinpticos da rede. A memorizao essencialmente uma tabela de consulta, o que implica que o mapeamento de entrada-sada computado pela rede neural no suave. A suavidade do mapeamento de entrada-sada est intimamente relacionada com critrios de seleo de modelos do tipo Navalha de Occam, cuja essncia selecionar a funo mais simples na ausncia de qualquer conhecimento prvio contrrio. No contexto da generalizao, a funo mais simples significa a funo mais suave que aproxima o mapeamento para um dado critrio de erro, porque esta escolha geralmente demanda os menores recursos computacionais. , portanto, importante procurar um mapeamento no-linear suave para relaes de entrada-sada mal-formuladas, de modo que a rede seja capaz de classificar corretamente novos padres em relao aos padres de treinamento.

15

Traduo do ingls overfitting ou overtraining.

43

Alm da discusso da generalizao, interessante mencionar um outro ponto: normalmente espera-se que uma rede neural se torne bem-treinada de modo que aprenda o suficiente do passado para generalizar no futuro. Desta perspectiva, o processo de aprendizagem se transforma em uma escolha de parametrizao da rede para este conjunto de dados. Mais especificamente, possvel ver o problema de seleo da rede como a escolha, dentre um conjunto de estruturas de modelo candidatas (parametrizaes), a melhor de acordo com um certo critrio. Esta uma maneira apenas semanticamente diferente de colocar a questo, em relao a abordagem de suavidade usada anteriormente. Nesse sentido, uma ferramenta padro da estatstica conhecida como validao cruzada fornece um princpio orientador atraente (Haykin, 2001). Primeiramente, o conjunto de dados disponvel dividido aleatoriamente em um conjunto de treinamento e um conjunto de teste. O conjunto de treinamento dividido adicionalmente em dois subconjuntos distintos: (i) Subconjunto de estimao, usado para selecionar o modelo; (ii) Subconjunto de validao, usado para testar ou validar o modelo. A motivao validar o modelo com um conjunto de dados diferente daquele usado para estimar os parmetros. Desta forma, possvel usar o conjunto de treinamento para avaliar o desempenho de vrios modelos candidatos e assim, escolher o melhor. H, entretanto, uma possibilidade considervel de que o modelo assim selecionado, com os valores de parmetros com melhor desempenho, possa acabar ajustando excessivamente o subconjunto de validao. Para se resguardar dessa possibilidade, o desempenho de generalizao do modelo selecionado medido sobre o conjunto de teste, que diferente do subconjunto de validao. O uso de validao cruzada atrativo particularmente quanto necessrio projetar uma rede grande cujo objetivo seja uma boa generalizao16. possvel, por exemplo, utilizar a validao cruzada para determinar o perceptron de mltiplas camadas com o melhor nmero de neurnios ocultos e quando melhor parar o treinamento. Portanto, a validao cruzada uma ferramenta til no projeto de boas redes neurais e na busca por modelos com alta capacidade de generalizao.

16

No captulo 6, vai-se tentar alcanar este objetivo.

44

3.6.2. Algoritmos de Treinamento

O algoritmo de treinamento baseado em retropropagao trabalha normalmente com o mtodo de descida por gradiente. Para a maioria dos problemas prticos, esse mtodo muito lento. Assim, ao longo do tempo foram sendo criados diversos algoritmos de alta performance para o treinamento de redes neurais com retropropagao, que convergem entre dez e cem vezes mais rapidamente que o algoritmo de descida por gradiente tradicional. Estes algoritmos de alta performance podem ser divididos basicamente em duas categorias (Demuth e Beale, 2001): aqueles que usam tcnicas heursticas, desenvolvidas a partir de uma anlise cuidadosa do algoritmo de descida por gradiente bsico; e aqueles que utilizam mtodos de otimizao numrica, para acelerar a convergncia dos pesos da rede. Dentro do primeiro grupo, vale citar trs diferentes mtodos: (i) o uso de momentum, ou seja, a incluso de um parmetro adicional na equao de mudana de pesos da rede, de modo a acelerar a convergncia em regies onde o gradiente pronunciado, e vice-versa em regies onde a rede aprende pouco; (ii) o algoritmo com Taxa de Aprendizagem Varivel, onde o parmetro da rede pode variar ao longo do processo de treinamento, evitando os problemas de instabilidade advindos de uma escolha a priori errnea deste parmetro; e (iii) o algoritmo de Retropropagao Resiliente17, que tenta evitar o problema de magnitude das derivadas parciais usadas para realizar a atualizao dos pesos da rede (note-se nas equaes do passo para trs do algoritmo backpropagation, que se usa constantemente as derivadas da funo de ativao), e faz uso apenas do sinal destas derivadas, que indicam apenas a direo que se deve tomar na superfcie de erro, deixando o problema da magnitude de variao dos pesos da rede para um outro parmetro. De um modo geral, estas trs modificaes no algoritmo bsico tendem a melhorar consideravelmente a performance do processo de treinamento, sem incorrer em substancial aumento dos recursos computacionais utilizados. J no segundo grupo, h tambm trs tcnicas diferentes que permitem obter ganhos no processo de aprendizado: Gradiente Conjugado, quasi-Newton e
17

Resilient Backpropagation.

45

Levenberg-Marquardt. O algoritmo do Gradiente Conjugado parte da premissa de que, embora uma funo decresa mais rapidamente na direo do negativo de seu gradiente (esta a premissa do algoritmo bsico de descida pelo gradiente), no necessariamente esta direo que produz a melhor convergncia global. Assim, o algoritmo faz uma busca numrica nas direes conjugadas negativa do gradiente, tentando otimizar o resultado (numa analogia simples, como o jogador de xadrez que pensa duas, trs jogadas adiante). H diversas maneiras de realizar tal busca, e da surgem diversas variantes do algoritmo: Fletcher-Reeves, Polak-Ribire, PowellBeale, Golden Search, entre outros18. Os mtodos quasi-Newton partem da mesma premissa bsica das tcnicas de gradiente conjugado, apenas utilizam mtodos de otimizao numrica diferentes, baseados em variantes do algoritmo de Newton. Da mesma maneira, o algoritmo de Levenberg-Marquardt busca otimizao numrica com uma aproximao do mtodo de Newton (em linhas gerais, o mtodo de Newton envolve o clculo do Hessiano de uma funo os mtodos quasi-Newton e Levenberg-Marquardt buscam aproximar o Hessiano). Segundo Demuth e Beale (2001), este ltimo tem se mostrado ser o algoritmo mais rpido para o treinamento de redes alimentadas adiante (feedforward) de tamanho moderado (algumas centenas de pesos).

3.6.3. Treinamento Seqencial e por Lote

Em uma aplicao prtica do algoritmo de retropropagao, o aprendizado resulta das muitas apresentaes de um determinado conjunto de exemplos de treinamento para o perceptron de mltiplas camadas. Como mencionado anteriormente, uma apresentao completa do conjunto de treinamento inteiro denominada uma poca. O processo de aprendizagem mantido em uma base de poca em poca at os pesos sinpticos e os nveis de vis se estabilizarem e o erro mdio quadrado sobre todo o conjunto de treinamento convergir para um valor mnimo. uma boa prtica tornar aleatria a ordem de apresentao dos exemplos de treinamento (Haykin, 2001), de uma poca para a seguinte. Esta aleatoriedade tende a tornar a busca no espao de

18

Para detalhes de cada um destes algoritmos, ver Demuth e Beale (2001), ou Haykin (2001), pp. 262-271.

46

pesos estocstica sobre os ciclos de aprendizagem, evitando assim a possibilidade de ciclos limitados, na evoluo dos vetores de pesos sinpticos. Para um dado conjunto de treinamento, a aprendizagem supervisionada pode ento ocorrer de uma dentre duas formas bsicas: Modo Seqencial: o modo seqencial da aprendizagem tambm chamado de modo online, modo padro ou modo estocstico (Haykin, 2001). Neste modo de operao, a atualizao dos pesos realizada aps a apresentao de cada exemplo de treinamento. Modo por Lote: no modo por lote da aprendizagem supervisionada, o ajuste dos pesos realizado aps a apresentao de todos os exemplos de treinamento que constituem uma poca. Para uma poca particular, define-se a funo de custo como:

mdio =

1 N e 2j (n) 2 N n =1 jC

(3.21)

onde o sinal de erro ej(n) relativo ao neurnio de sada j do exemplo de treinamento n. O erro igual diferena entre a sada computada pela rede e a sada original do exemplo, ou seja, o j-simo elemento do vetor resposta desejada e o valor

correspondente da sada da rede. Na equao anterior, o somatrio interno em relao a j realizado sobre todos os neurnios da camada de sada da rede, enquanto que o somatrio externo em relao a n realizado sobre todo o conjunto de treinamento da poca considerada. Para um parmetro de taxa de aprendizagem , o ajuste aplicado ao peso sinptico wji, conectando o neurnio i ao neurnio j, definido pela regra delta:
w ji = med = N w ji e j (n) w ji

e (n)
n =1 j

(3.22)

De acordo com essa equao, no modo por lote, o ajuste do peso wji feito somente aps o conjunto de treinamento inteiro ter sido apresentado rede. Do ponto de vista operacional online, o modo seqencial de treinamento prefervel em relao ao modo por lote, porque requer menos armazenamento local para cada conexo sinptica (Haykin, 2001). Alm disso, dado que os parmetros so apresentados rede de uma forma aleatria, o uso de ajuste de pesos de padro torna a busca no espao de pesos estocstica, o que torna menos provvel que o algoritmo de treinamento fique preso em um mnimo local. Da mesma forma, a natureza

47

estocstica do modo seqencial torna mais difcil de estabelecer as condies tericas para a convergncia do algoritmo (Haykin, 2001). Em suma, apesar de o modo seqencial apresentar vrias desvantagens, ele bastante usado por duas razes prticas importantes: (i) simples de implementar e (ii) fornece solues efetivas a problemas grandes e difceis.

3.6.4. Tcnicas de Poda de Rede

Para resolver problemas do mundo real com redes neurais, normalmente necessrio o uso de redes de tamanho bastante grande, altamente estruturadas. Uma questo prtica que surge neste contexto a da minimizao do tamanho da rede, mantendo bom desempenho. menos provvel que uma rede neural com tamanho mnimo aprenda as idiossincrasias ou rudo dos dados de treinamento e, pode assim generalizar melhor sobre novos dados. possvel alcanar este objetivo de projeto de duas formas: Pelo crescimento da rede19, comeando com um perceptron de mltiplas camadas pequeno (para realizar a tarefa em questo), e ento vai-se adicionando um novo neurnio ou uma nova camada de neurnios ocultos somente quando no se satisfizerem as especificaes de projeto. Pela poda da rede20, comeando com um perceptron de mltiplas camadas grande, com um desempenho adequado para o problema em questo, e ento o podando pela reduo ou eliminao de certos pesos sinpticos de uma forma seletiva e ordenada.

As principais abordagens para a realizao da poda da rede so: (i) baseada em uma forma de regularizao e (ii) baseada em eliminao de certas conexes sinpticas da rede.

19

Normalmente chamado de cascading ou cascade-correlation na literatura (Zeki-Susac, 1999). Normalmente chamado de pruning na literatura (Haykin, 2001 e Zeki-Susac, 1999).

20

48

A regularizao agrupa uma variedade de mtodos de poda da rede21, com um princpio motivador em comum. No projeto de um perceptron de mltiplas camadas por qualquer mtodo que seja, est-se de fato construindo um modelo no-linear de um fenmeno responsvel pela gerao de exemplos de entrada-sada usados para treinar a rede. Na medida em que o projeto da rede de natureza estatstica, se deseja um compromisso adequado entre a confiabilidade dos dados de treinamento e a qualidade do modelo (ou seja, um mtodo adequado para resolver o dilema biasvarincia (Haykin, 2001)). No contexto de aprendizagem supervisionada (backpropagation ou qualquer outro algoritmo), possvel realizar esse compromisso minimizando o risco total, expresso como: R( w) = S ( w) + C ( w) (3.23)

onde o primeiro termo a medida de desempenho da rede (ou tambm o erro da rede) e o segundo termo a punio por complexidade da rede, multiplicada pelo parmetro de regularizao. A punio por complexidade define o quanto a rede pode aprender a partir dos exemplos de treinamento em outras palavras, qual a confiabilidade dos dados disponveis, no sentido de definir bem a rede. Os algoritmos de poda de rede baseados em regularizao trabalham para diminuir este parmetro, evitando redes (e pesos sinpticos) muito grandes e assim permitindo redes que aprendam melhor e portanto generalizem melhor. A abordagem por eliminao parte da idia bsica de podar a rede a partir da informao sobre as derivadas de segunda ordem da superfcie de erro, de forma a estabelecer um compromisso entre a complexidade da rede e o desempenho do erro de treinamento. Em particular, constri-se um modelo local da superfcie de erro para prever analiticamente o efeito de perturbaes sobre os pesos sinpticos, e a partir deste modelo tenta-se obter melhor performance de generalizao da rede do que a normalmente seria obtida com uma tcnica do tipo descida pelo gradiente. O objetivo identificar um conjunto de parmetros cuja eliminao do perceptron de mltiplas camadas causa o menor aumento do erro mdio da rede, e a partir da eliminar estes parmetros.

21

Decaimento de Pesos, Eliminao de Pesos e Suavizador Aproximativo so exemplos (Haykin,2001).

49

3.6.5. Pr e Ps-Processamento

Um dos resultados mais importantes no trabalho com redes neurais a prova de que redes neurais so aproximadores universais de funes22. Em outras palavras, dado um nmero suficientemente grande de parmetros livres, garantidamente o processo de treinamento vai achar um mapeamento entre qualquer conjunto de variveis independentes e dependentes. Este um resultado poderoso que garante que redes neurais podem atacar uma enorme gama de problemas, mas h um porm: elas tambm vo achar relaes onde elas no existem. Portanto, o processo de selecionar e tratar as variveis de um problema tem de ser parte integrante do processo de projeto de uma rede neural. Independentemente da eficincia do algoritmo de aprendizagem em termos de convergncia, generalizao e estabilidade, o indicador de performance ltimo de um estimador neural vai depender na relevncia das variveis independentes escolhidas e na qualidade dos dados usados. Esta uma maneira rebuscada de dizer Entra lixo, sai lixo23. Alm disso, trabalhar com muito poucas variveis independentes vai diminuir o espao de busca excessivamente, e introduzir vieses no processo de modelagem que em geral levam a generalizaes pobres. De outro lado, variveis demais aumentam a dimensionalidade do espao de busca e tornam qualquer algoritmo computacionalmente ineficiente e portanto intil. A seleo de variveis uma etapa importante do processo de modelagem antes de se iniciar a computao propriamente dita. Outra etapa crucial o prprocessamento dos dados, de modo que a rede neural tenha mais facilidade para trabalhar. De um modo geral, esse pr-processamento envolve basicamente trs etapas (Haykin, 2001 e Refenes, 1995):

Remoo da mdia: cada varivel deve ser pr-processada de modo que seu valor mdio, calculado sobre todo o conjunto de treinamento ou seja prximo de zero, ou seja pequeno comparado com o desvio-padro. Para avaliar o significado prtico
22

Esse resultado o famoso Teorema da Aproximao Universal. Para uma formulao do mesmo, vide Haykin, 2001, pp. 234-235. Quem provou o teorema, no contexto de perceptrons de mltiplas camadas, foi Cybenko, em 1989, no artigo Approximation by Superposition of a sigmoidal funcion, in Mathematics of Control, Signals and Systems, vol. 2, pp. 303-314. Uma traduo livre do famoso ditado Garbage in, garbage out.

23

50

desta regra, considere-se o caso extremo, onde as variveis de entrada so positivas de modo consistente. Nesta situao, os pesos sinpticos de um neurnio na primeira camada oculta podem apenas crescer juntos ou decrescer juntos. Conseqentemente, se o vetor peso daquele neurnio deve mudar de direo, ele s pode fazer isso ziguezagueando seu caminho atravs da superfcie de erro, o que tipicamente lento e deve ser evitado (Haykin, 2001). Descorrelao: as variveis de entrada contidas no conjunto de entrada no devem ser correlacionadas, o que pode ser feito atravs de uma tcnica chamada Anlise de Componentes Principais24. Equalizao da Covarincia: as variveis de entrada descorrelacionadas devem ser escaladas para que suas covarincias sejam aproximadamente iguais, assegurando-se com isso que os diferentes pesos sinpticos da rede aprendam aproximadamente com a mesma velocidade. Alm do pr-processamento, obviamente fundamental realizar um psprocessamento dos resultados, de maneira a ter resultados interpretveis dada uma sada qualquer da rede neural. O ps-processamento segue as mesmas etapas que o pr-processamento, mantendo as caractersticas do processo gerador intactas.

3.7. Concluses

Nesta breve introduo ao vasto campo das redes neurais, buscaram-se fundamentalmente dois objetivos: (i) apresentar os principais conceitos envolvidos na concepo e projeto de uma rede neural artificial e (ii) dar uma medida dos fatores que podem fazer com que uma rede tenha um bom desempenho na resoluo de problemas complexos. O uso desta ferramenta no trivial, pelo contrrio, logo a obteno de bons resultados, como j mencionado, profundamente dependente de um processo de projeto e modelagem cuidadoso. A teoria um guia poderoso para o projetista, mas apenas a experimentao com os algoritmos e os diferentes parmetros torna os resultados consistentes.

24

Por restries de espao e escopo do trabalho, no se vai detalhar aqui esta ferramenta. Para detalhes sobre seu funcionamento, vide Haykin (2001) ou Demuth e Beale (2001).

51

4. ALGORITMOS GENTICOS1
Voc acha que um dia as mquinas pensaro? Pode apostar que sim. Sou mquina, voc mquina e ambos pensamos, no?
Claude Shannon2

4.1. Introduo

Assim como as redes neurais, que se discutiu no captulo anterior, o prprio nome dos algoritmos genticos desperta mistrio e curiosidade. Talvez pelo fato de a evoluo ser um dos conceitos mais antiintuitivos do corpo de conhecimentos comum das pessoas h uma tendncia por demais natural ao lamarckismo (acreditar que o aparecimento de determinadas caractersticas forado pelo ambiente) e no ao darwinismo. De todo modo, o apelo intelectual da gentica (vide a ampla divulgao do Projeto Genoma) algo contagiante, o que acaba por resvalar para a rea dos Algoritmos Genticos. Ao longo das prximas pginas, se buscar estabelecer as bases do funcionamento e do uso dos algoritmos genticos, porque so eles uma ferramenta poderosa para o tratamento de complexos problemas de busca, e como eles se comparam com outras ferramentas mais tradicionais.

4.2. Perspectiva Histrica

Nos anos 50 e 60, diversos cientistas da computao independentemente estudaram sistemas evolutivos, baseados na idia de que a evoluo poderia ser usada como uma ferramenta de otimizao em problemas de engenharia. A idia em todos esses sistemas era evoluir uma populao de soluo possveis, usando operadores inspirados pela gentica e pela seleo natural. Nos anos 60, Rechenberg (1965, 1973) introduziu as estratgias de evoluo3, um mtodo usado para otimizar parmetros reais de mecanismos como aeroflios,
1

Este captulo baseado, em grande medida, em Mitchell, M. (1999) e Silva, A.P.A. (2002). Apud Bass, 2000.

52

por exemplo. Essa idia foi levada adiante e desenvolvida por Schwefel (1975, 1977). O estudo de estratgias de evoluo continua uma ativa rea de pesquisa, se desenvolvendo quase que independentemente do campo de algoritmos genticos. Fogel, Owens e Walsh (1966) desenvolveram a programao evolutiva4, uma tcnica na qual solues candidatas para determinados problemas eram representadas como mquinas de estado-finito, que eram evoludas atravs da mutao aleatria de seus diagramas de transio de estado, para ao fim o mais adaptado ser escolhido. Ao longo do tempo, a programao evolutiva recebeu formulao mais ampla, e tambm se converteu em ativa rea de pesquisa. Juntas, as reas de estratgias de evoluo, programao evolutiva e algoritmos genticos formam a base do campo de pesquisas em computao evolutiva. Diversas outros estudiosos, trabalhando ao longo dos anos 50 e 60, desenvolveram algoritmos inspirados no mecanismo da evoluo, usados para otimizao e aprendizado de mquinas. Box (1957), Friedman (1959), Bledsoe (1961), Bremermann (1962), e Reedd, Toombs e Baricelli (1967) trabalharam nessa rea, embora suas pesquisas tenham ficado algo esquecidas. Alm disso, vrios bilogos usaram computadores para simular a evoluo, na tentativa de reproduzir experimentos controlados (eg. Baricelli 1957 e Martin & Cockerman 1960). Naquela poca de nascimento dos computadores, a evoluo certamente era um tpico de interesse. Especificamente, os Algoritmos Genticos foram inventados por John Holland nos anos 60, e desenvolvidos por ele e seus estudantes e colegas na Universidade de Michigan ao longo dos anos 60 e 70. Em contraste com os campos de estratgias de evoluo e programao evolutiva, o objetivo original de Holland no era projetar algoritmos para resolver problemas especficos, mas sim estudar formalmente o fenmeno da adaptao, a maneira como ela ocorre na natureza, e simultaneamente desenvolver maneiras de importar para os computadores esse mecanismo. Com a publicao do livro Adaptation in Natural and Artificial Systems5 em 1975, Holland
3

Traduo do ingls evolution strategies. Traduo do ingls evolutionary programming.

5 Infelizmente, no se encontrou traduo para o portugus desse livro. A edio original em ingls se esgotou, e foi republicada, revisada e expandida, em 1992 pela MIT Press, com o ttulo Adaptation In Natural And Artificial Systems: An Introductory Analysis With Applications To Biology, Control, And Artificial Intelligence.

53

apresentou o algoritmo gentico como uma abstrao da evoluo biolgica e colocou o quadro terico para a adaptao dos algoritmos genticos6. O AG de Holland um mtodo para ir de uma populao de cromossomos (ou seqncias de uns e zeros, ou bits), para uma nova populao atravs do uso de um tipo de seleo natural, juntamente com os operadores (inspirados na gentica) de crossover, mutao e inverso. Cada cromossomo consiste de uma srie de genes (ou bits), cada gene sendo uma instncia de um particular alelo (0 ou 1). O operador de seleo escolhe os cromossomos da populao que podero se reproduzir, e na mdia, os cromossomos mais adaptados produzem mais descendentes do que os menos adaptados. O operador de crossover troca partes dos cromossomos, copiando a recombinao biolgica entre dois organismos de filamento nicos (haplides, no jargo biolgico). O operador de mutao troca os valores de alguns alelos, de forma aleatria. O operador de inverso troca a ordem completa de uma seo contgua de um cromossomo, trocando a ordem em que os genes so arranjados. Note-se que esta apenas uma introduo num contexto histrico do funcionamento desses mecanismos. Um desenvolvimento mais formal ser realizado no item 4.5. A introduo feita por Holland de um algoritmo baseado em populao, com crossover, inverso e mutao foi uma inovao importante (por exemplo, as estratgias de evoluo de Rechenberg comeavam com uma populao de dois indivduos: um pai e um descendente, sendo este uma verso mutada daquele; populaes com muitos indivduos e crossover no faziam parte da teoria ento. Do mesmo modo, a programao evolutiva de Fogel, Owens e Walsh usava apenas mutao para prover a variao). Alm disso, Holland foi o primeiro a tentar colocar a computao evolutiva em bases tericas slidas. At recentemente essas bases tericas, baseada na noo de schemas, era a base de todo o desenvolvimento subseqente no campo. Nos anos mais recentes tem havido uma crescente interao entre os pesquisadores estudando os vrios sub-campos de computao evolutiva, e as separaes entre AGs, estratgias de evoluo, programao evolutiva e outros ramos do campo tem se dissolvido. Hoje, pesquisadores usam o termo algoritmo gentico para descrever coisas bastante distantes da concepo original de Holland.
6

Daqui por diante, vai-se usar a expresso Algoritmo Gentico e a sigla AG indistinta e intercambiavelmente.

54

4.3. Evoluo como Ferramenta

Porque

usar

evoluo

como

inspirao

para

resolver

problemas

computacionais? Para pesquisadores de computao evolutiva, os mecanismos da evoluo parecem apropriados para os problemas mais significativos de muitos campos. Muitos problemas requerem uma busca entre um enorme nmero de possibilidades de soluo. Um exemplo o problema de engenharia de protenas, no qual necessita-se de um algoritmo que busque entre o vasto nmero de seqncias de aminocidos, que gerem a protena desejada. Tais problemas de busca normalmente podem se beneficiar do uso eficiente do paralelismo, no qual muitas possibilidades diferentes so examinadas simultaneamente de maneira eficiente. Por exemplo, ao procurar por protenas com determinadas propriedades, ao invs de avaliar uma seqncia de aminocidos por vez, seria muito mais rpido avaliar vrios simultaneamente. O que preciso para se fazer isso tanto paralelismo computacional (ou seja, muitos processadores rodando ao mesmo tempo) e uma estratgia inteligente para se escolher o prximo grupo a ser examinado. Muitos problemas computacionais requerem um programa que seja adaptativo ou seja, que consiga continuar a funcionar eficientemente sob condies ambientais diferentes. Isso pode ser tipificado por problemas em controle robtico, no qual um rob tem de executar tarefas em ambientes variveis. Outros problemas requerem programas que seja inovativos, que construam solues totalmente novas e originais. Finalmente, vrios problemas requerem solues complexas que so extremamente difceis de serem programadas a mo. Um exemplo notvel o problema de se criar inteligncia artificial. Nos primrdios da pesquisa nesse campo, pensava-se que seria possvel codificar as regras que conferem inteligncia em um programa (o campo de sistemas especialistas resultado desse otimismo inicial). Mais recentemente, muitos estudiosos do campo acreditam que as regras subjacentes inteligncia so complexas demais para serem codificadas diretamente, numa perspectiva top-down. Ao contrrio, eles acreditam que a melhor maneira de se chegar inteligncia artificial seja atravs de uma perspectiva bottom-up, na qual se programam apenas algumas regras simples, e comportamentos complexos como a inteligncia emergem atravs da aplicao e interao massivamente paralela dessas

55

regras. Tanto o desenvolvimento e estudo de redes neurais (que se examinou no captulo 3 desse trabalho), quanto o estudo da computao evolutiva so reflexo desse paradigma bottom-up de busca de solues adaptativas para problemas complexos. A biologia e a evoluo so fontes atraentes para a busca de inspirao para atacar essa classe de problemas. De certo modo, a evoluo um mtodo de se buscar entre um nmero enorme de solues possveis. Na biologia, o grande conjunto de possibilidades a variedade de diferentes seqncias genticas, e a soluo desejada so os indivduos bem adaptados capazes de sobreviver e se reproduzir no ambiente. Alm disso, a evoluo pode ser vista como uma maneira de se projetar solues inovadores para problemas complexos. Por exemplo, o sistema imunolgico dos mamferos uma soluo engenhosa para o problema de germes invadindo o corpo. Olhando por esse prisma que o mecanismo da evoluo inspira mtodos computacionais de busca. A utilidade7 de um indivduo biolgico depende de muitos fatores diferentes, por exemplo, quo bem se adapta ao clima do meio ambiente, ou quo bem consegue competir e/ou cooperar com os outros organismos a sua volta. O critrio de utilidade muda constantemente medida que os organismos evoluem, e portanto a evoluo um mecanismo de busca dinmico num conjunto sempre mutvel de possibilidades. Assim, a busca por boas solues8 em face a condies mutveis precisamente o que se requer de algoritmos computacionais adaptativos. Indo alm, possvel dizer que a evoluo um mecanismo massivamente paralelo de busca: ao invs de testar uma espcie por vez, ela trabalha sobre milhares, qui milhes de espcies diferentes ao mesmo tempo. E tambm, em termos das regras que a governam, a evoluo impressionantemente simples: as espcies evoluem atravs de mutao randmica (mutao, recombinao e operadores semelhantes), seguido pela seleo dos mais adaptados, que tendem a sobreviver e se reproduzir, propagando ento sua herana gentica para geraes futuras. Tais regras so simples, e no entanto so capazes de explicar a enorme diversidade que vemos na biosfera.
Aqui vai-se utilizar o termo utilidade como uma proxy do termo fitness, jargo padro da rea. H, sem dvida, uma inspirao do jargo comum em economia por trs dessa escolha.
8 7

Note-se o uso da expresso boas solues e no da expresso solues timas, para reforar o carter heurstico dos AGs.

56

4.4. Terminologia Biolgica

Nesse momento relevante introduzir algumas das terminologias biolgicas que sero usadas daqui por diante neste trabalho. No contexto dos algoritmos genticos, tais termos so usados de acordo com a analogia com a biologia real, embora as entidades a que se refiram sejam um tanto mais simples que as correspondentes biolgicas reais. Todos os organismos vivos consistem de clulas, e cada clula contm o mesmo conjunto de um ou mais cromossomos filamentos de DNA que servem como a impresso digital, por assim dizer, de um organismo. Um cromossomo pode ser conceitualmente dividido em genes blocos funcionais de DNA, cada um dos quais codifica uma particular protena. Grosseiramente, pode-se imaginar um gene como o cdigo de uma particular caracterstica, digamos cor dos olhos. As diferentes possibilidades para uma caracterstica (olhos verdes, azuis, castanhos) so chamadas de alelos. Cada gene est localizado em um particular locus (posio) no cromossomo. Muitos organismos tm mltiplos cromossomos em cada clula. O conjunto completo do material gentico (todos os cromossomos juntos) chamado de o genoma de um organismo. O termo gentipo se refere ao grupo particular de genes contido em um genoma. Por exemplo, Joo e Jos tm gentipos diferentes (excluda a possibilidade de serem gmeos univitelinos, mas aqui se busca apenas uma introduo, no um curso completo de biologia), mas seu material vem do mesmo genoma. O gentipo d origem, atravs do desenvolvimento fetal e fases posteriores, ao fentipo o conjunto de caractersticas de um particular indivduo. Organismos cujos cromossomos esto dispostos em pares so chamados diplides, enquanto organismos cujos cromossomos no so pareados so chamados haplides. Na natureza, a maioria dos organismos que se reproduzem sexualmente so diplides, includo a o ser humano, que tem 23 pares de cromossomos em cada clula do corpo. Durante a reproduo sexual, a recombinao (ou crossover) ocorre: em cada pai, os pares de cromossomos trocam genes e formam um gameta (cromossomo nico), e gametas dos dois pais so pareados para formar um novo organismo diplide. Na reproduo haplide, a recombinao acontece diretamente

57

entre os filamentos cromossmicos dos pais. Alm disso, o descendente est sujeito a mutao, na qual nucleotdeos (blocos elementares de DNA) so trocados do pai para o descendente, sendo que tais mudanas normalmente resultam de erros de cpia no processo reprodutivo. Ao fim, a utilidade do organismo tipicamente definida como a probabilidade de que ele vai viver para se reproduzir (ou viabilidade), ou ainda como uma funo do nmero de descendentes que ele vai deixar (ou fertilidade). Nos AGs, o termo cromossomo se refere tipicamente a uma soluo candidata para um problema, normalmente codificada como uma seqncia de bits. Os genes so ou bits nicos ou pequenos blocos de bits adjacentes, que codificam um particular elemento da soluo candidata (por exemplo, no contexto de otimizao de funes multivariadas, cada bit pode ser um determinado parmetro da funo). Um alelo numa seqncia de bits ou 0 ou 1. Crossover tipicamente consiste na troca de material gentico entre dois pais haplides. A mutao consiste na troca do bit de um locus selecionado aleatoriamente. A maioria das aplicaes de AGs faz uso de indivduos haplides, particularmente indivduos com apenas um cromossomo9. O gentipo de um indivduo ento simplesmente a configurao de bits no cromossomo dele. Normalmente no h noo de fentipo no contexto dos AGs, embora mais recentemente haja referncias nesse sentido, onde se usa AGs em que h tanto um nvel genotpico e um nvel fenotpico (por exemplo no contexto do uso de algoritmos genticos para otimizar os parmetros de uma rede neural, em que o gentipo o AG e o fentipo o comportamento emergente resultante da rede neural).

4.5. Elementos Bsicos de um Algoritmo Gentico

Se h uma ironia envolvida no estudo de algoritmos genticos, talvez o fato de no haver exatamente uma definio precisa do termo algoritmo gentico. No entanto, a maioria daquilo que se pode chamar de AGs tem ao menos as seguintes caractersticas em comum: populaes de cromossomos, seleo de acordo com a utilidade, crossover para produzir novos descendentes, e mutao aleatria. A
9

Uma exceo interessante a codificao que W. Daniel Hillis fez do problema de classificao de rvores de busca de 16 elementos, onde ele codificou os indivduos de forma diplide (W. Daniel Hillis 1990).

58

inverso um dos elementos presentes no algoritmo original de Holland raramente usada atualmente, e no h concluses acerca de quaisquer vantagens que tal procedimento traga para o resultado final do algoritmo. Os cromossomos de uma populao em um AG normalmente tomam a forma de seqncias de bits. Cada locus no cromossomo tm duas possveis formas, ou alelos: 0 ou 1. Cada cromossomo pode ser visto como um ponto no espao de busca de solues candidatas. O algoritmo gentico processa seqencialmente as populaes de cromossomos, substituindo progressivamente uma populao pela outra. Normalmente se faz uso de uma funo de utilidade10 que d a cada cromossomo um valor (a utilidade dele). A utilidade de um cromossomo depende basicamente de quo bem ele consegue resolver o problema em questo. Idealmente, a soluo tima dentro de um determinado espao de busca corresponde quela com a maior utilidade.

4.5.1. Codificao

De maneira a aplicar um AG para um determinado problema, a primeira deciso que deve ser tomada trata do tipo de gentipo que o problema requer. Isso quer dizer que se deve decidir acerca de uma maneira de mapear os parmetros do problema em um conjunto finito de smbolos, ou genes (que podem ter comprimento constante ou dinmico), codificando uma soluo candidata no espao de solues para o problema. O conjunto de smbolos usado normalmente binrio (formando uma sequncia de bits), mas outras representaes tambm podem ser usadas, incluindo algumas com caracteres (letras) ou outros valores reais. Na maioria das aplicaes de AGs, as sequncias so binrias e seu comprimento mantido constante ao longo de todo o processo evolutivo. Alm disso, todos os parmetros so codificados no mesmo espao de valores e alocados a genes do mesmo tamanho dentro da sequncia de bits. H um problema quando um gene pode ter apenas um nmero finito de valores vlidos, se uma representao binria utilizada. Se o nmero de valores vlidos no uma potncia de dois, ento alguns dos cdigos binrios sero redundantes, ou seja, eles no correspondero a nenhum
Como comentado na nota 5, utilidade se refere a fitness, e portanto funo de utilidade o termo usado para fitness function.
10

59

gene vlido. A maneira mais popular de se contornar esse problema atravs do mapeamento de um cdigo invlido para um vlido (ou seja, dois genes diferentes correspondem ao mesmo valor de um parmetro).

4.5.2. Funes de Utilidade

Uma aplicao comum de AGs em otimizao de funes, onde o objetivo encontrar um conjunto de parmetros que maximize, por exemplo, uma determinada funo multivariada complexa. Como um exemplo simples, tome-se a seguinte funo, que se deseja maximizar:

f ( y ) = y + sen(32 y )

(4.1)11

aqui as solues candidatas so valores de y, que podem ser codificados como seqncias de bits representando nmeros reais. O clculo da funo de utilidade transforma uma dada seqncia binria x em um nmero real y e ento avalia a funo naquele ponto. Nesse caso simples, a utilidade justamente o valor da funo naquele ponto. Para um caso no-numrico, considere-se o problema de encontrar uma seqncia de 50 aminocidos que se dobrem para formar uma estrutura protica tridimensional desejada. Um AG poderia ser aplicado a este problema para buscar dentre uma populao de solues candidatas, codificando cada soluo como uma seqncia de 50 letras, por exemplo IHCCVASASDMIKPVFTVASYLKNWTKAKGPNFEICISGRTPYWDNFPGI12 onde cada letra representa um de 20 aminocidos possveis. Uma maneira de definir a utilidade de uma seqncia candidata com o valor negativo da energia potencial da estrutura candidata, com respeito estrutura desejada. A energia potencial uma medida de quanta resistncia fsica a seqncia apresentaria ao processo de dobramento para chegar estrutura desejada assim, quanto menor a energia potencial, maior a utilidade. Obviamente, no se deseja dobrar fisicamente todas as seqncias da populao e medir sua resistncia seria extremamente difcil, para no dizer impossvel. A soluo nesse caso usar algum conhecimento de biofsica e
11

Riolo (1992) apud Mitchell (1996), adaptado pelo autor. Mitchell (1996).

12

60

estimar a energia potencial da estrutura atravs dos clculos das foras relevantes agindo sobre cada aminocidos, de modo que o clculo da funo de utilidade seja funcionalmente factvel. Esses dois exemplos mostram dois contextos diferentes na qual as solues candidatas para um determinado problema so codificadas como cromossomos, ou seqncias de bits (ou smbolos), com funes de utilidade definidas no espao de smbolos resultante. Em suma, um algoritmo gentico um mtodo para se buscar, nesses espaos de utilidade, seqncias altamente adaptadas. Um problema comum em AGs, chamado enganao13, ocorre quando genes de alguns indviduos bem-adaptados (mas no timos) passam a dominar a populao aps apenas algumas iteraes (ou geraes), causando um mximo local. Quando a populao alcana esse ponto, a capacidade do AG de continuar buscando solues melhores praticamente eliminada. Apenas maneira de evitar isso controlando o nmero de oportunidades que cada indviduo tem de se reproduzir (Silva, 2002).

4.5.3. Operadores

Todo algoritmo gentico envolve basicamente trs tipos de operadores: seleo, crossover e mutao. A seguir, breves descries de seu funcionamento: O operador de seleo escolhe cromossomos na populao para se reproduzirem. Quanto maior a utilidade de um cromossomo (ou seja, quo mais bem adaptado no espao de solues ele ), maior a probabilidade de ele ser selecionado para se reproduzir. O operador de crossover seleciona, aleatoriamente, um locus e troca as subseqncias antes e depois desse locus entre dois cromossomos, de maneira a criar dois descendentes que so a mistura dos cdigos genticos dos dois pais. Assim, por exemplo, as seqncias 10000100 e 11111111 podem sofrer crossover aps o terceiro locus de cada uma, gerando os descendentes 10011111 e 11100100. O operador de crossover imita (grosseiramente) a recombinao biolgica do material gentico de dois organismos haplides.

13

Traduo do ingls deception.

61

O operador de mutao troca, aleatoriamente, alguns dos bits de um cromossomo. Por exemplo, a seqncia 00000100 pode ser mudada na sua segunda posio, passando a ser 01000100. A mutao pode ocorrer em cada bit de uma seqncia de acordo com alguma probabilidade, normalmente bastante pequena (por exemplo, 0,01%).

4.6. Um Algoritmo Gentico Bsico

Dado um problema bem-definido, e uma seqncia de bits representativa das solues candidatas, um algoritmo gentico bsico funcionaria da seguinte maneira: Iniciar com uma populao gerada aleatoriamente, com n cromossomos de tamanho l (solues candidatas para o problema dado). Calcular a funo de utilidade f(x) para cada cromossomo x na populao. Repetir os seguintes passos at que n descendentes tenham sido criados: o Selecionar um par de cromossomos pais dentro da populao atual, sendo a probabilidade de seleo uma funo crescente do valor da utilidade. A seleo feita com substituio, ou seja, o mesmo cromossomo pode ser escolhido mais de uma vez para ser pai de um descendente. o Dada a probabilidade pc (a probabilidade de crossover ou taxa de crossover), realizar o cruzamento da seqncia de bits dos dois pais em um ponto escolhido aleatoriamente14, de maneira a formar dois descendentes. Se no acontece o crossover (probabilidade 1- pc), os dois descendentes sero cpias idnticas dos pais. (Note-se que a taxa de crossover definida como a probabilidade de que os dois pais vo ter cruzamento em um ponto nico. Determinadas implementaes de AGs usam crossover mltiplo, no qual a taxa o nmero de pontos no qual acontece cruzamento). o Realizar mutao dos dois descendentes gerados, com probabilidade pm (probabilidade de mutao ou taxa de mutao) para cada locus das seqncias geradas. o Incluir os descendentes gerados na populao. Substituir a populao atual pela nova populao.
14

Da maneira delineada no item 4.5.2 anterior.

62

Retornar ao passo 2. Cada iterao desse processo chamada de gerao. Normalmente, um algoritmo gentico iterado entre 50 e 500 geraes. O conjunto completo de geraes chamado de rodada15. Ao fim de uma rodada, espera-se que haja um ou mais indivduos altamente adaptados na populao (indivduos com alta taxa de utilidade). Dado que h uma forte dose de aleatoriedade em cada gerao, e portanto em cada rodada, duas rodadas com geradores de nmeros aleatrios (ou sementes de geradores) diferentes vo resultar, geralmente, em comportamentos diferentes da populao. Por isso comum se trabalhar com resultados estatsticos de muitas rodadas diferentes de um algoritmo para o mesmo problema. O procedimento anterior a base para a maioria das aplicaes de AGs. H uma variedade de detalhes no-desprezveis que precisam ser levados em conta, como o tamanho da populao e a escolha das taxas de crossover e mutao, e muitas vezes o sucesso do algoritmo na resoluo do problema depende fortemente da escolha acertada desses parmetros. Alm disso, possvel trabalhar com verses mais complexas de AGs, como por exemplo fazer uso de cromossomos codificados de maneira que no a seqncia simples de bits, ou usar operadores de crossover e mutao com caractersticas diferentes (Mitchell, 1998).

4.7. Algoritmos Genticos vs. Mtodos de Busca Tradicionais

At aqui, o termo busca foi usado diversas vezes para descrever aquilo que os AGs fazem. importante, portanto, distinguir esse significado de busca dos outros significados que o termo adquire no contexto da cincia da computao. possvel mencionar pelo menos trs sentidos que a palavra adquire, de certa maneira sobreposta: Busca por dados guardados, onde o problema se achar eficientemente informao guardada em memria. Por exemplo, tome-se uma base de dados bastante grande de nomes e endereos, ordenados de alguma maneira prdeterminada. Qual a melhor maneira de buscar o registro correspondente a um

15

Traduo do ingls run.

63

dado sobrenome? Busca Binria um mtodo para se achar eficientemente o registro desejado. Busca de caminhos, onde o problema encontrar eficientemente um conjunto de aes que levam de um estado inicial dado para um objetivo desejado. Esse tipo de busca crucial para vrios ramos do estudo de inteligncia artificial. Normalmente se trabalha com uma rvore de possibilidades, onde o n raiz representa o estado inicial do problema e as ramificaes representam todos os possveis estados subseqentes do sistema a partir daquele n. Os algoritmos de busca usados nesse contexto so mtodos para encontrar de maneira eficiente o melhor (no caso, o mais curto) caminho entre o n raiz e o estado desejado, ou n objetivo. Alguns algoritmos tpicos para tanto so branch and bound, A*, entre outros. Busca de solues, que uma classe mais geral do que a anterior. A idia aqui encontrar eficientemente uma soluo para um problema dentro de um grande espao de solues candidatas. para esse tipo de problemas que so usados algoritmos genticos. H claramente uma grande diferena entre o primeiro tipo de busca e os dois seguintes. O primeiro trata basicamente de encontrar uma informao que j est claramente guardada em algum lugar. Nos outros dois, o problema encontrar informao que no est explicitamente guardada. Ao contrrio, solues candidatas vo sendo criadas a medida que o processo de busca avana. Para a maioria dos problemas em que h uma rvore de busca, existem simplesmente ramos demais para que se guarde todos na memria. Assim, a rvore de busca criada passo a passo de maneira que depende do algoritmo particular que est sendo aplicado, e o objetivo subjacente encontrar uma soluo tima ou quase-tima atravs do exame de apenas uma pequena poro da rvore total.. Do mesmo modo, quando se est examinando o espao de solues candidatas com um Algoritmo Gentico, nem todas as possveis solues candidatas so criadas e depois avaliadas em sua utilidade. Na verdade, o AG uma ferramenta para se encontrar uma soluo tima ou quasi-tima atravs do exame de uma pequena frao das possveis candidatas. De uma certa maneira, a classificao Busca por solues engloba a classificao Busca de caminhos, j que o caminho atravs de uma rvore de busca

64

normalmente pode ser codificado como uma soluo candidata. No entanto, a separao feita porque a maioria dos problemas do tipo Busca por caminhos resolvida mais facilmente por tcnicas do tipo busca em rvore (como o branch and bound por exemplo) do que por tcnicas do tipo Algoritmo Gentico ou assemelhadas, onde as solues candidatas so explicitamente geradas e avaliadas. No entanto, nem todos os problemas so tratveis com algoritmos do tipo busca em rvore (ou mais genericamente, busca em grafos). Um exemplo o problema de previso da estrutura tridimensional de uma protena a partir da sua sequncia de aminocidos. Para resolver esse problema no necessariamente se precisa saber a exata sequncia de movimentos em que o dobramento da sequncia ocorre apenas se deseja o formato final da protena. O Algoritmo Gentico uma tcnica geral para resoluo de problemas do tipo Busca de solues. Outros exemplos de tcnicas que se prestam ao mesmo propsito so: simulated annealing, tabu search e hill climbing16. No quadro geral das teorias de Inteligncia Artificial, tcnicas gerais (que se prestam a uma grande classe problemas) so chamadas tcnicas fracas, para diferenci-las das tcnicas fortes, que so desenvolvidas especialmente para problemas particulares. De um modo geral, as tcnicas de Busca de solues funcionam do seguinte modo: (i) inicialmente se gera um conjunto de solues candidatas; (ii) seguindo algum critrio de utilidade, avaliam-se as solues candidatas; (iii) baseado na avaliao, decide-se quais solues so mantidas e quais so descartadas e finalmente; (iv) novas variantes so produzidas atravs do uso de algum operador sobre o conjunto restante. O que torna os Algoritmos Genticos uma tcnica distinta das outras uma particular combinao de elementos, quais sejam: busca maciamente paralela dentro da populao, seleo estocstica juntamente com mutao e crossover estocsticos. Vrios outros mtodos incluem um ou vrios desses elementos, mas no essa combinao exata. E justamente ela que faz dos AGs uma tcnica til para o problema que vai se resolver neste trabalho.

16

Nos trs casos se optou pelo termo original em ingls do que tradues como recozimento simulado.

65

5. INTELIGNCIA ARTIFICIAL EM FINANAS: ANLISE DA PESQUISA PRVIA


Os mercados acionrios so um excelente laboratrio para o teste de teorias
George Soros1

5.1. Introduo

Aps introduzir a teoria relevante, tanto na rea de finanas quanto na rea de inteligncia artificial (que obviamente no se preocupa apenas com redes neurais e algoritmos genticos, mas este o foco do presente trabalho), se faz necessrio agora analisar aquilo que j foi estudado sobre o assunto, ou seja, aplicaes tanto de redes neurais quanto de algoritmos genticos a problemas de finanas. Para tanto, ser primeiro necessrio classificar os problemas e modelos utilizados na pesquisa prvia, para ento restringir o foco e examinar mais detidamente o que j se estudou em relao ao problema de previso do mercado de aes e da seleo de portflios. relevante mencionar que em alguns poucos trabalhos, pesquisadores adotaram abordagens semelhantes que se prope utilizar nesse trabalho2, mas no necessariamente os detalhes destes trabalhos sero aplicados aqui. Justamente por isso, neste captulo vamos dividir a anlise: primeiramente abordar o aspecto das redes neurais, tentando tirar concluses sobre como proceder adiante, e posteriormente examinar o aspecto dos algoritmos genticos, e a tambm tomar concluses sobre benefcios e limitaes de resultados passados.

5.2. Redes Neurais em Finanas

Uma das aplicaes mais comuns de redes neurais justamente na rea de finanas e investimentos. Alguns dos problemas mais representativos sendo resolvidos com elas so: previso de falncias, avaliao de risco de emprstimos e hipotecas, previso de mercado (tanto aes quanto ttulos de renda fixa, preos de opes, retornos de capital, anlise tcnica entre outras variantes), prognstico de
1

Apud Bass, 2000.

Por tal abordagem, entenda-se usar redes neurais para prever o mercado e algoritmos genticos para realizar a alocao da carteira.

66

investimentos (retornos), entre outros menos significativos (Zeki-Susac, 1999). Empresas como o Chase Manhattan Bank (Marose, 1990 apud Zeki-Susac, 1999) e American Express (Zahedi, 1993) so algumas das empresas que aplicam eficientemente redes neurais no dia-a-dia. No Brasil, h reportagens mencionando a aplicao de redes neurais3 em alguns bancos, alm de alguns poucos artigos e teses4 acadmicos, mas no est claro nem pde ser estabelecido confiavelmente o uso corrente de redes neurais em grandes empresas. As vrias pesquisas sobre aplicao de redes neurais em finanas provaram, ao longo do tempo, as vantagens do uso da inteligncia artificial sobre o uso de mtodos tradicionais. De acordo com Wong et al. (1997)5, as reas mais freqentes de aplicao de redes neurais so: produo / operaes (53,5%) e finanas (25,4%). Justamente por isso, a literatura razoavelmente abundante, e , a seguir, tentar-se- delinear as principais aplicaes e os principais resultados levantados. Um ponto de partida interessante para o estudo de redes neurais aplicadas previso do mercado o trabalho de Lawrence (1997). O autor proporciona um histrico breve e interessante, delineia adequadamente o problema de previso do mercado e porque as redes so adequadas para a resoluo desse problema. O artigo de Zhang, embora seja de 1998, proporciona uma viso geral do uso de redes neurais em problemas de previso (no s em finanas), fornecendo um compndio de resultados obtidos por diversos autores, a partir de uma bibliografia bastante extensa. Pela amplitude que cobre, referncia obrigatria, e boa parte das concluses a que chega sero mencionadas mais adiante. Partindo da, interessante citar alguns trabalhos genricos, quase tericos, sobre como modelar e projetar redes neurais para prever sries temporais de ativos financeiros. Boyd e Kaastra (1997) definem 8 etapas para a construo de um bom
3

A extinta revista Negcios Exame publicou em 2000 a reportagem Papo Cabea (edio 02) onde mencionava o Banco Votorantim como um usurio de redes neurais na previso de mercado. Conversas do autor com pessoas que trabalham na referida instituio levaram concluso de que a reportagem talvez tenha sido apenas uma questo de marketing, e que se o banco realmente utilizou Redes Neurais, j as abandonou.

Notadamente Freitas & Souza (2002) que aplicam redes neurais precificao de opes, Raposo e Cruz (1999), que tentam realizar anlise fundamentalista com redes neurais, e Lazo Lazo (2000), cujo trabalho o mais bem desenvolvido, que usa redes neurais e algoritmos genticos em carteiras de aes. H ainda o trabalho de McNelis (1996), que no um autor brasileiro, e usou redes neurais para estudar determinados padres de comportamento do mercado brasileiro poca da chamada crise Tequila, ocorrida em 1995 por conta da desvalorizao do peso mexicano.
5

Reproduzido em Zeki-Susac (1999).

67

modelo de previso, e Yao e Tan (2002 e 2002b) determinam 7 passos para a construo de modelos de previso com redes neurais. De um modo geral, ambos enfatizam a importncia do adequado pr-processamento dos dados, da escolha e teste dos parmetros de treinamento da rede, da determinao de dados de treinamento, validao e teste dos resultados. A maioria das recomendaes desses trabalhos sero utilizadas no captulo 6. Estreitando o foco, h uma diversidade de trabalhos de aplicao de redes neurais a previso em finanas. Alguns desses trabalhos, pelo escopo e flego, valem ser citados: Refenes (1995) talvez o primeiro trabalho denso sobre a aplicao das redes ao mercado de capitais o autor traz captulos sobre diversos tipos de problemas, desde previso de falncias at de preos de aes, detalhando tcnicas de pr-processamento, definio de janela de experimentao, etc., quase sempre com bons resultados das previses; Zeki-Susac (1999), que testa diversas configuraes de redes neurais de maneira controlada sobre o mesmo problema (previso dos preos das aes da IBM) e conclui que as redes Backpropagation so as melhores; e Shadbolt e Taylor (2003), cujo livro trata de todo o processo de previso em finanas, discutindo tcnicas estatsticas preliminares, aplicaes de redes Backpropagation, o uso de comits de redes neurais, tcnicas de otimizao e micro-modelagem de mercado os autores so donos de uma empresa que comercializa, por assim dizer, os resultados de suas previses. Alm destes trabalhos de maior extenso e portanto mais densos, h uma grande variedade de papers de journals internacionais, com aplicaes variadas e metodologias idem. Boa parte destes trabalhos apresenta bons resultados em termos de retornos obtidos a partir das previses realizadas. A amplitude de problemas a que as redes neurais so aplicadas permite constatar a flexibilidade e robustez. A tabela 1 a seguir traz um compndio destes trabalhos. Esto descritos o tipo de aplicao com que o artigo lida, o tipo de rede neural que usa para resolver o problema (includos detalhes de metodologia relevantes) e os tipos e quantidades de inputs aplicados s redes. Estes detalhes so importantes para poder traar linhas comuns maioria dos trabalhos, e tomar indicaes para o projeto do sistema de previso baseado em redes neurais do captulo 6.

68

Trabalho
Previso de aes do CAC 40 (ndice da Bolsa de Paris). Rede Backpropagation , 80-12-12-1, incorpora propriedades Previso de taxas de cmbio e ttulos de renda fixa de vrios 80 Preos passados e Indicadores como Auto-momentum , "Regra de Freud" e "Regra de Jung" tcnicos. pases. para alterar a funo objetivo da rede. Previso dos preos de aes da Bolsa de Shangai. Previso de oportunidades de arbitragem no Nikkei 225 (Bolsa de Tquio). Previso de taxas de cmbio de vrias moedas. Previso do futuro de T-Bond (ttulo de renda fixa dos EUA). Previso dos valores do FTSE e S&P 500. Prever os retornos de aes da Bovespa, e us-los como input para um sistema de AGs para alocao da carteira. Previso de preos das aes da AT&T. Previso dos retornos de aes do setor txtil na Bovespa. Previso de diversos ativos financeiros (taxas de cmbio, ttulos de renda fixa, aes). Construir um sistema de previso de retornos de ttulos de renda fixa. Previso dos valores do S&P 500, Dow Jones, Nasdaq. Rede fuzzy -neural com 5 camadas. Redes Backpropagation (diversas configuraes). Redes Backpropagation , com Algoritmos Gentico para treinamento e otimizao da topologia da rede. Rede Recorrente 3-5-2. Rede Backpropagation, n de neurnios na camada escondida = (n inputs + n outputs )/2. Preos passados. Rede Backpropagation, algoritmo de treinamento por gradiente conjugado, inicializao de pesos por regresso mltipla. 10 Indicadores tcnicos. Rede Backpropagation , com momentum de treinamento e 4 camadas. Preos passados de 10 dias.

Objetivo

Rede Neural

Inputs

Armano et al., 2002

Buscema e Sacco, 2000

Chan et al., 2002

Chen et al, 2001

Giles et al., 1997

Preos passados agrupados por Mapas de Kohonen. 5 Indicadores tcnicos.

Harland, 2000

Kalyvas, 2001

Redes Backpropagation resiliente, com Algoritmos Genticos Preos Passados e indicadores tcnicos tratados com PCA. para treinamento e otimizao da topologia da rede. Redes Backpropagation, com e sem Filtro de Kalman, 8~12 neurnios na camada escondida. Preos passados dos 10 ltimos dias..

Lazo Lazo, 2000

Moiso e Pires, 2000

Sistema Conjugado: Mapas Auto-Organizveis de Kohonen e Preos em D-1. Rede de Boltzmann. Dados trimestrais de balanos das empresas. Conjunto de preos passados, indicadores tcnicos e indicadores fundamentalistas. Preos passados e dados econmicos tratados com PCA.. 2 Mdias Mveis de preos, curto e longo prazo. 8 Indicadores tcnicos. Rede de Funo de Base Radial (RBF). Combinao de Rede de Hopfield (probablistica) e Rede de Boltzmann. Redes de Funo de Base Radial (RBF), com regularizao por funo Softmax . Preos passados manipulados com CCA (Curvilinear Component Analysis ). Preos em D-1. Indicadores tcnicos.

Raposo e Cruz, 2000

Refenes (Ed.), 1995

Tabela 1: Pesquisa Prvia de Aplicaes de Redes Neurais


Combinao de ferramentas estatsticas com modelos de redes neurais Backpropagation trabalhando em "comit". Redes Backpropagation , com Algoritmos Gentico para treinamento e otimizao da topologia da rede, funo objetivo no-contnua. 2 Tipos: Rede Backpropagation resiliente, 10~20 neurnios na camada escondida & Rede Recorrente, 10~13 neurnios na camada escondida. Previso de preos de 3 aes do Dow Jones. Previso do ndice SBF 250 (Bolsa de Paris). Previso de preos de 15 aes da Bolsa de Tquio. Previso de taxas de cmbio de vrias moedas. Prever os retornos das aes da IBM.

Shadbolt e Taylor (Eds.), 2003

Skabar e Cloete, 2001

Thawornwong et al., 2002

Verleyesen et al., 1999

Watada e Oda, 2000

Xu e Cheng, 1997

Zeki-Susac, 1999

Vrios tipos: Backpropagation , Funo de Base Radial (RBF), Recorrente, Modular, General Regression , Probablistica. Usa tcnicas de poda de rede.

Indicadores fundamentalistas e tcnicos, Preos passados

69

Como possvel constatar da tabela, o algoritmo Backpropagation o mais utilizado, com diversas metodologias e caractersticas diferentes. De um modo geral, os parmetros so definidos de maneira heurstica, tanto o nmero de camadas escondidas quanto o nmero de neurnios dentro dessas camadas, alm de taxas de aprendizagem e momentum. So poucos os autores que trabalham com tcnicas mais avanadas dentro do paradigma da retropropagao, como regularizao, early stopping, funo softmax, Levenberg-Marquardt, entre outras. Aqueles que o fazem normalmente constatam a melhora sensvel dos resultados obtidos. Assim, no captulo 6 algumas dessas tcnicas sero introduzidas e aplicadas. Quanto aos inputs, a variao entre diferentes trabalhos bastante pronunciada, indo desde oitenta at apenas um. De um modo geral, a maioria trabalha com combinaes de preos passados e indicadores tcnicos. Aqui h indicaes menos claras sobre como proceder, logo a perspectiva adotada no captulo 6 ser proprietria, e explicada adiante.

5.3. Algoritmos Genticos em Finanas

Embora menos aplicados que as redes neurais, os algoritmos genticos tambm foram largamente estudados em aplicaes rea de finanas. Como foi visto no captulo 4, essa ferramenta excelente para problemas onde h um espao de busca muito grande a ser varrido, e tal busca deve ser realizada em curto perodo de tempo. Assim, no surpresa que as trs principais aplicaes de AGs em finanas encontradas na literatura sejam justamente desse tipo. Uma classificao destes trabalhos pode ter a seguinte estrutura: Seleo de Portflios: embora a mais importante no contexto do presente trabalho, essa a aplicao menos comum de algoritmos genticos encontrada na literatura. Foram levantados trs trabalhos que aplicam Algoritmos Genticos ao problema de alocao tima de ativos. O primeiro e talvez, mais importante, o de Lazo Lazo (2000), como j citado, bastante semelhante proposta do presente trabalho, usando redes neurais para prever retornos de ativos e AGs para realizar a alocao, tendo como base aes do ndice Ibovespa. Embora os resultados sejam bons, o autor falha ao no reconhecer determinadas

70

caractersticas que fazem das carteiras que obteve impraticveis no mercado real, notadamente a questo da liquidez6. H ainda o trabalho de Freedman e DiGiorgio (1993) que comparam vrias heursticas aplicadas ao problema de otimizao de carteiras, concluindo que AGs esto entre as melhores, e conseguem resolver o problema adequadamente. Por fim, Korczak e Lipinski (2001), tambm usam algoritmos genticos para seleo de carteiras, realizando a previso de retornos tambm com modelos baseados em AGs os resultados se mostram positivos, a partir de dados de aes da Bolsa de Paris. Gerao de Regras para Compra/Venda de Ativos: a aplicao que agrupa o maior nmero de trabalhos de pesquisa, no campo de aplicaes de algoritmos genticos finanas. A premissa por trs disso que, como os AGs so heursticas eficientes para buscar espaos de busca muito grandes, podem ser usados para buscar regras eficientes de ordens de Compra e Venda de ativos financeiros. De um modo geral, tais trabalhos partem de uma base inicial de regras simples, e tentam buscar parmetros e conjuntos de regras que otimizem o resultado financeiro das operaes. Nesse sentido, Armano et al (2002) trabalham com experts genticos, gerando dinamicamente conjuntos de regras para operao na Bolsa de Milo; Becker e Seshadri (2002) geram regras para operao no S&P 500; Thawornwong (2002), Bhattacharyya et al. (2002), Li e Tsang (1999, 2000 e 2001), e Korczak e Roger (2001) tambm seguem pelo mesmo caminho, de um modo geral com resultados positivos. Seguem todos o caminho de Allen e Karjalanien (1999), a referncia bsica nesse tipo de aplicao de Algoritmos Genticos. Otimizao da topologia de Redes Neurais: um dos problemas levantados recorrentemente na literatura o da dificuldade de se usar funes objetivo notriviais em redes neurais, porque, de um modo geral, os algoritmos de treinamento requerem funes diferenciveis contnuas para funcionar

adequadamente. Assim, vrios pesquisadores optam por utliizar algoritmos genticos para encontrar um conjunto quase-timos de pesos para a rede, ou em outras palavras, para otimizar a topologia da rede neural. Essa perspectiva hbrida mostra ter bons resultados, como evidenciado por Skabar e Cloete (2001), que a
Em outras palavras: as aes que o modelo de Lazo Lazo aloca nas carteiras simuladas no poderiam ser compradas no mercado naquele momento, basicamente por ausncia completa de liquidez dos papis.
6

71

aplicam previso do S&P500 e do Dow Jones, e Harland (2000), que a aplicou a dados de futuros de taxa de juros.

De um modo geral, as aplicaes de algoritmos genticos a finanas se mostram eficientes, por fazer uso da caracterstica fundamental dos algoritmos genticos: a capacidade de buscar com rapidez e eficincia espaos de estado bastante amplos. Contudo, justamente por serem menos comuns, h menos indicaes de como projetar um modelo de AGs eficiente, e portanto o cuidado na modelagem do captulo 6 ter de ser redobrado.

5.4. Pesquisa Prvia: Que Caminhos Seguir?

Aps descrever sucintamente a pesquisa prvia lidando com aplicaes de redes neurais e algoritmos genticos finanas, algumas concluses podem ser tiradas, na tentativa de encontrar guias teis para seguir e armadilhas para evitar.

5.4.1. Pontos Fortes

Os principais benefcios da anlise da pesquisa prvia so relativos ao campo de estudo e metodologia usada. De um modo geral, possvel concluir que as Redes Neurais so capazes de lidar com dados incertos e com rudo, de uma forma robusta e ao mesmo tempo flexvel. Portanto, so ferramentas adequadas para a previso dos retornos de ativos no mercado. Uma anlise comparativa dos trabalhos mostra que o algoritmo Backpropagation o mais utilizado para aplicaes em finanas. Embora isto possa ser atribudo facilidade de se trabalhar com ele, e sua operao ser razoavelmente intuitiva, no necessariamente se poderia afirmar que , a priori, o melhor tipo de rede para o problema. Contudo, o trabalho que comparou diversos tipos de redes de maneira controlada e cuidadosa (Zeki-Susac, 1999), conclui ao fim que realmente, o algoritmo o que apresenta melhores resultados. Embora longe de ser definitivo, este representa um guia claro sobre que caminho seguir na modelagem. Alm disso, a existncia de papers genricos sobre a questo proporciona guias importantes para o

72

projeto de um modelo de previso de ativos usando redes neurais (embora Boyd e Kaastra, 1997 e Yao e Tan, 2001 e 2001b, sejam as principais referncias, Refenes, 1995 e Shadbolt e Taylor, 2003, pela sua amplitude, tambm podem ser considerados referncias). Desde o pr-processamento dos dados at a anlise e validao final dos resultados, h dicas especficas sobre como proceder. Boa parte delas vai ser aplicada no captulo 6. Quanto ao uso de AGs para seleo de ativos e alocao, o escopo dos trabalhos mais limitado, mas a anlise permite concluir que so sim adequados para resolver o problema de Markowitz, inclusive com vantagens sobre outras heursticas (Freedman e DiGiorgio, 1993). Alm disso, no mesmo trabalho, foi usado como funo objetivo do Algoritmo Gentico o ndice de Sharpe (para avaliar a utilidade, no contexto definido no captulo 4, dos cromossomos), o que proporciona uma importante guia para os modelos a serem desenvolvidos no captulo 6.

5.4.2. Limitaes

Algumas das limitaes do uso de Redes Neurais artificiais na previso do mercado de aes so: primeiro, elas requerem um elevado nmero de casos passados em seu treinamento (Zeki-Susac, 1999), o que pode ser um problema em mercados emergentes com histrico pequeno, como o caso do Brasil; segundo, a melhor arquitetura de rede para a resoluo do problema desconhecida (o trabalho de Zeki-Susac, 1999 uma tentativa de resolver a questo), embora talvez isso seja irrelevante (caso se adote a perspectiva de Shadbolt e Taylor (Eds.), 2003: usar comits de redes, aplicando diversas arquiteturas diferentes); terceiro, o projeto de redes e dos dados tem de ser extremamente cuidadoso, sob pena de os resultados serem enganosos (Refenes (Ed.), 1995; Boyd e Kaastra, 1996). A primeira limitao est ligada ao problema de disponibilidade de dados: como citado, dados dirios de qualidade no so facilmente obtidos. Vale dizer que no Brasil, algumas das empresas de maior relevncia no mercado de aes atual no existem h muitos anos (exemplos: Telemar, a ao de maior volume atualmente na Bovespa, existe apenas desde 1999; Globocabo idem). A segunda limitao, embora relevante, aparentemente pode ser contornada sem grandes problemas: talvez no

73

seja necessrio encontrar a melhor rede neural o esforo para tanto pode ser muito maior do que o ganho marginal obtido. No caso, adota-se uma perspectiva heurstica para o problema. A terceira limitao talvez seja a mais importante de todas: a maior parte dos estudos anteriores pesquisados utiliza de um conjunto diferente de caractersticas para os dados e topologias de rede. Os trabalhos de Boyd e Kaastra (1996) e Yao e Tan (2001 e 2001b) fornecem guias genricos para a aplicao de redes neurais previso de sries temporais em finanas, e permitem evitar muitas das armadilhas em que pesquisadores anteriores podem ter cado. Ainda assim, muito do trabalho depende da adequada experimentao pelo autor com o modelo. Vale ainda dizer que as redes neurais padecem, desde sua criao l nos idos dos anos 50, de um problema: seu aspecto de caixa-preta (Haykin, 2000). Essa uma crtica constante na literatura de aplicaes: embora muitas vezes proporcionem bons resultados, ningum consegue apontar as razes inerentes para tanto7 No caso dos algoritmos genticos, duas limitaes principais podem ser levantadas: (i) a ausncia de trabalhos amplos e detalhados sobre a aplicao de AGs ao problema de seleo de carteiras (embora Lazo Lazo, 2000, os tenha utilizado, os resultados que obteve no so confiveis, basicamente por questes de liquidez do mercado); (ii) a ausncia de plataformas comuns de software para uso de AGs, que permitam ao pesquisador gastar tempo no modelo e no no cdigo do programa (diferentemente do caso das Redes Neurais, onde o Toolbox para MATLAB claramente a plataforma mais utilizada pelos pesquisadores, sendo flexvel o bastante para acomodar diversos tipos de modelos). A primeira limitao aparentemente incontornvel a priori: espera-se que os resultados deste trabalho possam contribuir para a questo. A segunda idem: no possvel identficar uma plataforma, contudo aquela que ser utlizada a disponvel. No escopo deste trabalho tratar deste segundo problema, embora este seja de relevncia para o campo de inteligncia artifical. De todo modo, ao levantar a limitao, busca-se, simplesmente, saber antecipadamente em que terreno se movem os resultados obtidos.
7

Entre outros, citam o problema: Armano et al. (2002); Buscema e Sacco (2000); Harland (2000); Lawrence (1997). Alguns dos autores que usam AGs para otimizar topologia de redes neurais tentam dar respostas ao problema. possvel citar Korczak e Roger (2001) nesse sentido, embora os resultados sejam, no mximo, inconclusivos.

74

5.4.3. Concluses

Da pesquisa prvia, possvel tirar as seguintes concluses: (i) Redes Neurais so mtodos eficientes na tarefa de prever o mercado de aes, mas no h uma receita que permita ligar determinados tipos de problemas a determinadas metodologias de previso; (ii) o algoritmo mais aplicado para a previso de retornos do mercado de aes o Backpropagation, e coincidentemente, no trabalho mais detalhado e que analisou diversos tipos de redes, foi justamente ele o que apresentou melhores resultados (Zeki-Susac, 1999); (iii) a medida de avaliao mais comumente utilizada a taxa de acurcia (ou acertos da previso feita pelas redes); (iv) os principais benefcios das redes neurais vm da sua capacidade de fazer previses mesmo com dados no precisos e incertos, ou em dados com alta taxa de rudo; (v) a combinao de redes neurais com outros mtodos de inteligncia artificial possvel, e as aplicaes conjuntas com algoritmos genticos so muitas; (vi) o uso de algoritmos genticos para alocao de carteiras no um tpico to comum na pesquisa prvia, mas seus benefcios tambm so claros, dada sua capacidade de varrer rpida e eficientemente espaos de busca muito grandes, inclusive com vantagens sobre outras heursticas (Lazo Lazo, 2000; Korczak e Lipinski 2001; Freedman e DiGiorgio, 1993). Muitos autores enfatizam a necessidade de trabalhar com muitos dados para conseguir resultados mais consistentes com as redes neurais (Shadbolt e Taylor (Eds.), 2003; Zeki-Susac, 1999). Contudo, no est claro se isto realmente melhoraria os resultados, dado que as dinmicas econmicas (que supostamente condicionam os preos dos ativos financeiros) so mutveis ao longo do tempo. Como enfatizam Armano et al. (2002), uma perspectiva melhor seria quebrar o problema de previso em dois: um macro, na tentativa de descobrir a tendncia geral do mercado, e outro micro, de trabalhar com os dados de alta frequncia do cotidiano. Outra recomendao comum na pesquisa prvia trata de se evitar o chamado data snooping, ou seja, adaptar os dados ao modelo, e no vice-versa. Buscema e Sacco (2000) enfatizam a necessidade de se testar o modelo com inmeras combinaes de conjuntos de dados de teste e validao, dado que o tamanho da janela de dados usada para validao pode influenciar decisivamente os

75

resultados obtidos. Vale dizer que determinadas caractersticas que podem ser usadas com o algoritmo Backpropagation, como o Early Stopping e a Regularizao (Demuth e Beale, 2001) permitem contornar esse problema. Alm desses cuidados com o tratamento dos dados, possvel dizer que ainda h muito espao no campo de aplicaes de redes neurais e algoritmos genticos aos problemas de previso do mercado e alocao de carteiras. Est claro que diversos algoritmos de redes neurais podem, e devem, ser testados nesse campo: por exemplo, as aplicaes de Mapas Auto-Organizveis de Kohonen so raras ( possvel citar Moiso e Pires, 2001 e Giles et al., 1997), redes probablisticas (apenas Zeki-Susac, 1999 faz uso delas), alm de tratamentos de redes em comit, talvez a melhor perspectiva para o problema (apenas Shadbolt e Taylor (Eds.), 2003, citam esse tipo de ferramenta). No campo de algoritmos genticos, ainda so raros os trabalhos que os aplicam ao problema de alocao de carteiras. Isso talvez reflita uma caracterstica mais geral da rea de pesquisa em finanas em geral: o problema de previso tem bastante mais apelo intelectual que o problema de alocao, e por isso muito mais esforos, recursos, e consequentemente, resultados publicados, so dedicados ao primeiro. A importncia do trabalho de Markowitz e Sharpe no pode ser relevada, contudo, e o que fica claro que uma alocao adequada pode ser to, ou mais, adequada, que uma previso correta do mercado8.

O autor j leu estudos realizados pelo banco Merrill Lynch que atribuam 70% dos retornos totais de um portflio correta alocao, 25% correta escolha de papis individuais, e apenas 5% ao correto timing de compra e venda desses papis. Na falta de trabalhos acadmicos aprofundados sobre a questo na bibliografia, fica apenas o registro informal.

76

6.

MODELOS & EXPERIMENTOS


Prever muito difcil. Especialmente o futuro.
Niels Bohr1

6.1. Introduo

Aps desenvolver as teorias necessrias para a construo de um modelo, baseado em redes neurais e algoritmos genticos, de gesto de carteiras de aes, vaise agora mostrar, passo a passo, os detalhes de tal modelo e sua aplicao a dados reais de aes do mercado brasileiro. O captulo est estruturado do seguinte modo: inicialmente vai-se discutir os dados, sua escolha e o tratamento preliminar dado a eles. A seguir, ser apresentado o modelo bsico de previso de retornos, que utiliza redes neurais para, a partir do treinamento usando dados passados, realizar previses. No centro deste modelo, est o algoritmo de treinamento usado pela rede. Dada a ausncia de paradigmas bemestabelecidos, conforme discutido no captulo 5, sero explicadas e testadas cinco variaes do algoritmo Backpropagation, buscando determinar qual algoritmo traz os melhores resultados (e se h variaes relevantes entre as aes, por exemplo, para a ao A o algoritmo X o melhor, enquanto para a ao B o algoritmo Y traz performance superior). Alm disso, sero testadas diversas configuraes de neurnios na camada escondida, de modo a determinar qual a influncia disto na performance preditiva do modelo. Ao fim, ser escolhido o algoritmo de treinamento que apresentar melhores resultados (se que h diferenas) e as previses geradas por tal algoritmo sero armazenadas, para serem alimentadas no modelo de alocao. Alm da previso de retornos, a previso de riscos tambm parte integrante do trabalho de alocao e gesto de carteiras de aes. Assim, um modelo GARCH vai ser apresentado e implementado, para realizar a previso de risco para as aes. Tal modelo ser implementado usando uma janela deslizante, de modo a capturar o comportamento dinmico e variante no tempo que o risco apresenta. Novamente, os resultados sero armazenados para serem alimentados ao modelo de alocao.
1

Apud Stewart, I. Does God Play Dice?, Nova York: Penguin Books, 1997.

77

Por fim, o modelo de alocao ser desenvolvido, fazendo uso de algoritmos genticos para a busca, no espao de combinaes possveis, das carteiras que otimizam a relao risco-retorno de um investidor hipottico. A funo de utilidade aplicada ser o ndice de Sharpe (vide seo 2.7), uma maneira simples e eficiente de computar a relao risco-retorno. O modelo ser atualizado dinamicamente, replicando o processo de gesto que ocorreria no dia-a-dia: ao fim de um dia, os modelos de previso, tanto de risco quanto de retorno, so atualizados, e so buscadas novas carteiras timas (ou quasi-timas) para o dia seguinte. Ao fim, o resultado financeiro desta gesto ser computado, na tentativa de determinar se efetivamente os modelos so capazes de gerar bons retornos.

6.2. Dados

A primeira questo que se coloca, antes mesmo da construo dos modelos propriamente ditos, a dos dados que sero usados para test-los. De nada adianta desenvolver modelos complexos e sofisticados se no h dados para o teste, validao e calibrao dos modelos. Seria um esforo intelectual com pouco valor prtico justamente o contrrio daquilo que se prope o presente trabalho. Dito isto, foram escolhidas 25 aes, negociadas na Bovespa (Bolsa de So Paulo). Dado o pequeno tamanho do mercado brasileiro, no vivel trabalhar com mais aes, visto que uma boa parte dos resultados seria irreal e inaplicveis na prtica por exemplo, o modelo ia determinar a alocao de recursos em uma ao cuja liquidez extremamente restrita2. De um modo geral, o tipo de previso e modelagem de que trata este trabalho aplicvel apenas em mercados bastante lquidos, onde a informao flui livremente (ou seja, no h informao privilegiada por trs das cotaes), onde possvel comprar e vender sem alterar as cotaes de mercado, e onde h liquidez suficiente para que, dado uma oferta (um bid) e uma demanda (o correspondente ask), seja possvel entrar e sair do mercado a qualquer momento.
2

Lazo Lazo (2001) por exemplo, incorre neste erro: constri um modelo que determina a compra de aes como Bemge ON e Ericsson PN papis cuja liquidez, poca analisada, era extremamente restrita, ou seja, no podiam ser compradas/vendidas em quantidades razoveis, sem expressivas alteraes nas cotaes. Notadamente no caso destas duas aes, os papis no so mais disponveis as empresas tiraram suas aes da Bolsa (no caso do Bemge, o banco foi privatizado e incorporado pelo Ita).

78

6.2.1. Escolha

A escolha das aes a serem utilizadas para a experimentao dos modelos levou em conta alguns fatores fundamentais, quais sejam: Liquidez: talvez seja o aspecto mais importante dentre todos s h sentido em prever o comportamento de uma ao se h a possibilidade de se comprar e vender livremente esta ao em quantidades razoveis. Se o papel ilquido, qualquer previso cai por terra, dado que o spread do bid and ask to largo que o retorno almejado perdido no momento da execuo da ordem de compra ou venda. Em termos simples, o bid representa o preo que o melhor comprador est disposto a pagar, e o ask o preo que o vendedor pede para realizar a venda. O spread a diferena entre estes dois preos. As ordens so executadas conforme compradores se dispem a pagar o preo pedido, ou vendedores se dispem a vender no preo que os compradores esto pagando. Esta relao dinmica determina o movimento das cotaes de uma ao ao longo do dia. Quando h liquidez, os spreads so estreitos, permitindo a negociao com facilidade. Os fatores determinantes da liquidez so vrios, podendo ser de carter fundamental (por exemplo, as aes da Petrobrs, tanto ON quanto PN, tm alta liquidez devido importncia da empresa para a economia brasileira), de carter puramente tcnico (a ao de maior liquidez da Bovespa atualmente Telemar PN - TNLP4 -, devido ao fato de haver um ativo mercado de opes sobre esta ao3) ou ainda devido moda (no ano de 2000, a ao de maior liquidez era Globocabo PN PLIM4 devido bolha de Internet). Todas as 25 aes escolhidas como dados-base deste trabalho possuem boa liquidez. Existncia de Histrico: este aspecto est diretamente ligado utilizao de modelos de redes neurais para a previso de retornos. necessrio treinar a rede neural com padres passados, de modo que ela consiga capturar estes padres na sua topologia de pesos, e quando apresentada com novos dados, possa realizar boas previses para o futuro. Assim, absolutamente fundamental a existncia de um longo histrico de cotaes para cada uma das aes. Para os fins deste trabalho, esto sendo utilizados dados entre 10/05/1999 e 10/10/2003, formando um conjunto de 1.100 cotaes para cada uma das 25 aes escolhidas. Explicitamente, optou-se
No mercado de opes, so negociados os direitos de comprar (chamados de calls) e de vender (puts) uma determinada ao em uma data futura pr-determinada.
3

79

por no usar mais dados (o que talvez implicasse em melhores resultados de previses), pelo fato de que seria necessrio usar cotaes anteriores a 1999. Sabidamente, no comeo daquele ano, o Brasil passou por uma mega-desvalorizao cambial, alterando estruturalmente as condies da economia brasileira, e conseqentemente do mercado acionrio logo, padres de preos anteriores a 1999 no agregariam informao de boa qualidade para a previso do mercado nas condies atuais. Setor da Economia: alm da importncia da liquidez e de um histrico estabelecido de cotaes, buscou-se escolher aes de vrios setores econmicos diferentes, de modo a estabelecer uma base ampla de diferentes empresas para a constituio de portflios. Dados estes requisitos, foram escolhidas 25 aes para serem objeto de anlise e teste dos modelos desenvolvidos. A seguir, so apresentados as aes, os respectivos cdigos e setores econmicos em que atuam as empresas, alm de um campo indicando se so empresas estatais ou privadas:
Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4 EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3 PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5 Nome Aracruz ON Banco do Brasil ON Bradesco PN Belgo-Mineira PN Cemig PN Copel PNB Souza Cruz ON CSN ON Siderrgica Tubaro PN Embratel Part. PN Eletrobrs PNB Embraer PN Fosfrtil PN Itaubanco PN Itasa PN Lojas Americanas PN Po de Acar PN Petrobrs ON Petrobrs PN Sabesp ON Telesp PN Telemar PN Telesp Celular PN Usiminas PNA Vale do Rio Doce PNA Setor Papel e Celulose Bancos Bancos Siderurgia Energia Energia Consumo Siderurgia Siderurgia Telecomunicaes Energia Aviao Fertilizantes Bancos Holding Varejo Varejo Petrleo Petrleo Saneamento Telecomunicaes Telecomunicaes Telecomunicaes Siderurgia Minerao Estatal X

X X

X X X

Tabela 2: Aes Escolhidas para Experimentos com Modelos

80

Para realizar as previses de preos futuros das aes, no apenas os preos passados sero utilizados. Partindo do princpio explicitado teoricamente no modelo APT (vide seo 2.5.3), foram escolhidos alguns fatores que podem auxiliar na definio da dinmica de comportamento dos preos das aes, e portanto poderiam conter informao til para a realizao de previses. Assim, foram levantadas algumas outras sries temporais, que supostamente poderiam auxiliar a tarefa de previso dos preos futuros. So elas: Cotao mxima e mnima: alm da cotao mdia, que representa o preo efetivo da ao X na data Y, tambm sero usadas as cotaes mxima e mnima, que agregam a informao de quais os mximos e mnimos que o mercado esteve disposto a pagar por um determinado papel. Volume Financeiro negociado: representa o volume total financeiro negociado da ao X naquele dia. Pode trazer informao sobre tendncia de movimento da ao: quando uma alta (ou baixa) relevante est prestes a acontecer, normalmente existe um aumento do volume financeiro negociado. Cotao do dlar: aps 1999, a cotao do dlar (ou seja, a relao entre o real e o dlar) flutua livremente no mercado, e d indicaes fortes dos rumos econmicos do pas e portanto dos mercados, podendo indicar tambm as tendncias para a Bolsa de Valores. Neste trabalho, ser utilizada a cotao diria da PTAX, que a oficial do Banco Central do Brasil para transaes financeiras4. Taxas de Juros de curto e longo prazo: alm da cotao do dlar, outro preo fundamental da economia dado pela taxa de juros. Assim, til saber a evoluo das taxas de juros da economia, que podem indicar crescimento ou recesso, afetando diretamente as possibilidades de crescimento dos lucros das empresas e portanto da valorizao de suas aes. Para os fins deste trabalho, sero utilizadas duas proxies da taxa de juros da economia: uma para indicar a taxa de juros de curtssimo prazo, outra para indicar a taxa de juros de longo prazo. So dadas pelas cotaes de swap pr x DI para 30 dias (curto prazo) e 360 dias (longo prazo)5. Essas cotaes indicam efetivamente as taxas em que as empresas de grande porte conseguem tomar emprstimos para financiar seus investimentos.
4

Em termos tcnicos, ser utilizada a cotao de venda do dlar comercial, apurada atravs da transao PTAX800 do Sisbacen, o Sistema de Informaes do Banco Central. Ambas taxas so apuradas diariamente no mercado e divulgadas pela BM&F Bolsa de Mercadorias & Futuros.

81

ndices de Bolsa de Valores nacionais e internacionais: alm de dados especficos de cada ao, til ter informaes sobre o mercado em geral, tanto o brasileiro quanto o americano, o maior mercado de aes do mundo. Para tanto, sries de dados do ndice Bovespa (ou Ibovespa), do Dow Jones Industrials6, do S&P 5007 e do Nasdaq8 sero utilizadas para agregar informao sobre a performance das bolsas de valores, que se supe podem afetar os preos das aes escolhidas. Assim, para cada uma das 25 aes, ao todo h 11 sries temporais que se espera, produzam informao que ajude o modelo de redes neurais a prever as cotaes futuras. A tabela a seguir apresenta cada uma das sries usadas:
Dado
Preo Mdio da Ao Preo Mximo da Ao Preo Mnimo da Ao Volume Negociado Cotao do Dlar Taxa de Juros de 30 dias

Comentrio Indica o valor da ao numa data especfica. Indica o valor mais alto da ao, naquela data - banda superior que o preo atingiu. Indica o valor mais baixo da ao, naquela data - banda inferior que o preo atingiu. Indica o volume financeiro movimentado pela ao - denota interesse de outros investidores nela. Preo fundamental da economia brasileira, indica interesse de investidores estrangeiros no pas (e vice-versa). Indica perspectivas econmicas (capacidade de crescimento) de curto prazo.

Taxa de Juros de 360 dias Indica perspectivas econmicas de longo prazo. ndice Bovespa ndice Dow Jones Industrials ndice S&P 500 ndice Nasdaq 100

Indica tendncia geral da Bolsa de Valores de So Paulo. Indica tendncia das principais aes da Bolsa de Nova York. Indica tendncia do mercado acionrio americano como um todo. Indica tendncia das empresas de tecnologia americanas.

Tabela 3: Tipos de Dados usados como Inputs

Na seo 6.3.2, vai ser discutido o pr-processamento realizado antes de tais dados serem introduzidos no modelo, e ficar claro como apenas a informao que tem relevncia na explicao das cotaes de cada ao ser efetivamente utilizada. De todo modo, como no h como saber a priori qual informao mais relevante,

ndice das 30 principais empresas negociadas na Bolsa de Nova York (NYSE).

ndice calculado pela Standard & Poors, com as 500 principais empresas do mercado acionrio americano. geralmente tomado como a melhor proxy da performance do mercado. ndice das 100 principais empresas de tecnologia.

82

buscou-se levantar a maior quantidade de dados possveis, atravs de uma anlise qualitativa. O refinamento quantitativo de tal anlise ser realizado posteriormente.

6.2.2. Pr-Processamento

Escolhidos os dados a serem utilizados para a aplicao dos modelos, estes foram buscados em um banco de dados de sries histricas de ativos financeiros9. Contudo, nem todas as sries estavam perfeitamente completas, ou havia determinadas inconsistncias entre elas, o que determinou a necessidade de realizao de um prprocessamento dos dados, antes de estes poderem ser usados nos modelos que sero apresentados a seguir. Os dois principais problemas eram: ausncia de cotaes em determinadas datas, e datas em que apenas um dos mercados opera. No primeiro caso, a causa a ausncia de negcios em determinados dias. A soluo adotar o preo mdio do dia anterior como o preo daquele dia em que no houve negcios ou seja, a melhor aproximao do valor daquela ao o ltimo preo mdio dela. Afinal, no possvel saber a razo pela qual no houve negcios, e deve-se trabalhar com a informao que est disponvel. Para o segundo problema, a soluo adotada foi ignorar as cotaes dos mercados nessas datas por exemplo, no dia 31 de dezembro de 2002, o Dow Jones, S&P e Nasdaq estavam abertos, assim como o dlar, enquanto a Bovespa estava fechada, logo no h cotaes nessa data para as aes. Assim, ignorou-se os dados desta data, e sups-se que os mercados no estivessem abertos. Finalizado este trabalho preliminar de seleo, coleta e tratamento dos dados, nas sees a seguir sero apresentados os modelos e os principais resultados obtidos.

6.3. Modelo de Previso de Retornos com Redes Neurais

O primeiro passo do modelo de gesto de carteiras a obteno de previses de retornos futuros. Dentro do quadro terico delineado por Markowitz e Sharpe, a previso dos retornos futuros a etapa inicial da construo da fronteira eficiente.
O autor obteve todos os dados atravs de uma ferramenta chamada BDS, gentilmente disponibilizada pela Hedging-Griffo.
9

83

Toda a construo terica subseqente parte da premissa de que se conhece, com boa dose de confiana, os retornos futuros dos ativos.

6.3.1. Introduo

Conforme discutido no captulo 5, redes neurais so ferramentas ideais para a construo de modelos de previso de ativos financeiros. Suas propriedades se adequam bem s caractersticas das sries temporais de preos de aes: flexibilidade (as redes lidam bem com situaes de mudana de regime, tipicamente o que acontece com os mercados de ao, que vo da euforia ao pnico em poucos dias), robustez (h uma enormidade de situaes possveis no mercado, e o reconhecimento de padres tarefa absolutamente no-trivial) e capacidade de capturar padres nolineares complexos. Para obter bons resultados de previso, fundamental realizar um bom treinamento da rede. Tal tarefa tem dois ngulos distintos, que devem ser cobertos com ateno, de modo a que os resultados sejam satisfatrios: (i) abundncia de exemplos de treinamento para que a rede possa generalizar a partir dos dados passados, deve conhecer diversos padres diferentes; (ii) algoritmo de treinamento robusto como so, em essncia, matrizes cujos valores capturam padres dos exemplos de treinamento, a maneira de calcular tais matrizes deve ser suficientemente poderosa para que os resultados obtidos quando so apresentados padres desconhecidos sejam adequados. No presente trabalho, o primeiro fator j foi discutido na seo 6.2, onde se buscou levantar dados variados e em grande quantidade, para a realizao do treinamento da rede. O segundo ponto mais sensvel e de soluo menos simples. Conforme discutido nos captulos 3 e 5, a variedade de topologias de rede e algoritmos de treinamento disponveis enorme. Embora a concluso, ao fim do captulo 5, fosse pelo uso de uma estrutura de rede alimentada adiante (feedforward) com uma camada escondida e algoritmo de treinamento por retropropagao

(Backpropagation), ainda assim h uma grande variedade de subtipos deste algoritmo que podem ser escolhidos para a realizao do treinamento. Alm disso, h

84

a questo da definio dos parmetros de cada algoritmo, e tambm da topologia da rede. Dada a ausncia de paradigmas estabelecidos na literatura para a escolha da variante do treinamento por retropropagao (Zeki-Susac (1999) compara diferentes famlias de algoritmos Backpropagation, Funo de Base Radial, Probabilstica, etc. e no diferentes subtipos dentro de cada famlia), a opo ser por comparar vrios algoritmos diferentes, de um modo controlado, de maneira a ser possvel concluir qual algoritmo proporciona melhores resultados. Os algoritmos foram escolhidos de modo a representar as diferentes perspectivas adotadas dentro do paradigma da retropropagao. Vo desde modelos simples at outros razoavelmente mais sofisticados. So eles: Backpropagation com Momentum Backpropagation Resiliente Powell-Beale Quasi-Newton BFGS Levenberg-Marquardt O primeiro representa o desenvolvimento inicial do paradigma de

retropropagao, com a adio do termo de momentum para melhoria da performance. O segundo uma modificao do anterior, a partir da constatao de que a performance seria mais robusta com uma mudana no tipo de clculo das derivadas parciais (vide seo 3.5 para o papel das derivadas parciais no treinamento da rede). Os trs outros tipos utilizam conceitos de otimizao numrica para obter melhor performance com menos recursos computacionais e de memria. Tm sofisticao crescente, e espera-se, performance idem. Cada um dos cinco ser discutido em mais detalhe nas sees a seguir, quando sero apresentados os resultados obtidos quanto utilizados para previso das sries de aes. Quanto questo dos parmetros prprios de cada algoritmo, a soluo mais simples, mas por isso mesmo, menos robusta. Sero utilizados os parmetros padro (default) do software. Essa opo se deve enormidade de estudos que deveriam ser realizados para a definio de parmetros timos para cada algoritmo, para cada ao diferente, para cada topologia. Assim, fixando estes parmetros, o foco fica naquilo

85

que realmente importante na definio de um bom modelo de previso por redes neurais: o algoritmo de treinamento e a topologia da rede. Por fim, a escolha da topologia de rede: talvez o parmetro mais difcil de controlar e definir. Na literatura de previso de sries temporais financeiras usando redes neurais, a maioria dos trabalhos que usa o algoritmo de retropropagao traz topologias com uma camada escondida e nmero de neurnios nesta camada variando entre cinco e 20. Chen et al. (2001) prope a seguinte regra: nmero de neurnios na camada escondida = (nmero de inputs + nmero de outputs)/2. Caso fosse aqui aplicada, o resultado seria seis neurnios na camada escondida (11 entradas, uma sada). Como esta regra no tem base terica, e dada a variedade de possibilidades discutidas na literatura, a opo novamente foi pela experimentao controlada. Assim, para cada um dos algoritmos de treinamento e cada uma das 25 aes, sero testadas diferentes configuraes de topologia de rede, variando entre quatro e quinze neurnios na camada escondida. Embora haja, na literatura, trabalhos que usam mais de 15 neurnios escondidos (Buscema e Sacco (2000) e Thawornwong et al. (2002) so exemplos), optou-se por no ir alm pela razo de que, com um nmero maior de neurnios na camada escondida, a possibilidade de sofrer com o fenmeno de excesso de ajuste cresceria excessivamente. Como sries temporais de preos de ativos financeiros so inerentemente no-parametrizadas a priori, e justamente esta caracterstica que se busca explorar com o uso de redes neurais, existe a preocupao recorrente de no ajustar demais o modelo aos dados, sob pena de no ser possvel generalizar adequadamente, para a realizao de previses futuras. Um aspecto importante que deve ser enfatizado o carter estatstico dos resultados a serem obtidos. Cada vez que uma rede neural criada, os pesos so inicializados de maneira aleatria (com mdia zero e varincia unitria). Este processo tem influncia no desprezvel na performance da rede aps o treinamento. Assim, necessrio repetir o processo de treinamento diversas vezes, de modo a coletar estatsticas confiveis sobre a performance, e assim conhecer de fato as possibilidades do modelo. Portanto, cada um dos experimentos ser repetido 50 vezes, de modo que mdias e desvios dos resultados possam ser calculados, e um bom nvel de confiana possa ser estabelecido.

86

Um resumo das caractersticas do modelo est dado na Tabela 4.


Valor Feedforward. 3 - 1 camada escondida 11 (vide tabela 3) 1 - preo da ao Back propagation com momentum Back propagation resiliente Algoritmo de Treinamento Powell-Beale BFGS (quasi-Newton) Levenberg-Marquardt
Arquitetura Nmero de Camadas Nmero de Inputs Nmero de Outputs Funo de Transferncia Neurnios na Camada Escondida

Parmetro

Camada Escondida: Tangente Hiperblica Camada de Sada: Linear entre 4 e 15 - definio experimental

Tabela 4: Parmetros do Modelo de Previso de Retornos

6.3.2. Entradas, Sadas e Targets: Pr e Ps-Processamento Definidas as caractersticas das redes neurais a serem utilizadas, o foco passa aos dados que sero introduzidos no modelo, qual pr-processamento necessrio, e como ser realizado o treinamento ou seja, que tipo de padro se espera que o modelo aprenda a capturar, e como devero ser analisados os resultados obtidos. Conforme discutido na seo 6.2.1, para cada uma das 25 aes, tem-se 1100 cotaes de 10/05/1999 at 10/10/2003. Alm disso, tem-se as sries temporais dos outros dados que, supe-se, tenham algum poder explicativo sobre os preos das aes. O paradigma de treinamento a ser utilizado est ilustrado na Figura 7.
Iteraes de Treinamento
Preo Mdio da ao

Mudana nos Pesos e Vis Clculo do Erro Preo Observado em t+1

Dados do dia t

Preo Mx / Mn. ..... Dlar

Inputs da Rede Neural

Previso do Preo em t+1

Figura 7: Fluxograma do Processo de Treinamento da Rede Neural

87

A partir desta formao, tem-se 1099 preos dirios que sero utilizados como target, ou seja, como padro que a rede neural deve aprender, sempre adiantados em um dia. E como inputs, entradas da rede, tem-se as 11 sries temporais discutidas na seo 6.2.1, cada uma com 1099 observaes. Portanto, espera-se que, dados os valores destes onze dados na data x, a rede neural (j treinada) seja capaz de prever, com boa preciso, o valor do preo da ao na data x+1. Em essncia, isto que aqui se busca. Antes de realizar a entrada dos dados na rede neural, necessrio realizar alguns pr-processamentos, de modo a obter uma boa performance preditiva do modelo (Demuth e Beale (2001), DeBoeck (2001), Refenes (1995) so referncias no assunto). Todas as vezes que uma rede neural for criada, todos as etapas de prprocessamento sero repetidas. So dois procedimentos bsicos: Normalizao: o processo de consiste na normalizao de todos os dados de entrada (inputs) de modo a terem mdia zero e varincia unitria. Isto necessria devido a uma peculiaridade das redes neurais: elas no trabalham bem com valores elevados j que as funes de transferncia (a funo sigmide, por exemplo) realizam o chamado squashing, ou seja, comprimem os dados (Haykin, 2000). Assim, a normalizao dos dados facilita o trabalho de clculos das matrizes de pesos e vis, proporcionando melhor performance. Aps o treinamento, todas as sadas da rede tem de ser renormalizadas, ou seja, colocadas na mdia e varincia originais. Anlise de Componentes Principais (PCA): em vrias situaes (caso deste trabalho), a dimenso do vetor de entrada razoavelmente grande, e h alguma correlao entre os componentes do vetor (ou seja, redundncia) (Demuth e Beale, 2000). Assim, til nestas situaes reduzir o tamanho do vetor, e uma maneira eficiente de realizar este processo atravs da Anlise de Componentes Principais (ou Principal Component Analysis, PCA). Esta tcnica traz trs efeitos: ortogonaliza os componentes do vetor de entrada (de maneira a serem no-correlacionados uns com os outros), ordena os componentes ortogonais resultantes (componentes principais) de maneira que os com maior variao venham antes, e elimina aqueles que contribuem menos para a varincia total do conjunto de dados. Neste trabalho, sero eliminados os componentes que explicam menos de 1% da variao total do

88

conjunto de inputs (no se deseja reduzir excessivamente o conjunto de dados de entrada, por isso um limite baixo foi determinado). Aps o treinamento da rede, todos os novos dados que so introduzidos devem ser transformados usando a matriz de componentes principais, de maneira a garantir homogeneidade de resultados. Assim, a normalizao e a anlise de componentes principais auxiliam no processo de obteno de boa performance preditiva das redes neurais a serem construdas. Aps o treinamento se faz necessrio analisar os resultados. Aps renormalizados para mdia e varincia apropriados, ser realizada uma Anlise de Regresso entre os dados simulados pela rede e os targets, ou seja, vo ser comparados os preos previstos pelo modelo de rede neural e os preos reais observados no mercado, de maneira a aferir a performance das redes testadas. O resultado desta anlise, em termos de coeficiente de correlao, ser de fundamental importncia na avaliao da performance de cada um dos modelos de rede neural utilizados daqui por diante. Na Figura 8, ilustrada graficamente esta anlise, com a comparao dos dados de ARCZ6 com os preos previstos por uma rede neural com 12 neurnios na camada escondida, treinada com algoritmo Levenberg-Marquardt.

Figura 8: Previso de Preos de ARCZ6 por uma rede LevenbergMarquardt com 12 neurnios na camada escondida

89

Note-se a comparao entre os targets e as previses da rede j treinada: no grfico superior, tem-se a srie de dados real (em azul) e a srie de preos previstos (em magenta) a rede consegue ajustar muito bem, a primeira vista, aos dados histricos. Esta impresso inicial corroborada pelo segundo grfico, que mostra a regresso linear entre os dados reais e as previses, retornando um coeficiente de correlao de 0,9954, ou 99,54%, que excelente.

6.3.3. Modelos de Rede Neural

Uma vez determinados os dados a serem usados como inputs das redes neurais, o pr-processamento a ser realizado, e como sero analisados os resultados obtidos, cabe passar aos experimentos propriamente ditos. Conforme discutido na seo 6.3.1, sero testados cinco tipos diferentes de algoritmos, e 12 quantidades diferentes de neurnios na camada escondida (entre quatro e 15). Alm disso, todos os experimentos sero repetidos 50 vezes, de maneira a estabelecer o carter estatstico efetivo dos resultados. Grosso modo, isto resulta na seguinte quantidade de redes neurais a serem criadas: 25 aes x 5 algoritmos x 12 topologias x 50 repeties = 75.000 redes10 De maneira a obter uma otimizao da performance de generalizao das redes, ser adotado, em todos os experimentos, o mtodo de parada antecipada11. Esta tcnica consiste na diviso dos dados de entrada em trs subconjuntos: treinamento, validao e teste. O primeiro subconjunto usado para computar os gradientes de treinamento e os pesos e vis da rede. Durante o processo de treinamento, o erro no conjunto de validao monitorado: inicialmente, deve decrescer, conforme melhora a performance preditiva da rede. Contudo, se a rede comea a ser excessivamente treinada e sofrer de excesso de ajuste12, o erro de validao vai tipicamente comear a crescer, e quando isto ocorre repetidamente o processo de treinamento interrompido. O erro do subconjunto de teste usado para comparar diferentes
10 10

Rodando em um Pentium III de 800 MHz e 256 MB de RAM, o script de MATLAB escrito para realizar a determinao do nmero ideal de neurnios escondidos levou quase 3 dias ininterruptos de clculo (aprox. 65 horas) para estimar todas as redes. Detalhes deste cdigo podem ser encontrados no Apndice 1. Ou early stopping. Tambm chamado de overfitting, vide seo 3.6.1 para detalhes.

11

12

90

modelos, e no monitorado no processo de treinamento. No presente trabalho, no ser utilizado. Em todos os experimentos, os dados foram divididos da seguinte maneira:

Treinamento

Validao

Previso

900 dados entre 10/05/99 e 19/12/02

100 dados entre 20/12/02 e 21/05/03

100 dados entre 22/05/03 e 10/10/03

Figura 9: Diviso de Dados Treinamento/Validao/Previso

A subdiviso dos dados sempre realizada aps o pr-processamento. J a performance aferida sobre o conjunto completo de entradas. Determinadas todas as caractersticas dos modelos a serem apresentados, a seguir sero discutidos cada um dos cinco algoritmos. Em cada subseo seguinte, sero apresentados os fundamentos do algoritmo, os resultados em termos de nmero timo de neurnios na camada escondida para cada uma das 25 aes, e a performance preditiva das redes, aferida em termos de coeficiente de correlao, tambm determinada para cada uma das 25 aes. Ao fim, na seo 6.3.4, sero sumarizados e discutidos os resultados e a performance preditiva das redes neurais.

6.3.3.1. Rede Backpropagation com Momentum

O primeiro tipo de rede a ser testado tambm o mais simples: a Backpropagation com momentum. No algoritmo de treinamento por retropropagao mais simples, que faz uso da tcnica de descida pelo gradiente, os pesos e vis so movidos na direo do negativo do gradiente da funo erro da rede. O parmetro bsico que controla o processo de aprendizagem a taxa de aprendizagem (vide seo 3.5.1 para detalhes). Uma maneira de melhorar a convergncia do treinamento utilizar um outro parmetro, chamado de momentum, para controlar o treinamento em conjunto com a taxa de aprendizagem. Este termo permite rede no apenas

91

responder ao gradiente local (na iterao t), como tambm s tendncias recentes na superfcie de erro. O termo pode ser adicionado ao algoritmo de treinamento bsico fazendo-se as variaes dos pesos iguais soma de uma frao da ltima variao e nova mudana sugerida pela regra de retropropagao. A magnitude desta frao definida pela constante de momentum. De um modo geral, a adio deste termo equao de atualizao dos pesos proporciona uma melhor performance ao processo de treinamento, tanto em velocidade quanto em erro mdio (ou seja, performance da rede). Os resultados das previses realizadas com o algoritmo no se mostraram particularmente bons13. A Figura 10 traz uma a disperso dos resultados, em termos de correlao com os targets:
100%

90%

U IM S 5 C IG M4 A C6 RZ EM R B4 ELE T6 PA4 CR ITS 4 A PE 3 TR SB 3 SP PETR 4 TSP P4 TN 4 LP V LE A 5

80%

BB S A3

BB C D4

C PLE6

EB TP4

ITA 4 U

70%

C U3 RZ

TLP P4

60%

B 4 ELG

50%

LA E M4

C A SN 3
40%

C 4 STB

FFTL4

Figura 10: Disperso Resultados para Algoritmo Backpropagation com Momentum

Tais resultados esto sumarizados na Tabela 5.

Uma constatao que j pode ser vista na literatura: Refenes (1995) e Kalyvas (2001) esto entre os autores que testam este algoritmo para previso de preos de aes, e afirmaram no ter conseguido resultados conclusivos.

13

92

Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4 mdia

Backpropagation com Momentum 83,25% 81,27% 80,73% 58,04% 88,77% 79,40% 68,24% 42,98% 43,13% 74,86%

Cdigo EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3

Backpropagation com Momentum 78,11% 89,86% 81,97% 43,34% 79,78% 81,36% 51,53% 84,11% 83,75%

Cdigo PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5

Backpropagation com Momentum 82,24% 81,20% 69,78% 78,31% 81,57% 91,30% 87,46%

Tabela 5: Resultados Algoritmo Backpropagation com Momentum

Obviamente, a qualidade dos resultados obtidos s vai ficar clara aps a comparao com todos os outros algoritmos. Ainda assim, j possvel dizer que o algoritmo de treinamento usando Backpropagation com Momentum no tem uma performance preditiva particularmente notvel, com uma correlao mdia de 74% com os preos-alvo, a tendncia que estas previses no tragam bons resultados, caso resultassem em decises de alocao de recursos. Embora sejam melhores que um previsor ingnuo (por exemplo, algum que joga uma moeda para cima e se o resultado for cara, afirma que a ao X vai subir hoje, e se coroa, que ela vai cair), ainda assim no se pode afirmar que temos aqui uma metodologia brilhante de previso de mercado. Quanto ao nmero de neurnios na camada escondida, os resultados so bastante dispersos novamente (variando entre cinco e quinze), contudo h uma tendncia de concentrao entre seis e sete neurnios na camada escondida. Uma mdia simples resultaria em 8 neurnios na camada escondida, mas nesse caso este nmero no faz sentido, deve se olhar a concentrao dos resultados. O histograma da Figura 11 explicita esses resultados, e a Tabela 6 traz os valores correspondentes.

93

12 10 8 6 4 2 0 4~5 6~7 8~9 10~11 Bloco 12~13 14~15

Figura 11: Histograma de Distribuio dos Neurnios na Camada Escondida para o algoritmo Backpropagation com Momentum
Backpropagation com Momentum 15 8 7 6 6 15 9 12 8 Backpropagation com Momentum 14 8 5 7 6 6 6 6 10 Backpropagation com Momentum 7 6 11 5 7 9 8

Freqncia

Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4

Cdigo EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3

Cdigo PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5

Tabela 6: N de Neurnios na Camada Escondida para Backpropagation

Um resultado tpico de previso realizado pelo algoritmo de Backpropagation pode ser visto na Figura 12 a seguir. Aqui, tem-se a ao Usiminas PNA (USIM5), com previso realizada para o perodo entre 22/05/2003 e 10/10/2003. A rede foi treinada seguindo o paradigma definido anteriormente, na seo 6.3.3, e foram utilizados os dados para treinamento padronizado. Dado o fator aleatrio na inicializao dos pesos da rede neural, o resultado mostrado a seguir tende a no ser semelhante performance mdia exibida na Tabela 5 ali se tem a agregao de muitos processos de treinamento consecutivos, e a seguir se tem apenas uma seo tpica, que demonstra as qualidades do algoritmo.

94

Figura 12: Resultado de Previso com algoritmo Backpropagation com Momentum

possvel observar no grfico do meio, uma comparao entre as previses realizadas pela rede (srie em magenta) e os preos reais observados no mercado. Fica claro que a rede neural gerada por este algoritmo de treinamento no obtm boa performance preditiva, o que confirmado pelo valor do R calculado (0,766) e pelo primeiro grfico da figura. Ali, aparece a evoluo dos trs erros calculados pela rede neural: o erro de treinamento (primeiros 900 dados, usados para treinar a rede), o erro de validao (os 100 dados subseqentes) e o erro de teste (os 100 restantes, que vo de 22/05/03 at 10/10/03, conforme j mencionado). Fica claro que a rede neural gerada no capaz de generalizar adequadamente, porque enquanto os erros de treinamento e validao diminuem, o erro calculado sobre o conjunto teste no s no diminui, como cresce ao longo do treinamento da rede, mostrando que o algoritmo no gera redes com boa capacidade de generalizao.

6.3.3.2. Rede Backpropagation Resiliente

Redes neurais com mltiplas camadas tipicamente fazem uso de funes de transferncia sigmides ( o caso dos modelos aqui apresentados, que usam tangente hiperblica). Estas funes so chamadas de squashing (fato j mencionado na seo

95

6.3.2) pois comprimem uma faixa de inputs infinitamente larga em uma faixa de outputs limitada (tipicamente entre 0 e 1 ou entre 1 e 1). Assim, estas funes so caracterizadas pelo fato de que sua derivada tende a zero conforme o valor da entrada cresce. Este fato causa um problema ao se usar descida pelo gradiente para realizar o treinamento, pois o valor do gradiente pode ter uma magnitude muito pequena, e portanto causar mudanas pequenas demais nos valores dos pesos e vis, mesmo que estes estejam longe de seus valores timos. A idia bsica do algoritmo de Backpropagation resiliente est em eliminar estes efeitos nocivos dos valores das derivadas parciais (gradiente). Assim, apenas o sinal da derivada utilizado para determinar a direo em que ocorrer a mudana do peso da rede a magnitude da derivada no utilizada. O tamanho da variao do peso determinada por um parmetro distinto, controlado independentemente. Embora o uso de normalizao no pr-processamento dos dados evite o problema de valores extremos nos inputs, ainda assim o algoritmo de retropropagao resiliente proporciona uma alternativa interessante aos algoritmos bsicos, para previso de preos em sries temporais de ativos financeiros. Sendo assim, os resultados obtidos se mostraram consideravelmente melhores que os do algoritmo Backpropagation mais simples. De forma at inesperada, dado que a idia bsica por trs da retropropagao resiliente um tanto simples, a performance do algoritmo se mostrou bastante boa. Os resultados podem ser observados na Tabela 7.
Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4 Backpropagation Resiliente 99,70% 98,33% 97,63% 97,19% 97,87% 98,46% 96,46% 87,89% 96,45% Cdigo EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3 Backpropagation Resiliente 98,36% 98,76% 98,89% 89,28% 97,71% 98,37% 96,68% 98,34% 98,74% Cdigo PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5 Backpropagation Resiliente 98,42% 99,15% 97,68% 98,00% 99,05% 91,28% 98,73%

Tabela 7: Resultados Algoritmo Backpropagation Resiliente

Quanto ao nmero de neurnios na camada escondida, para cada ao, e a distribuio de freqncias destas topologias, podem ser vistos na Tabela 8 e na Figura 13 a seguir:

96

Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4

Backpropagation Resiliente 11 7 9 11 5 11 13 6 5

Cdigo EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3

Backpropagation Resiliente 9 5 7 8 6 8 11 8 8

Cdigo PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5

Backpropagation Resiliente 7 12 15 5 10 9 9

Tabela 8: N de Neurnios na Camada Escondida para Backpropagation Resiliente


9 8 7

Freqncia

6 5 4 3 2 1 0 4~5 6~7 8~9 10~11 12~13 14~15

Bloco

Figura 13: Histograma de Distribuio dos Neurnios na Camada Escondida para o algoritmo Backpropagation Resiliente

possvel constatar que h uma distribuio em torno do nmero 9 de neurnios na camada escondida, com preferncia por redes menores. Contudo, no possvel concluir que este algoritmo tende a performar melhor com este algoritmo. De fato, as redes com melhor potencial preditivo, para as aes ARCZ6, SBSP3 e TSPP4, tm, respectivamente, 11, 12 e 10 neurnios em suas configuraes de melhor desempenho. interessante notar que, embora a performance do algoritmo tenha se mostrado boa em treinar redes para prever preos de aes, no h constncia de performance: em algumas aes (as citadas acima), os resultados so bastante bons, enquanto em outras a performance consideravelmente mais fraca (CSNA3 e FFTL4 so exemplos). O que possvel concluir com clareza que este algoritmo de Backpropation Resiliente proporciona performance consideravelmente melhor que a

retropropagao simples, e que em alguns casos sua performance to boa ou at melhor que a de algoritmos mais complexos e (supostamente) mais avanados.

97

6.3.3.3. Rede Powell-Beale

O algoritmo de retropropagao bsico ajusta os pesos, durante o treinamento, sempre na direo do gradiente de mxima declividade. Esta a direo em que a funo de erro (que mede a performance da rede) est decaindo mais rapidamente. Contudo, embora o erro diminua mais rapidamente na direo da negativa do gradiente, nem sempre esta a direo que proporciona mais rpida convergncia global. Esta a idia bsica por trs dos algoritmos chamados de Gradiente Conjugado: realizar uma busca numrica em direes conjugadas do gradiente, que geralmente produzem convergncia mais rapidamente do que meramente seguir na direo de mxima declividade. H vrias maneiras de realizar esta busca pelas direes conjugadas, o que d origem a uma famlia de diferentes algoritmos: Fletcher-Reeves, Polak-Ribire, Powell-Beale e Gradiente Escalonado14. Para testar a capacidade dessa famlia de algoritmos em prever sries temporais de ativos financeiros, optou-se por usar a variante Powell-Beale do algoritmo. Em todos os algoritmos desta famlia, periodicamente a direo de busca reiniciada para o negativo do gradiente. H vrias maneiras de realizar essa reinicializao, uma das quais foi proposta por Powell em 1977, baseado num trabalho anterior de Beale, em 1972. Nesta tcnica, a reinicializao ocorre quando h muito pouca ortogonalidade restante entre o gradiente na iterao t e o gradiente na iterao t-1. H vrias metodologias disponveis para realizar a busca nas direes conjugadas (Golden Section Seach, Brents Search, Charambolous, entre outras15 em todos os experimentos aqui realizados, ser utilizada a busca pelo mtodo de Charambolous). Os resultados obtidos com este algoritmo na previso de preos de aes se mostraram bastante satisfatrios. Na Tabela 9 est apresentada a performance do algoritmo para cada uma das 25 aes, em termos de coeficiente de correlao mdio obtido em 50 repeties do processo completo de treinamento da rede:

14

Para detalhes de cada um, vide Demuth e Beale (2001), captulo 5. Vide Demuth e Beale (2001) para mais detalhes.

15

98

Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4

Powell-Beale 95,68% 98,66% 98,11% 98,32% 97,58% 98,45% 97,27% 97,10% 97,30%

Cdigo EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3

Powell-Beale 99,21% 98,08% 99,09% 96,44% 98,68% 98,81% 97,69% 98,60% 98,33%

Cdigo PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5

Powell-Beale 98,86% 98,82% 98,13% 98,75% 98,68% 94,88% 97,71%

Tabela 9: Resultados Algoritmo Powell-Beale

possvel constatar na Tabela 9 como a performance do algoritmo bastante satisfatria, melhor que a apresentada pelos outros dois algoritmos j avaliados: h muito menor disperso de performance entre as redes treinadas para cada uma das aes (a melhor a de EBTP4, com 99,21% e a pior a de USIM5, com 94,88%). Assim, o aumento da sofisticao do algoritmo se traduz em ganho de performance em termos de melhores previses realizadas. Quanto estrutura de neurnios escondidos, novamente h uma ampla distribuio, mas desta vez com alguma preferncia por redes maiores, acima de 8 neurnios na camada escondida (a mais freqente a com 11 neurnios na camada escondida). Os resultados completos esto detalhados na Tabela 10 e na Figura 14 a seguir:
8 Freqncia 6 4 2 0 4~5 6~7 8~9 Bloco 10~11 12~13 14~15

Figura 14: Histograma de Distribuio dos Neurnios na Camada Escondida para o algoritmo Powell-Beale

99

Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4

Powell-Beale 5 6 9 13 7 7 10 13 9

Cdigo EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3

Powell-Beale 13 7 14 11 13 11 14 10 7

Cdigo PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5

Powell-Beale 10 8 11 11 12 12 8

Tabela 10: N de Neurnios na Camada Escondida para Powell-Beale

6.3.3.4. Rede Quasi-Newton BFGS

Uma alternativa aos mtodos de gradiente conjugado (como o Powell-Beale), para otimizao rpida, o mtodo de Newton. O passo bsico do mtodo de Newton envolve a computao do Hessiano (derivadas segundas) da funo de erro para os valores, na iterao t, dos pesos e vis da rede neural. Infelizmente, o clculo do Hessiano da funo computacionalmente complexo (Demuth e Beale, 2000), e disso derivou uma famlia de algoritmos baseados no mtodo de Newton, que no requerem o clculo das derivadas segundas da funo. Esta famlia chamada de Quasi-Newton. Dentre os mtodos desta famlia, o mais bem sucedido o BFGS (sigla para Broyden, Fletcher, Goldfarb e Shanno), que computa a cada iterao uma aproximao do Hessiano, baseado no valor do gradiente. O algoritmo BFGS, embora possua os mesmos princpios bsicos dos algoritmos Powell-Beale e Levenberg-Marquardt, surpreendentemente apresentou uma

performance bastante ruim, bastante abaixo at do algoritmo Backpropagation com Momentum, que era, numa anlise a priori, aquele do qual se esperava menos. A Tabela 11 a seguir deixa claro os resultados obtidos:
Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4 BFGS 97,78% 84,55% 90,20% 62,56% 94,25% 90,33% 91,29% 97,62% 80,23% Cdigo EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3 BFGS 50,88% 87,14% 94,09% 81,07% 88,35% 81,06% 91,27% 94,80% 87,26% Cdigo PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5 BFGS 91,22% 80,96% 85,53% 84,19% 51,60% 95,52% 93,38%

Tabela 11: Resultados Algoritmo BFGS

100

Alm da performance ruim, a consistncia tambm deixa a desejar: a rede treinada com BFGS de melhor performance aquela para previso de ARCZ6 alcana 97,78% de correlao, enquanto a pior TSPP4 chega a apenas 51,60%, um desempenho muito fraco de previso. Alm disso, a topologia tambm varia consideravelmente, com agrupamentos em torno de 9 e 13 neurnios na camada escondida. Os resultados esto na Tabela 12 e Figura 15.
Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4 BFGS 15 9 7 15 9 5 13 12 8 Cdigo EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3 BFGS 11 13 9 6 13 10 13 10 9 Cdigo PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5 BFGS 13 14 14 8 5 11 9

Tabela 12: N de Neurnios na Camada Escondida para BFGS


8 7 Freqncia 6 5 4 3 2 1 0 4~5 6~7 8~9 Bloco 10~11 12~13 14~15

Figura 15: Histograma de Distribuio dos Neurnios na Camada Escondida para o algoritmo BFGS

6.3.3.5. Rede Levenberg-Marquardt

Assim como as tcnicas quasi-Newton, o algoritmo de Levenberg-Marquardt foi desenhado para realizar uma aproximao do Hessiano da funo de erro de treinamento da rede neural a cada iterao. Quando a funo erro tem a forma de uma soma de quadrados (como tipicamente o caso com redes neurais e especificamente o caso deste trabalho, onde a funo de erro padro o erro quadrtico mdio), possvel aproximar o Hessiano atravs da seguinte equao:
H = JTJ

(6.1)

e o gradiente computado pela seguinte relao: 101

g = JTe

(6.2)

onde J o Jacobiano da funo erro, que depende apenas das derivadas de primeira ordem da funo erro com respeito aos pesos e vis da rede, e e um vetor dos erros. O processo de computao do Jacobiano bastante mais simples que o processo de computao do Hessiano (Demuth e Beale, 2000), o que faz do algoritmo Levenberg-Marquardt um poderoso algoritmo de treinamento para redes neurais. Dentre todos os algoritmos de treinamento testados ao longo deste trabalho, o Levenberg-Marquardt foi o que apresentou melhor performance. Tanto em termos de velocidade quanto em termos de qualidade da regresso. A tabela a seguir mostra os resultados obtidos. Note-se que a performance sempre se situa acima da faixa de 97%, mostrando tanto consistncia entre todas as 25 aes ao contrrio dos algoritmos anteriores, que tinham performance muito boa em uma ao e bastante fraca em outras quanto constncia, ou seja, mesmo reinicializando a rede aleatoriamente vrias vezes, o resultado era bastante constante a cada iterao.
Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4 LevenbergMarquardt 99,10% 99,40% 98,65% 99,35% 98,45% 99,35% 98,58% 97,67% 98,63% Cdigo EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3 LevenbergMarquardt 99,83% 99,17% 99,66% 97,89% 99,17% 99,54% 97,98% 99,28% 99,57% Cdigo PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5 LevenbergMarquardt 99,29% 99,57% 99,21% 99,17% 99,77% 96,81% 99,12%

Tabela 13: Resultados Algoritmo Levenberg-Marquardt

Alm da performance elevada e consistente, o algoritmo apresenta uma clara preferncia por uma topologia de rede especfica, com 4 ou 5 neurnios na camada escondida. O histograma na Figura 16 mostra este fato claramente, corroborado pela Tabela 14, com os dados para cada uma das 25 aes. Curiosamente, tal comportamento no foi apresentado por nenhum outro dos algoritmos nem foi constatado em nenhuma das 25 aes particularmente. Aparentemente, a capacidade do algoritmo Levenberg-Marquardt de treinar rapidamente a rede permite a ele trabalhar com menos pesos e bias, mantendo o erro de validao baixo, dado que capaz de evitar o problema de excesso de ajuste ou excesso de treinamento.

102

Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4

LevenbergMarquardt 14 4 6 5 4 7 9 15 6

Cdigo EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3

LevenbergMarquardt 7 4 8 5 6 4 6 5 8

Cdigo PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5

LevenbergMarquardt 4 4 5 4 11 4 6

Tabela 14: N de Neurnios na Camada Escondida para Levenberg-Marquardt


14 12 Freqncia 10 8 6 4 2 0 4~5 6~7 8~9 Bloco 10~11 12~13 14~15

Figura 16: Histograma de Distribuio dos Neurnios na Camada Escondida para o algoritmo Levenberg-Marquardt

Dada a qualidade do potencial preditivo das redes neurais treinadas com o algoritmo Levenberg-Marquardt, estas se tornam a opo bvia para a realizao das previses que sero utilizadas pelo modelo de algoritmos genticos para otimizao das carteiras. Alm disso, dada a preferncia pela topologia com poucos neurnios na camada escondida, optou-se por uma rede com 5 neurnios na camada intermediria como a proxy do modelo de previso de retornos por redes neurais artificiais.

6.3.4. Resultados Aps testar cinco tipos de algoritmos de treinamento de redes neurais diferentes, onze topologias possveis em cada algoritmo, e rodar os modelos centenas de vezes, possvel concluir, com elevado grau de confiana, que o algoritmo LevenbergMarquardt o melhor algoritmo de treinamento (dentre os pesquisados) para redes neurais cujo intuito realizar previses de retornos futuros de sries temporais de ativos financeiros. Mais ainda, redes Levenberg-Marquardt apresentam melhor

103

performance com um nmero reduzido de neurnios na camada escondida, o que de certa maneira contra-intuitivo, visto que h uma tendncia a se relacionar capacidade de absorver conhecimento (em outras palavras, redes topologicamente maiores) com capacidade de previso. Os resultados obtidos vo contra esta crena. Alm disso, dados os elevados graus de correlao obtidos entre as previses e os dados historicamente observados, tambm possvel inferir que redes neurais artificiais so plenamente capazes de prever preos futuros de aes. At onde possvel levar esta previso, contudo, uma discusso diferente, e no captulo 7 esta questo ser explorada. De modo a consolidar e explicitar as concluses dos resultados obtidos, convm analisar brevemente as Tabelas 15 e 16. A Tabela 15 traz uma consolidao de todas as topologias definidas como tendo melhor performance para cada uma das aes e cada um dos algoritmos. A Tabela 16, a mais importante, traz os resultados de coeficiente de correlao para cada uma das 25 aes com previses a partir do treinamento com cada um dos 5 algoritmos. Na Tabela 16, para cada ao, est ressaltado o algoritmo que obteve melhor performance. A superioridade do Levenberg-Marquardt fica evidente:
Nmero de Neurnios na Camada Escondida com Melhor Performance Algoritmo Backpropagation Backpropagation PowellLevenbergBFGS com Momentum Resiliente Beale Marquardt Cdigo ARCZ6 15 11 5 15 14 BBAS3 8 7 6 9 4 BBDC4 7 9 9 7 6 BELG4 6 11 13 15 5 CMIG4 6 5 7 9 4 CPLE6 15 11 7 5 7 CRUZ3 9 13 10 13 9 CSNA3 12 6 13 12 15 CSTB4 8 5 9 8 6 EBTP4 14 9 13 11 7 ELET6 8 5 7 13 4 EMBR4 5 7 14 9 8 FFTL4 7 8 11 6 5 ITAU4 6 6 13 13 6 ITSA4 6 8 11 10 4 LAME4 6 11 14 13 6 PCAR4 6 8 10 10 5 PETR3 10 8 7 9 8 PETR4 7 7 10 13 4 SBSP3 6 12 8 14 4 TLPP4 11 15 11 14 5 TNLP4 5 5 11 8 4 TSPP4 7 10 12 5 11 USIM5 9 9 12 11 4 VALE5 8 9 8 9 6

Tabela 15: Topologias de Melhor Performance

104

Cdigo ARCZ6 BBAS3 BBDC4 BELG4 CMIG4 CPLE6 CRUZ3 CSNA3 CSTB4 EBTP4 ELET6 EMBR4 FFTL4 ITAU4 ITSA4 LAME4 PCAR4 PETR3 PETR4 SBSP3 TLPP4 TNLP4 TSPP4 USIM5 VALE5 mdia

Melhor Resultado de Regresso (R) Algoritmo Backpropagation Backpropagation PowellBFGS com Momentum Resiliente Beale 83,25% 98,72% 99,30% 97,78% 81,27% 98,33% 98,66% 84,55% 80,73% 97,63% 98,11% 90,20% 58,04% 97,19% 98,32% 62,56% 88,77% 97,87% 97,58% 94,25% 79,40% 98,46% 98,45% 90,33% 68,24% 96,46% 97,27% 91,29% 42,98% 87,89% 97,10% 97,62% 43,13% 96,45% 97,30% 80,23% 78,11% 98,36% 99,21% 50,88% 89,86% 98,76% 98,08% 87,14% 81,97% 98,89% 99,09% 94,09% 43,34% 89,28% 96,44% 81,07% 79,78% 97,71% 98,68% 88,35% 81,36% 98,37% 98,81% 81,06% 51,53% 96,68% 97,69% 91,27% 84,11% 98,34% 98,60% 94,80% 83,75% 98,74% 98,33% 87,26% 82,24% 98,42% 98,86% 91,22% 81,20% 99,15% 98,82% 80,96% 69,78% 97,68% 98,13% 85,53% 78,31% 98,00% 98,75% 84,19% 81,57% 99,05% 98,68% 51,60% 91,30% 91,28% 94,88% 95,52% 87,46% 98,74% 98,95% 93,38% 74,86% 97,06% 98,16% 85,09%

LevenbergMarquardt 99,10% 99,40% 98,65% 99,35% 98,45% 99,35% 98,58% 97,67% 98,63% 99,83% 99,17% 99,66% 97,89% 99,17% 99,54% 97,98% 99,28% 99,57% 99,29% 99,57% 99,21% 99,17% 99,77% 96,81% 99,12% 98,97%

Tabela 16: Resumo da Performance Preditiva dos Algoritmos

6.4. Modelo de Previso de Risco GARCH A segunda parte fundamental do modelo de gesto de carteiras de aes trata da previso dos riscos. O papel do risco no contexto da teoria de portflios absolutamente fundamental, sendo a grande inovao do trabalho de Markowitz a conceituao do risco como a varincia dos retornos at ento risco no era quantificado explicitamente. Assim, dado que aqui se busca desenvolver um modelo consistente para gerir carteiras de investimento em aes, uma parte essencial do trabalho tem de ser devotada busca de previses consistentes dos riscos futuros. Conforme mencionado no item 2.6, as metodologias modernas de previso de risco fazem uso de ferramentas estatsticas para dar um significado quantitativo ao fato de que, quando se trata de risco, o passado recente tem uma importncia significativamente maior que eventos transcorridos num passado mais remoto. Um dos modelos mais utilizados para o estudo e a previso de sries temporais de ativos

105

financeiros o modelo GARCH, ou heterocedstico autoregressivo condicional, desenvolvido por Engle e Bollerslev16. Em uma definio pouco rigorosa, possvel dizer que heterocedstico se refere varincia que muda no tempo (ou seja, varincia no esttica ou constante). O termo condicional se refere ao fato de haver uma dependncia das informaes do passado imediato, e o autoregressivo descreve um mecanismo de feedback em que as observaes passadas so incorporadas ao presente. O uso de modelagem GARCH para previso de risco (ou volatilidade) em sries temporais financeiras altamente difundido, tanto na academia quanto no mercado, e traz algumas vantagens importantes: leva em conta excesso de curtose (responsvel pelas caudas largas observadas em sries temporais financeiras) e o fenmeno de clustering de volatilidade (ou seja, observaes de alta volatilidade tendem a gerar alta volatilidade, e vice-versa a volatilidade se agrega, de um certo modo). Contudo, so modelos paramtricos, e por isso tendem a operar melhor quando no h flutuaes de grande magnitude na srie (por exemplo, quando o mercado cai 20% num dia, como ocorreu ps-atentado de 11 de Setembro). Dentro da classe de modelos GARCH, o mais simples deles o chamado GARCH (1,1). Esse modelo tem subjacente uma representao da mdia e da varincia condicional da srie temporal, que seguem as seguintes equaes: yt = C + t (6.3) (6.4)

t2 = + G1 t21 + A1 t21

onde o retorno yt consiste de uma constante, mais um rudo aleatrio, e a varincia consiste de trs termos: uma constante, uma ponderao da varincia anterior, e o quadrado do rudo observado no perodo anterior. Embora simples, este modelo requer a estimao de apenas 4 parmetros (C, , G1, A1), e consegue capturar a maior parte da variabilidade de sries temporais de retornos de aes (Demuth e Beale, 2001). Assim, ser usado um modelo GARCH (1,1) para a realizao de previses de risco futuro para as 25 aes escolhidas. Dado o carter autoregressivo do modelo, a
16

Em setembro de 2003, o americano Robert Engle recebeu o Prmio Nobel de Economia pelo desenvolvimento dessa classe de modelos de previso de risco. No anncio do prmio, o comit do Nobel ressalta a importncia da previso de riscos em sries temporais de ativos financeiros. Para detalhes, vide http://www.nobel.se.

106

previso de risco depende apenas dos preos passados das aes, no sendo necessrios outros inputs. Alm disso, a previso ser realizada em carter dinmico com janela deslizante: define-se o tamanho da janela (por exemplo, 10 dias), os preos da ao X durante este perodo so coletados, os parmetros do modelo GARCH (1,1) so estimados, via otimizao, e ento a previso do risco para o dia seguinte realizada. Feito isto, a janela desliza um perodo, saindo de t e indo para t+1, e todo o processo reiniciado. No caso da aplicao deste trabalho, a janela foi definida como sendo de 21 dias teis. Tal escolha deve-se aos seguintes fatos: (i) um ms (21 dias teis em mdia) perodo suficiente para a captura da dinmica do risco dos retornos de qualquer ao; (ii) possvel estimar os parmetros com algum grau de confiana (21 dias teis geram 20 observaes de retornos, ou seja, h 20 dados para estimar-se os quatro parmetros do modelo); e finalmente (iii) o esforo computacional reduzido, se comparado quele com janelas mais curtas. Ainda assim, o esforo computacional relevante: para 25 aes, com 1100 observaes cada uma, e janela deslizante de 21 dias, tem-se o seguinte: 25 aes x (1100-21) observaes = 26.975 modelos = 107.900 parmetros17 Assim, o modelo desenvolvido para a previso de risco das sries temporais dos ativos financeiros composto pelas etapas da Figura 17.
Estimao dos Parmetros do Modelo GARCH (1,1)

Preos dos Ativos entre t e t - 21

Clculo dos Retornos Contnuos

Previso da Volatilidade em t+1

Janela Deslizante de 1 Dia

Figura 17: Passos do Modelo GARCH de Previso de Risco

O modelo foi aplicado s sries das 25 aes, gerando previses de risco para 1079 perodos, entre as datas de 09/06/1999 e 10/10/2003. Por exemplo, para a ao CSN ON (CSNA3), as previses de risco tm a evoluo vista na Figura 18.
17 Rodando em um Pentium III de 800 MHz e 256 MB de RAM, o script de MATLAB escrito para realizar a previso de riscos levou 8 horas ininterruptas de clculo para realizar todas as previses. Detalhes deste cdigo podem ser encontrados no Apndice 1.

107

Figura 18: Volatilidade Prevista de CSNA3

Na Figura 18 j possvel observar que, ocasionalmente, ocorrem saltos no risco previsto pelo modelo, embora, no geral, as previses de risco tendam a se concentrar em faixas razoavelmente estreitas (no caso de CSNA3, por exemplo, entre 0 e 4%). Para constatar melhor estes fatos, convm observar mais sries temporais de previses de risco resultantes do modelo. Assim, tem-se para Petrobrs PN (PETR4) e Usiminas PNA (USIM5), as previses de risco vistas nas Figuras 19 e 20.

Figura 19: Volatilidade Prevista de PETR4

Figura 20: Volatilidade Prevista de USIM5

108

No Apndice 2, so apresentados os resultados completos (curvas de previso de risco histrica) para todas as 25 aes. interessante notar que a previso de risco serve para fundamentar o risco futuro que se est correndo com determinada ao. Ou seja, ela d uma idia da variabilidade futura dos retornos desta ao. Assim, dada uma previso de retorno (como as realizadas ao longo da seo 6.3 anterior), a previso de risco permite ter uma idia do grau de confiana que se pode ter em relao a esta previso de retorno. Assim, quando se menciona que a previso de risco para o dia 10/10/03 da ao Aracruz ON (ARCZ6) 0,014619, ou 1,4619%, esta informao apenas faz sentido quando analisada em conjunto com a previso de retornos.

6.5. Modelo de Gesto de Carteiras com Algoritmos Genticos

Aps analisar detidamente tanto os modelos de previso de retornos usando redes neurais, quanto o modelo GARCH para previso de riscos, dentro da proposta deste trabalho, falta agora agregar os resultados obtidos anteriormente, e coloc-los para otimizar uma carteira de investimentos em aes. Dessa maneira, ser possvel aferir a verdadeira performance dos modelos, e testar o uso de algoritmos genticos como uma ferramenta heurstica para otimizao das carteiras.

6.5.1. Inputs do Modelo

Dentro do paradigma terico delineado por Markowitz e Sharpe, descrito em detalhes no captulo 2 (notadamente na seo 2.5), so necessrias duas informaes para a construo de uma carteira de investimentos que seja tima: os retornos futuros dos ativos, e os riscos. Dadas as duas, possvel construir a chamada fronteira eficiente (vide Figuras 1 e 2), e obter a carteira tima para aquele investidor. Assim, ao construir e testar os modelos de previso de retornos e riscos, o que se buscou fundamentalmente foi obter, com alguma confiana, estas informaes que a Moderna Teoria de Portflios preconiza serem necessrias para a construo da carteira eficiente.

109

Conforme descrito na seo 6.3.3, o perodo utilizado para as previses pelos modelos de rede neural foi escolhido entre 22/05/2003 e 10/10/2003, o que resulta em 100 previses de preos. Conforme descrito na seo 6.3.4, estas previses foram calculadas utilizando-se o algoritmo Levenberg-Marquardt com 5 neurnios na camada escondida, para todas as 25 aes pr-selecionadas. Dados os 100 preos previstos, so ento calculados 99 retornos previstos, da seguinte maneira:

Pr evisot R previsto = ln Pr eo Mdio 1 t 1

(6.5)

visto que a janela de previso de preos utilizada foi justamente essa, a dos preos do dia seguinte. Ou seja, dado o preo observado em mercado em t, e os dados necessrios para realizar a previso (dlar, Ibovespa, etc., conforme seo 6.2), prev-se o preo para t+1, e ento se calcula o retorno esperado entre t e t+1. Assim, tem-se uma srie de 99 retornos esperados para cada uma das 25 aes, e a estes dados so agregados os riscos previstos pelo modelo GARCH, para o mesmo perodo (na seo 6.4, foram previstos os riscos das aes para o perodo completo entre 10/05/1999 e 10/10/2003, aqui se vai utilizar apenas uma pequena poro destes dados). Alm disso, conforme as equaes 2.11 e 2.12, a correlao (ou a covarincia) entre os ativos um componente fundamental da determinao do risco agregado de um portflio. Embora j tenham sido realizadas previses dos riscos de cada ao, estas do medida do risco individual, e no do risco sistemtico da carteira. Assim, necessrio tambm determinar o relacionamento entre os riscos de cada ao. Para tanto, vai-se calcular a correlao entre cada uma das 25 aes, com uma janela de 21 dias (mesmo perodo usado para determinao do risco) contudo, tal janela no ser deslizante, se est considerando, simplificadamente, que a correlao futura dos ativos vai seguir a correlao do passado recente. Dado que as carteiras a serem otimizadas sero em um curto perodo (100 dias) possvel considerar que a correlao no varia tanto de um perodo para outro. Em suma, por exemplo, a correlao entre ARCZ6 e VALE5 utilizada para a otimizao da carteira do vai ser calculada com base nos preos dos ativos entre 22/05/2003 e 23/04/2003, ou seja, a janela de 21 dias antes do incio dos experimentos.

110

Portanto, sero dados como inputs do modelo de algoritmos genticos duas sries temporais (previso de risco e previso de retorno) e uma matriz de correlaes 25x25, indicando as correlaes entre cada uma das aes da carteira.

6.5.2. Parmetros do Algoritmo Gentico

Definidos os dados que sero introduzidos no modelo, resta escolher os parmetros dos algoritmos, de maneira a poder implementar o modelo e analisar a performance global das carteiras. O parmetro mais importante a ser definido a funo objetivo conforme visto na seo 4.5.2, esta definio afeta decisivamente a performance do algoritmo. Alm disso, o parmetro que vai definir a performance das carteiras, em ltima instncia. De um modo geral, dentro da moderna teoria de portflios, costuma-se otimizar um dos parmetros, ou risco ou retorno, para um nvel pr-fixado do outro. Em outras palavras, busca-se a carteira de melhor retorno para um dado risco, ou busca-se a carteira de menor risco para um dado retorno desejado. Contudo, tal escolha extremamente sensvel ao nvel exato que se pr-define. Por exemplo, tem-se dez ativos, e deseja-se a carteira de menor risco que d um retorno de 4,5%. O resultado da otimizao (definio dos pesos de cada um dos dez ativos da carteira) pode ser extremamente sensvel ao nvel definido de retorno desejado, ou seja, se fosse escolhido um retorno esperado de 4,6%, os pesos dos ativos poderiam ser radicalmente diferentes. Em suma: a otimizao comumente realizada se pr-fixando um dos parmetros muito pouco robusta. E como se est tratando de buscar uma boa performance futura, desejvel ter alguma robustez nos resultados obtidos. Sendo assim, a opo deste trabalho foi por trabalhar com uma funo objetivo que unisse os dois critrios fundamentais do paradigma terico de Markowitz, risco e retorno. Assim, vai-se buscar otimizar, via algoritmos genticos, a seguinte funo, que vai se chamar aqui de ndice de Sharpe modificado:
IS mod ificado = resperado

esperado

(6.6)

Optou-se por no considerar a taxa livre de risco como um parmetro do ndice (compare-se a equao 6.4 com a equao 2.30) dado o foco em testar a qualidade

111

dos modelos em gerar retornos absolutos, e no em gerar retornos em excesso (ou seja, retornos acima da taxa livre de risco). Assim, o ndice definido na equao 6.6 ser a funo objetivo (ou de utilidade, na terminologia utilizada no captulo 4) do algoritmo gentico. Todas as solues candidatas sero avaliadas em termos deste ndice. O resperado ser calculado conforme a equao 6.7 a seguir (repetindo a equao 2.7):

resperado = w r T

(6.7)

onde w o vetor de pesos de cada ativo na carteira, e r o vetor de retornos previstos usando o modelo de redes neurais. J o esperado ser calculado com base na equao 6.8 a seguir (semelhante s equaes 2.11 e 2.12):

esperado = w Co var wT

(6.8)

Alm da funo objetivo, devem ser definidas tambm as restries que sero aplicadas ao modelo de otimizao. Primeiramente, optou-se por no se permitir alavancagem da carteira, ou seja, nenhum ativo pode ter mais de 100% da carteira, nem sero permitidas vendas a descoberto de quaisquer aes18. Esta restrio implementada no modelo atravs das seguintes equaes:

w
i

=1

0 wi 1

(6.9)

Outra restrio implementada no modelo de gesto diz respeito quantidade de aes diferentes na carteira. Dentre as 25 aes para escolher para a carteira, h a preferncia por ter uma quantidade mdia de papis visto que isto facilita a gesto cotidiana, e reduz a necessidade de controlar uma grande quantidade de diferentes aes. Assim, optou-se por impor uma restrio leve: h uma preferncia por solues que tenham ao mximo 8 aes em carteira. O termo leve se refere imposio de uma penalidade funo objetivo daquela determinada soluo candidata que represente uma carteira com mais de 8 aes . Isto diferente de impor uma restrio dura, como a representada pela equao 6.9, que obrigatoriamente

Vender a descoberto um jargo do mercado de aes que significa apostar na queda de uma determinada ao, alugando-a de algum que a possui (pagando por isso um pequeno juro) e vendendo a mesma no mercado. O lucro vem se o preo da ao cair, pois ficar mais barato para compr-la no mercado para entregar para o dono original.

18

112

no deve ser quebrada. Nesta, de quantidade de papis, a penalidade segue a seguinte funo:
desvio 100 penalidade = 100 e 1

(6.10)

Portanto, definidas a funo objetivo e as restries sobre ela impostas, falta definir os parmetros prprios do algoritmo gentico. A Tabela 17 mostra as escolhas realizadas:
Parmetro
Funo Objetivo Restries Populao Taxa de Crossover Taxa de Mutao Iteraes

Valor ndice de Sharpe modificado Pesos >= 0 Preferncia por 8 aes ou menos 1000 solues candidatas 50% 5% 100.000

Tabela 17: Parmetros do Algoritmo Gentico

Optou-se por trabalhar com populaes grandes (de 500 indivduos), para conseguir varrer uma parte relevante do espao de busca, que bastante grande para 25 aes. A taxa de mutao foi definida em 5% para no introduzir excessiva aleatoriedade na varredura do espao de busca, e a taxa de crossover em 50% para permitir que as boas solues tenham alta chance de se propagarem pelas populaes descendentes19. Todos os modelos sero rodados em 1000 iteraes, e interrompidos se a variao entre a utilidade da melhor soluo no variar em mais de 1% por 100 iteraes consecutivas. Com estas definies, garante-se que o algoritmo vai varrer uma regio considervel do espao de busca. Definidos todos os parmetros relevantes, possvel implementar o modelo e analisar as carteiras geradas e o resultado por elas alcanado.

6.5.3. Resultados Os inputs do modelo de gesto de carteiras esto definidos para o perodo entre 23/05/2003 e 10/10/2003. Assim, para cada uma destas datas, ser rodado um modelo de algoritmo gentico, o que corresponde a gerar, para cada dia, uma carteira tima, de maneira a poder analisar se as carteiras geradas pelo modelo trariam bons retornos caso fossem aplicadas na realidade. Uma hiptese que se faz daqui por
19

Vide sees 4.5 e 4.6 para detalhamento de todos os termos.

113

diante que todas as aes podem ser compradas em quaisquer quantidades, sem alterar o preo do mercado20. interessante acompanhar como o algoritmo gentico vai progressivamente alcanando solues melhores, atravs dos operadores de crossover e mutao. Nas figuras a seguir, possvel enxergar como, progressivamente, as solues candidatas com maior utilidade (neste caso, maior ndice de Sharpe modificado) vo dominando a populao total, numa evidncia clara de darwinismo computacional. Na Figura 21, os organismos mal-adaptados ainda dominam a populao (figura da direita, so o grosso, abaixo da linha preta), por terem aparecido antes (figura da esquerda, o ramo de baixo). J na Figura 22, os organismos bem-adaptados dominam a populao, e o ramo inferior passou a tender ao superior.
10 5 0 -5 -10 -15 -20
10 5 0 -5 -10 -15 -20

Trials

Organisms In Population

Figura 21: Evoluo da Utilidade das Solues (esq.) e Utilidade dos Organismos numa dada populao dentro do Algoritmo Gentico (dir.), ao incio da otimizao
20 15 10 5

20 15 10 5

0
-5 -10 -15 -20

-5 -10 -15

Trials

Organisms In Population

Figura 22: Evoluo da Utilidade das Solues (esq.) e Utilidade dos Organismos numa dada populao dentro do Algoritmo Gentico (dir.), prximo ao fim da otimizao

Para uma discusso de hipteses deste tipo, e seu papel na teoria de finanas, vide Campbell et al. (1997), cap. 3, pp.83-144, que versa sobre um tpico conhecido como Microestrutura de Mercado.

20

114

Algumas constataes foram feitas acerca do comportamento global do modelo de otimizao de carteira usando AGs: (i) embora fosse definido a priori 100.000 iteraes, para permitir uma boa varredura do espao de busca, de um modo geral, para todas as carteiras calculadas, o algoritmo convergia para a regio da soluo em torno de 3.000 iteraes a partir de um certo momento, foi reduzido este parmetro do modelo, de 100.000 para 10.000, sem perda perceptvel de performance e com ganho considervel em termos de tempo de mquina, processamento e memria (em problemas maiores, a definio adequada deste parmetro se torna fundamental portanto); (ii) de um modo geral, todas as implementaes do AG comeavam com ndice de Sharpe negativo, ou seja, buscando uma regio inadequada do espao de busca mas a mutao proporcionava, em torno de 500 iteraes, uma sada desta regio (por isso a taxa de mutao aparentemente alta 5% - quando comparado com as definies normalmente dadas em teoria vide captulo 4 de taxas em torno de 1%); (iii) todos os modelos foram inicializados com os mesmos valores para os pesos dos ativos na carteira: 4% para cada uma das 25% aes, totalizando 100%. Desse modo, evita-se a introduo de algum tipo de vis na heurstica modelada pelo algoritmo gentico. Para cada uma das 99 datas (de 23/05/2003 at 10/10/2003) foi otimizada uma carteira, tomando como entrada os retornos previstos para aquela data, os riscos idem, e a correlao com janela de 21 dias antes do incio do perodo. Assim, a carteira que o algoritmo gentico retornar para uma data t representa a carteira que o modelo recomenda que um investidor possua naquela data. Se estas 99 carteiras forem agregadas, tem-se ento o modelo de gesto via algoritmos genticos, com base em previses de retornos por redes neurais e previses de risco por GARCH. A performance deste portflio dinamicamente calculado a cada dia pode ento ser aferida, de modo a determinar se proporciona bons retornos sem incorrer em grandes riscos. Na Figura 23 e Figura 24, a seguir, tem-se os resultados obtidos. A Figura 23 traz a evoluo diria dos retornos das carteiras e a Figura 24 mostra uma evoluo do portflio, comeando com base 100 no dia 23/05/2003. Na Figura 24 esto ainda indicadas as duas grandes quedas que o portflio sofre ao longo do perodo analisado.

115

Retornos Dirios da Carteira Gerida pelo Modelo


8%

6%

4% 2%

0%

-2%

-4% -6%

-8%

-10% 23/5/2003

6/6/2003

20/6/2003

4/7/2003

18/7/2003

1/8/2003

15/8/2003

29/8/2003

12/9/2003

26/9/2003

10/10/2003

Figura 23: Retornos contnuos dirios das carteiras otimizadas por Algoritmo Gentico, entre 23/05/2003 e 10/10/2003.
Retorno da Carteira Gerida pelo Modelo - base 100
190 180 170 160 150 140 130 120 110 100
Da ta 29 /5 /2 00 3 5/ 6/ 20 03 12 /6 /2 00 3 20 /6 /2 00 3 27 /6 /2 00 3 4/ 7/ 20 03 14 /7 /2 00 3 21 /7 /2 00 3 28 /7 /2 00 3 4/ 8/ 20 03 11 /8 /2 00 3 18 /8 /2 00 3 25 /8 /2 00 3 1/ 9/ 20 03 8/ 9/ 20 03 15 /9 /2 00 3 22 /9 /2 00 3 29 /9 /2 00 3 6/ 10 /2 00 3

Queda 1

Queda 2

Figura 24: Evoluo do Portflio montado a partir das carteiras dirias

Os resultados se mostram bastante satisfatrios, mas com algumas ressalvas. O portflio teria gerado um retorno de 78,4% nos 100 dias de gesto. Contudo, este resultado no leva em conta nenhum custo de operao, o que poderia reduzir substancialmente a rentabilidade, ainda mais para carteiras reotimizadas diariamente. Alm disso, h uma volatilidade talvez excessiva na carteira, fruto da concentrao em alguns poucos papis. Uma maneira de resolver isso seria atravs da imposio de novas restries ao algoritmo gentico, proibindo por exemplo, a alocao de mais de 50% dos recursos em uma s ao. Assim, seria possvel capturar ainda boa parte da rentabilidade sem incorrer em tanta volatilidade.

116

6.6. Concluses

Como possvel observar, especialmente nas sees 6.3.4 e 6.5.3, os resultados obtidos pelos modelos aqui descritos e implementados so bastante significativos. No primeiro caso, a obteno de uma estrutura (feedforward com uma camada escondida, e 5 neurnios nesta camada) e um algoritmo (Levenberg-Marquardt) de rede neural artificial que proporciona excelentes resultados em termos de previses de preos de aes. No segundo, um modelo que integra previses de retornos por redes neurais realizadas pelo modelo anterior, previses de risco com um modelo GARCH (1,1) e um algoritmo gentico para otimizar dinamicamente a alocao do portflio, cuja performance em termos de rentabilidade, no perodo analisado, se mostrou bastante boa, mesmo sofrendo algumas quedas que podem ser consideradas expressivas ao longo do perodo.

117

7. CONCLUSES
O melhor meio de prever o futuro invent-lo.
Alan Key1

7.1. Concluses

As evidncias apresentadas no captulo anterior mostraram a possibilidade de, atravs de um processo cuidadoso de modelagem e construo experimental, usar redes neurais artificiais para a previso de preos de ativos financeiros. Embora a discusso sobre a previsibilidade inerente dos mercados ainda seja um tpico em aberto (vide seo 2.3.3), aparentemente a capacidade de redes, especialmente aquelas treinadas com algoritmo Levenberg-Marquardt, preverem preos futuros de aes, pode ser considerada como bastante real. De fato, os resultados obtidos subseqentemente ao desenvolvimento do modelo de previso de retornos, para alocao de carteiras, mostram que a capacidade de prever adequadamente os preos futuros proporciona benefcios claros em termos de ganho de rentabilidade. Alm da constatao da capacidade de redes neurais em prever o mercado, tambm bastante clara a concluso de que no qualquer rede que capaz de fazlo. Foram testadas, de maneira controlada, vrias redes, envolvendo muitas combinaes de topologia e algoritmo de treinamento, e apenas uma combinao se mostrou clara e indubitavelmente capaz de prever, consistentemente, os preos futuros de aes. Esta combinao, do algoritmo Levenberg-Marquardt com uma topologia de poucos neurnios na camada escondida mostrou resultados consistentes, e superou, com grande distncia, aqueles obtidos por outros algoritmos, seja os simples, como o Backpropagation, quanto os mais complexos, como o BFGS. Alm das redes neurais, a outra ferramenta de inteligncia artificial aqui discutida, os algoritmos genticos, atingiu plenamente os objetivos que se colocaram de antemo, quais sejam: (i) obter de maneira rpida e eficiente carteiras que otimizassem a relao risco-retorno, a partir de inputs de previses de retornos e risco; (ii) alcanar tal objetivo dentro de um espao de busca amplo, composto de

Apud Bass, 2000.

118

todas as combinaes possveis de 25 aes diferentes. Vale mencionar a fcil escalabilidade do modelo, ou seja, realizar o mesmo trabalho com 100 aes apenas uma questo de fora bruta computacional, daqui por diante.

7.2. Trabalho Futuros

O trabalho cientfico um edifcio em permanente construo, e este trabalho no se pretende isolado do resto. Se do levantamento da literatura ficou patente a ausncia de trabalhos na mesma rea (inteligncia artificial aplicada a finanas) no Brasil, mais evidente ficou a distncia separando o estado-da-arte sendo pesquisado l fora. A partir da, algumas avenidas futuras a serem percorridas podem ser levantadas: Incorporar mais dados aos modelos: aqui se esbarra no problema do tamanho do mercado acionrio brasileiro no h muitas aes com liquidez suficiente para proporcionar dados confiveis, alm daquelas j consideradas neste trabalho. Uma alternativa seria trabalhar com papis no exterior. Trabalhar com funes objetivo complexas dentro das redes neurais: como visto no captulo 5, muitos autores trabalham com uma juno de algoritmos genticos e redes neurais, de modo a ter funes objetivo (para determinar o erro ao longo do treinamento) mais complexas. Para melhorar a performance j muito boa do algoritmo Levenberg-Marquardt, esta pode ser uma boa opo. Trabalhar com Redes em Comit: gerar vrias redes simultaneamente e trabalhar com uma forma de comit de redes, com competio entre elas, e determinao de quais componentes afetam positiva ou negativamente sua performance. Este caminho seguido por Shadbolt e Taylor (Eds.) (2003), com resultados bastante promissores. Incorporar outros paradigmas de inteligncia artificial: lgica fuzzy, outros tipos de redes neurais, teoria do caos, dinmica no-linear, so todas ferramentas avanadas sendo aplicadas por pesquisadores ao redor do mundo na tarefa de tentar prever os mercados. Avanar nestas direes pode trazer resultados considerveis, tambm em mercados emergentes como o brasileiro.

119

8. BIBLIOGRAFIA

ALLEN, F. e KARJALAINEN, R. Using genetic algorithms to find technical trading rules in Journal of Financial Economics 51, pp. 245271, 1999.

ARMANO, G. et al. Stock Market Prediction by a mixture of Genetic-Neural Experts in International Journal of Pattern Recognition and Artificial Intelligence Vol.16 No.5, pp. 501-526, 2002.

BECKER, L.A. e SESHADRI, M. GP-evolved Technical Trading Rules can outperform Buy and Hold, Worcester: Dept. of Computer Science, Worcester Polytechnic Institute, 2002.

BERNSTEIN, P. L. Against the Gods: The Remarkable Story of Risk, Nova York: John Wiley & Sons, 1998.

BERNSTEIN, P. L. Capital Ideas: The improbable origins of modern Wall Street, Nova York: Touchstone Books, 1993.

BHATTACHARYYA, S. et al. Knowledge-Intensive Genetic Discovery in Foreign Exchange Markets in IEEE Transactions On Evolutionary Computation, vol. 6, no. 2, 169-181, 2002.

BOYD, M. e KAASTRA, I. Designing a neural network for forecasting financial and economic time series in Neurocomputing 10, pp. 215-236, 1996.

BRUNI, A. L. e FAM, R. Moderna Teoria de Portflios: possvel captar, na prtica, os benefcios decorrentes de sua utilizao? in Resenha BM&F 128, pp. 1932, 1998.

BUSCEMA, M. e SACCO, L. Feedforward Networks in financial predictions: the future that modifies the present in Expert Systems, Vol. 17, No. 3, 2000.

120

CAMPBELL, J. Y. et al. The Econometrics of Financial Markets, Princeton: Princeton University Press, 1997.

CHAN, M.C. et al. Financial Time Series Forecasting by Neural Network using conjugate gradient learning algorithm and multiple linear regression weight initialization, Hong Kong: Dept. of Computing, The Hong Kong Polytechnic University, 2002.

CHEN, A.P. et al. Establishing an Index Arbitrage Model by applying Neural Networks method a case study of Nikkei 225 Index in International Journal of Neural Systems Vol.11 No.5, pp. 489-496, 2001.

CHEN, S.H. (Ed.) Genetic Algorithms and Genetic Programming in Computational Finance, Nova York: Kluwer Academic Publishers, 2002.

CHEN, S.H. Can We Believe that Genetic Algorithms would help without actually seeing them work in Financial Data Mining? Part 1, Theoretical Foundations, Taipei: National Chengchi University, 2000.

CHENOWETH, T. et al. Embedding Technical Analysis into Neural Network based trading systems in Journal of Applied Artificial Intelligence 10, pp. 523-541, 1996.

DEBOECK, G.J. (Ed.) Trading on the Edge Neural, Genetic and Fuzzy Systems for Chaotic Financial Markets, Nova York: John Wiley & Sons, 1994.

DEMUTH, H. e BEALE, M. Neural Network Toolbox for use with MATLAB Users Guide Version 4, Natick: The Mathworks, Inc., 2001.

EAKINS, S.G. e STANSELL, S.R. Can value-based stock selection criteria yield superior risk-adjusted returns: an application of neural networks in International Review of Financial Analysis 12, pp. 83-97, 2003.

121

FERNNDEZ-RODRGUEZ, F. et al. On the profitability of technical trading rules based on artificial neural networks: Evidence from the Madrid stock market in Economic Letters 69, pp. 89-94, 2000.

FIGUEIREDO, A. C. et al. A Utilizao da Teoria de Carteiras de Markowitz e do Modelo de ndice nico de Sharpe no Mercado de Aes Brasileiro em 1999 in Resenha BM&F 141, pp. 51-59, 2000.

FORTUNA, E. Mercado Financeiro Produtos e Servios, So Paulo: Qualitymark Editora, 2002.

FREEDMAN, R.S. e DIGIORGIO, R. A Comparison of Stochastic Search Heuristics for Portfolio Optimization in Proc. 2nd International Conference on Artificial Intelligence Applications on Wall Street, pp.149-151, 1993.

FREITAS, S.O. e SOUZA, A.A. Utilizao de redes neurais na precificao de opes in Resenha BM&F 150, pp. 63-73, 2002.

GILES, C.L. et al. Rule Inference for Financial Prediction using Recurrent Neural Networks in Proc. IEEE/IAFE Conference on Computational Intelligence for Financial Engineering, pp. 253-259, 1997.

GRUBER, E. et al. Modern Portfolio Theory and Investment Analysis, Nova York: John Wiley & Sons, 2003.

HAMID, S.A. e IQBAL, Z. Using neural networks for forecasting volatility of S&P 500 Index futures prices in Journal of Business Research 5881, pp. 1-10, 2003.

HARLAND, Z. Using Nonlinear Neurogenetic models with profit related objective functions to trade the US TBond future, Nova York: Krueger Research, 2000.

122

HAYKIN, S. Redes Neurais Princpios e Fundamentos, So Paulo: Bookman, 2001.

JORION, P. Value at Risk: The New Benchmark for Controlling Market Risk, Nova York: McGraw-Hill, 1997.

KALYVAS, E. Using Neural Networks and Genetic Algorithms to Predict Stock Market Returns, Manchester: University of Manchester Department of Computer Science, 2001.

KIM, S.H. e CHUN, S.H. Graded forecasting using an array of bipolar predictions: application of probabilistic neural networks to a stock market index in International Journal of Forecasting 14, pp. 323-337, 1998.

KORCZAK, J. e LIPINSKI, P. Evolutionary Approach to Portfolio Optimization, Research Report 2001/05, University Louis Pasteur, Illkirch, 2001.

KORCZAK, J. e ROGER, P. Stock Timing using genetic algorithms, Research Report 2001/08, University Louis Pasteur, Illkirch, 2001.

LAWRENCE, R. Using Neural Networks to Forecast Stock Market Prices, Manitoba: University of Manitoba Department of Computer Science, 1997.

LAZO LAZO, J. G. Sistema Hbrido Gentico-Neural para Montagem e Gerenciamento de Carteiras de Aes, Rio de Janeiro: PUC-RJ, 2000.

LEUNG, M.T. et al. Forecasting stock indices: a comparison of classification and level estimation models in International Journal of Forecasting 16, pp. 179-190, 2000.

123

LI, J. e TSANG, E.P.K. Reducing Failures in Investment Recommendations using Genetic Programming in Proc. Sixth International Conference on Computing in Economics and Finance, Barcelona, pp.1-14, 2000.

LI, J. e TSANG, E.P.K. Combining Ordinal Financial Predictions with Genetic Programming, Essex: Department of Computer Science, University of Essex, 1999.

LI, J. e TSANG, E.P.K. Improving Technical Analysis Predictions: An Application of Genetic Programming, Essex: Department of Computer Science, University of Essex, 1999.

MALKIEL, B.G. A Random Walk Down Wall Street, Completely Revised and Updated 8th Edition, Nova York: W.W. Norton & Company, 2003.

McINTYRE-BHATTY, Y.T. Neural network analysis and the characteristics of market sentiment in the financial markets in Expert Systems Vol. 17 No. 4, 2000.

McNELIS, P. A Neural Network Analysis of Brazilian Stock Prices: Tequila Effects vs. Pisco Sour Effects in Journal of Emerging Markets Vol.1 No.2, 1996.

McNELIS, P. Computational Finance with Neural Networks, Washington: Department of Economics, Georgetown University, 2003.

MITCHELL, M. An Introduction to Genetic Algorithms, Cambridge: The MIT Press, 1996.

MOISO, R.L.M. e PIRES, F.M. Prediction Model, based on Neural Networks, for Time Series with Origin in Chaotic Systems, Working Paper, Universidade de vora, 2001.

124

OLSON, D. e MOSSMAN, C. Neural Network forecast of Canadian stock returns using accounting ratios in International Journal of Forecasting 19, pp. 453-465, 2003.

RAPOSO, R. C. T. e CRUZ, A. J. O. Stock Market prediction based on fundamentalist analysis with fuzzy-neural networks, Rio de Janeiro: Instituto de Matemtica-UFRJ, 1999.

REFENES, A.P. (Ed.) Neural Networks in the Capital Markets, Londres: John Wiley & Sons, 1995.

REFENES, A.P. e ZAPRANIS, A.D. Principles of Neural Model Identification, Selection and Adequacy: With Applications in Financial Econometrics, Londres: Springer-Verlag, 1999.

SHADBOLT, J. e TAYLOR, J. G. (Eds.) Neural Networks and the Financial Markets Predicting, Combining and Portfolio Optimization, Londres: SpringerVerlag, 2003.

SKABAR, A. e CLOETE, I. Neural Networks, Financial Trading and the Efficient Markets Hypothesis in Proc. 25th Australasian Computer Science Conference, Melbourne, Australia, 2001.

SORNETTE, D. Why Stock Markets Crash Critical Events in Complex Financial Systems, Princeton: Princeton University Press, 2003.

SWALES, G.S. e YOON, Y. Applying artificial neural networks to investment analysis in Financial Analysts Journal 48, pp. 78-80, 1992.

THAWORNWONG, S. et al. Genetic Algorithms and Neural Networks for Stock Trading Prediction and Technical Signal Optimization in Proc. Decision Sciences Institute 2002 Annual Meetings, pp. 776-781, 2002.

125

THE MATHWORKS, INC. GARCH Toolbox Users Guide, version 1, 1999.

TRIPPI, R.R. e LEE, J.K. Artificial Intelligence in Finance & Investing State-ofthe-Art Technologies for Securities Selection and Portfolio Management, Chicago: Irwin Professional Publishing, 1996.

VERLEYSEN, M. e BODT, E. e LENDASSE, A. Forecasting financial time series through intrinsic dimension estimation and non-linear data projection in Proc. IWANN99 International Work Conference on Artificial and Natural Neural Networks, pp. II-596-II605, 1999.

WATADA, J. e ODA, K. Formulation of a Two-Layered Boltzmann Machine for Portfolio Selection in International Journal of Fuzzy Systems Vol.2 No.1, pp 39-44, 1999.

WONG, B.K. et al. Neural Network Applications in Business: A Review and Analysis of the literature (1988-1995) in Decision Support Systems, vol. 19, pp. 301-320, 1997.

XU, L. e CHEUNG, Y.M Adaptative Supervised Learning Decision Networks for Trading and Portfolio Management in Journal of Computational Intelligence in Finance November/December 1997, pp. 11-16, 1997.

YAO, J. e TAN, C.L. A Study on Training Criteria for Financial Time Series Forecasting, Cingapura: Dept. of Computer Science, National University of Singapore, 2001.

YAO, J. e TAN, C.L. Guidelines for Financial Forecasting with Neural Networks, Cingapura: Dept. of Computer Science, National University of Singapore, 2001.

126

ZAHEDI, F. Intelligent Systems for Business, Expert Systems with Neural Networks, Londres: Wodsworth Publishing Inc., 1993.

ZEKI-SUSAC, M. Neural Networks in Investment Profitability Decisions, Zagreb: University of Zagreb - Department of Organization and Informatics, 1999.

ZHANG, G. et al. Forecasting with Neural Networks: The state of the art in International Journal of Forecasting 14 pp. 35-62, 1998.

127

APNDICE 1 - DETALHAMENTO DOS MODELOS & CDIGOS


A1.1. Modelo de Redes Neurais Ao longo da seo 6.3, foram discutidos os detalhes dos modelos de redes neurais utilizados para a realizao de previses de retornos de 25 aes diferentes. Neste apndice, vai-se expandir e detalhar o funcionamento deste modelo. O primeiro passo era agrupar e tratar os dados. Para cada uma das 25 aes, foi construda uma matriz contendo, nas colunas, cada um dos 11 tipos de dados a serem usados nas previses, e nas linhas, cada observao destes dados, entre as datas 10/05/1999 e 10/10/2003. As matrizes tm o formato exemplificado na Figura A1.1, para a ao Vale do Rio Doce PNA (VALE5). Os cdigos usados nesta matriz tm a correspondncia com tais dados de acordo com o exposto na Tabela A1.1.
VALE5 med max min vol dolar pre30d pre360d ibov dow s&p nasdaq

10/5/1999 11/5/1999 12/5/1999 13/5/1999 14/5/1999 17/5/1999 18/5/1999 19/5/1999

38,71 35,95 34,37 36,02 36,11 35,15 34,92 35,01

39,30 38,05 35,60 36,49 36,90 36,50 35,75 35,50

37,60 35,10 34,00 35,00 35,49 34,60 34,10 34,50

10.210.534,00 18.927.128,00 14.867.629,00 26.421.234,00 14.124.289,00 3.806.988,00 7.599.070,00 8.170.938,00

1,71 1,73 1,72 1,73 1,75 1,74 1,74 1,75

26,74 26,43 26,02 22,11 21,05 23,12 22,63 22,41

24,02 23,87 23,77 22,39 22,68 22,74 22,51 22,77

10.675,00 10.734,00 10.691,00 10.568,00 10.441,00 10.211,00 10.264,00 10.172,00

10.863,20 10.979,00 10.972,10 10.791,30 10.655,20 10.646,00 10.677,30 10.674,80

1.347,76 1.362,84 1.365,40 1.341,03 1.328,72 1.328,05 1.322,18 1.305,33

2.233,51 2.308,78 2.333,78 2.263,06 2.270,93 2.264,81 2.239,18 2.204,33

3/10/2003 6/10/2003 7/10/2003 8/10/2003 9/10/2003 10/10/2003

116,32 116,66 117,19 115,76 113,47 111,75

117,70 117,80 117,80 116,70 114,40 113,99

113,51 115,60 115,84 113,20 112,05 111,31

27.068.785,00 17.301.407,00 26.919.569,00 27.585.973,00 23.600.763,00 17.835.810,00

2,89 2,88 2,87 2,84 2,84 2,84

19,34 19,25 19,17 19,08 19,04 19,01

17,81 17,84 17,87 17,76 17,71 17,70

17.089,00 17.273,00 17.470,00 17.804,00 17.708,00 17.676,00

9.572,31 9.594,98 9.654,61 9.630,90 9.680,01 9.674,68

1.029,85 1.034,35 1.039,25 1.033,78 1.038,73 1.038,06

1.375,32 1.381,70 1.392,56 1.382,40 1.396,95 1.404,87

Figura A1.1: Exemplo de Matriz de Dados de Entrada para VALE5


Dado
Preo Mdio da Ao Preo Mximo da Ao Preo Mnimo da Ao Volume Negociado Cotao do Dlar Taxa de Juros de 30 dias Taxa de Juros de 360 dias ndice Bovespa ndice Dow Jones Industrials ndice S&P 500 ndice Nasdaq 100

Cdigo
med max min vol dolar pre30d pre360d ibov dow s&p nasdaq

Tabela A1.1: Tipos de Dados e seus cdigos na Matriz de Dados

Cada uma das 25 aes tem sua matriz correspondente, onde as principais mudanas esto nos quatro primeiros dados, sendo que os sete restantes so dados do mercado em geral, no sendo especficos de cada ao. Uma vez construdas as i

matrizes, estas eram introduzidas no MATLAB, onde seriam manipuladas de acordo com o modelo proposto: primeiramente pr-processadas, depois introduzidas no modelo de rede neural, para a realizao dos processos de treinamento e validao das redes neurais. O pr-processamento, conforme discutido na seo 6.3.2, consiste em duas etapas: normalizao e PCA. Ambas so implementas diretamente via MATLAB. A normalizao consiste em transformar a srie histrica em uma srie com mdia zero e varincia unitria. Este processo est exemplificado na srie de preos mdios de ARCZ6 (Aracruz PNB) da Figura A1.2.
A R C Z6 m ed AR C Z6 m ed

10/5/1999 11/5/1999 12/5/1999 13/5/1999 14/5/1999 17/5/1999

3,54 3,46 3,49 3,48 3,47 3,46

10/5/1999 11/5/1999 12/5/1999 13/5/1999 14/5/1999 17/5/1999

-0,764033 -0,822067 -0,800304 -0,807558 -0,814812 -0,822067

NO R M A LIZA O
3/10/2003 6/10/2003 7/10/2003 8/10/2003 9/10/2003 8,12 8,20 8,11 8,20 8,30 3/10/2003 6/10/2003 7/10/2003 8/10/2003 9/10/2003 2,558385 2,616419 2,551131 2,616419 2,688961

Figura A1.2: Normalizao dos Dados

Todas as sries temporais passavam pelo processo de normalizao. Aps isto, eram submetidas Anlise de Componentes Principais, uma tcnica mais complexa, e que por isto mesmo no ser detalhada aqui. suficiente dizer que tal tcnica reduz a dimenso da matriz de entrada de dados, visto que supe-se haver uma certa correlao entre os dados de entrada. Esta tcnica limpa tal correlao, e mantm na matriz de entrada apenas dos dados relevantes para a realizao das previses. Para cada uma das 25 aes, o processo de PCA (Principal Component Analysis) traz resultados diferentes, e portanto no vai ser aqui generalizado. Apenas um exemplo de como funciona vai ser dado, no contexto de todo o processo de pr-processamento da matriz de entrada de dados. Na Figura A1.3, mostrado todo o processo at aqui descrito, para a matriz de entrada de ARCZ6. Primeiro aparece a matriz inicial, depois a matriz com todas as sries j normalizadas, e a seguir a matriz aps terem sido deixados apenas seus componentes principais.

ii

ARCZ6 med max min vol dolar pre30d pre360d ibov dow s&p nasdaq

10/5/1999 11/5/1999 12/5/1999 13/5/1999 14/5/1999 3/10/2003 6/10/2003 7/10/2003 8/10/2003 9/10/2003

3,54 3,46 3,49 3,48 3,47 8,12 8,20 8,11 8,20 8,30

3,63 3,60 3,53 3,50 3,48 8,20 8,27 8,15 8,27 8,37

3,45 3,45 3,40 3,45 3,40 8,05 8,11 8,07 8,11 8,15

584.070,00 1.550.960,00 206.140,00 198.460,00 249.500,00 5.142.490,00 2.623.240,00 3.162.240,00 6.330.940,00 6.969.660,00

1,71 1,73 1,72 1,73 1,75 2,89 2,88 2,87 2,84 2,84

26,74 26,43 26,02 22,11 21,05 19,34 19,25 19,17 19,08 19,04

24,02 23,87 23,77 22,39 22,68 17,81 17,84 17,87 17,76 17,71

10.675,00 10.734,00 10.691,00 10.568,00 10.441,00 17.089,00 17.273,00 17.470,00 17.804,00 17.708,00

10.863,20 10.979,00 10.972,10 10.791,30 10.655,20 9.572,31 9.594,98 9.654,61 9.630,90 9.680,01

1.347,76 1.362,84 1.365,40 1.341,03 1.328,72 1.029,85 1.034,35 1.039,25 1.033,78 1.038,73

2.233,51 2.308,78 2.333,78 2.263,06 2.270,93 1.375,32 1.381,70 1.392,56 1.382,40 1.396,95

ARCZ6 med max min vol dolar pre30d pre360d ibov dow s&p nasdaq

Normalizao
(0,76) (0,82) (0,80) (0,81) (0,81) 2,56 2,62 2,55 2,62 2,69 (0,75) (0,77) (0,82) (0,84) (0,86) 2,53 2,58 2,49 2,58 2,65
ARCZ6 1 2 3 4 5 6 7 8

10/5/1999 11/5/1999 12/5/1999 13/5/1999 14/5/1999 3/10/2003 6/10/2003 7/10/2003 8/10/2003 9/10/2003

(0,78) (0,78) (0,82) (0,78) (0,82) 2,61 2,65 2,62 2,65 2,68

(0,86) (0,46) (1,01) (1,01) (0,99) 1,00 (0,02) 0,20 1,49 1,75

(1,19) (1,16) (1,18) (1,16) (1,13) 0,75 0,72 0,72 0,67 0,67

2,26 2,16 2,02 0,75 0,41 (0,15) (0,18) (0,20) (0,23) (0,24)

0,41 0,37 0,34 0,01 0,08 (1,12) (1,11) (1,10) (1,13) (1,14)

(1,00) (0,98) (0,99) (1,04) (1,08) 1,32 1,39 1,46 1,58 1,54

0,88 0,98 0,98 0,82 0,70 (0,26) (0,24) (0,19) (0,21) (0,17)

0,83 0,90 0,91 0,80 0,74 (0,64) (0,62) (0,60) (0,62) (0,60)

0,19 0,26 0,29 0,22 0,23 (0,63) (0,63) (0,61) (0,62) (0,61)

10/5/1999 11/5/1999 12/5/1999 13/5/1999 14/5/1999 3/10/2003 6/10/2003 7/10/2003 8/10/2003 9/10/2003

0,93 1,03 1,16 1,47 1,49 (2,81) (2,72) (2,63) (2,77) (2,83)

1,57 1,36 1,61 1,52 1,60

(1,54) (1,28) (1,56) (0,84) (0,65)

1,06 1,32 0,94 0,32 0,25

0,32 0,37 0,42 0,71 0,72 0,59 0,63 0,59 0,51 0,60

(2,16) (2,13) (1,99) (1,18) (0,87) 0,52 0,65 0,64 0,56 0,55

0,22 0,21 0,21 0,35 0,40 (0,18) (0,25) (0,31) (0,25) (0,22)

(0,21) (0,16) (0,13) (0,17) (0,20) (0,31) (0,30) (0,31) (0,45) (0,47)

PCA

(3,87) (0,17) (1,24) (3,51) (0,86) (1,90) (3,59) (0,71) (1,75) (4,28) 0,08 (1,00) (4,45) 0,21 (0,84)

Figura A1.3: Pr-Processamento da Matriz de Dados

Na passagem aps o PCA, no mais possvel identificar as sries temporais com suas respectivas origens. Contudo, o software armazena a matriz de transformao, para que seja possvel realizar o ps-processamento dos resultados. Tendo a matriz de dados a serem introduzidos na rede neural, falta apenas a srie cujos padres a rede neural deve aprender, ou seja, a srie-alvo do processo de treinamento. Este pode ser resumido da seguinte maneira: a rede recebe uma srie de dados de entrada (digamos, os oito dados pr-processados, para o dia 10/05/1999, da ao ARCZ6, conforme visto na Figura A1.3), e deve tentar prever o preo da mesma ao no dia 11/05/1999. Esta previso vai ento ser comparada com a previso dita perfeita, ou seja, o preo conhecido no dia 11/05/1999, e a partir da um erro de previso deve ser calculado. Este erro ento introduzido na rede, cujos pesos so adaptados na tentativa de minimiz-lo. Este processo iterativo acaba por gerar (espera-se) uma rede neural que seja capaz de boas previses. Sendo assim, pode ser construda a srie-alvo a ser introduzida no modelo de rede neural: ela simplesmente a srie de preos mdios da ao X, deslocada em 1 dia. Tem-se assim

iii

todos os dados a serem introduzidos na rede neural. Na Figura A1.4 estes esto exibidos.
ARCZ6 med max min vol dolar pre30d pre360d ibov dow s&p nasdaq Target d+1

10/5/1999 11/5/1999 12/5/1999 13/5/1999 14/5/1999

3,54 3,46 3,49 3,48 3,47

3,63 3,60 3,53 3,50 3,48

3,45 3,45 3,40 3,45 3,40

584.070,00 1.550.960,00 206.140,00 198.460,00 249.500,00

1,71 1,73 1,72 1,73 1,75

26,74 26,43 26,02 22,11 21,05

24,02 23,87 23,77 22,39 22,68

10.675,00 10.734,00 10.691,00 10.568,00 10.441,00

10.863,20 10.979,00 10.972,10 10.791,30 10.655,20

1.347,76 1.362,84 1.365,40 1.341,03 1.328,72

2.233,51 2.308,78 2.333,78 2.263,06 2.270,93

3,46 3,49 3,48 3,47 3,46

3/10/2003 6/10/2003 7/10/2003 8/10/2003 9/10/2003

8,12 8,20 8,11 8,20 8,30

8,20 8,27 8,15 8,27 8,37

8,05 8,11 8,07 8,11 8,15

5.142.490,00 2.623.240,00 3.162.240,00 6.330.940,00 6.969.660,00

2,89 2,88 2,87 2,84 2,84

19,34 19,25 19,17 19,08 19,04

17,81 17,84 17,87 17,76 17,71

17.089,00 17.273,00 17.470,00 17.804,00 17.708,00

9.572,31 9.594,98 9.654,61 9.630,90 9.680,01

1.029,85 1.034,35 1.039,25 1.033,78 1.038,73

1.375,32 1.381,70 1.392,56 1.382,40 1.396,95

8,20 8,11 8,20 8,30 8,16

Figura A1.4: Matriz completa com Dados e Srie-alvo

Note-se como a srie-alvo nada mais do que a srie md, ou seja, os preos mdios da ao, deslocada em um dia. Note-se tambm que a srie-alvo passa pelo mesmo pr-processamento j descrito, basicamente a normalizao. Uma vez preparados os dados, pode ser iniciado o processo de treinamento da rede neural. A matriz de dados introduzida no modelo, cujos pesos iniciais so iniciados randomicamente. O modelo separa os dados em partes de treinamento, validao e teste, conforme explicado na seo 6.3.3 e resumido na Figura 9. A partir da, segue o processo de treinamento, controlando os erros do modelo de maneira a gerar uma boa capacidade de previso. Ao fim do processo de treinamento, o modelo gera previses para 100 dias adiante, conforme a Figura 9. Todas as sadas da rede passam pelo ps-processamento, sendo renormalizadas, para que os resultados sejam comparveis com os resultados desejados. O cdigo completo de MATLAB usado para definir as redes est na seo A1.4.

A1.2. Modelo GARCH

O funcionamento do modelo GARCH ainda mais simples. Para ele necessrio apenas um input, os preos mdios das aes. A partir dos preos, o modelo calcula os retornos dirios contnuos para os ltimos 21 dias (este o tamanho da janela utilizada), estima os parmetros da equao GARCH, e realiza a previso para t+1 conforme esta equao. A previso armazenada, e a janela desliza um dia, reiniciando todo o processo. Este est resumido na Figura A1.5.

iv

ARCZ6 med

ARCZ6 Retornos

10/5/1999 11/5/1999 12/5/1999 13/5/1999 14/5/1999 17/5/1999

3,54 3,46 3,49 3,48 3,47 3,46

10/5/1999 11/5/1999 12/5/1999 13/5/1999 14/5/1999 17/5/1999

-2,286% 0,863% -0,287% -0,288% -0,289%

Retornos
3/10/2003 6/10/2003 7/10/2003 8/10/2003 9/10/2003 8,12 8,20 8,11 8,20 8,30
3/10/2003 6/10/2003 7/10/2003 8/10/2003 9/10/2003 1,115% 0,980% -1,104% 1,104% 1,212%

Parmetros Do Modelo

yt = C + t

t2 = + G1 t21 + A1 t21

= 1,2%

Figura A1.5: Funcionamento do Modelo GARCH

O cdigo de MATLAB escrito para implementao deste modelo est na seo A1.4.2.

A1.3. Modelo de Algoritmo Gentico

O modelo de redes neurais gera previses de retornos para as datas entre 23/05/2003 e 10/10/2003. O modelo GARCH gera previses de risco para estas mesmas datas. O modelo de algoritmo gentico une estas duas previses para, dentro do paradigma terico da moderna teoria de portflios, realizar a otimizao da alocao das carteiras. O modelo implementado via um suplemento para Excel, chamado Evolver. Este suplemento j tem implementado um conjunto de funes para criao e manipulao de algoritmos genticos. Assim, basta definir a funo utilidade, as restries e os outros parmetros do modelo (todos delineados na seo 6.5.2 e resumidos na Tabela 17), e colocar o modelo para rodar. Como se deseja montar carteiras para todas as datas entre 23/05/2003 e 10/10/2003, o modelo deve ser rodado 99 vezes, cada uma gerando uma alocao diferente entre as 25 aes para as quais se tem previso de retornos e riscos. A Figura A1.6 mostra a planilha em Excel com a janela do Evolver aberta, onde so definidos os parmetros do modelo. Nesta janela est definida a funo utilidade e as restries. Os outros parmetros do modelo so definidos em uma janela subseqente. v

Figura A1.6: Janela do Excel com Evolver

Aps estruturar o modelo, deve-se colocar o Evolver para rodar. A partir da, os resultados podem ser acompanhados iterativamente, atravs de uma janela especial. Esta mostrada na Figura A1.7.

Figura A1.7: Evolver em operao

vi

Nela pode ser observado, no canto esquerdo superior, os resultados obtidos (em termos de melhor organismo na populao, ou seja, melhor carteira) numericamente. No canto superior direito aparece a distribuio de utilidade dos organismos na populao da iterao atual. No canto inferior esquerdo aparece a distribuio de genes dentro do genoma completo da iterao atual, ou seja, mostra onde h diversidade gentica, em uma tabela de cores. Por fim, no canto inferior direito aparece a evoluo dos resultados ao longo das iteraes j passadas. O modelo pra de rodar aps um nmero pr-determinado de iteraes, e mostra como resultado as alocaes de cada papel na carteira de aes. A partir da, estas podem ser facilmente manipuladas e analisadas usando as funcionalidades inerentes do Excel.

A1.4. Principais Cdigos

Nesta seo so mostrados e brevemente analisados os principais cdigos usados para construo e implementao dos modelos descritos anteiormente. Note-se que todos os cdigos esto disposio dos interessados, bastando contatar o autor.

A1.4.1. Rede Neural

Os modelos de rede neural so implementados atravs de um conjunto de cinco funes. Cada uma usa um algoritmo de treinamento dentre os que sero analisados: Backpropagation com momentum, Backpropagation Resiliente, Powell-Beale, BFGS, Levenberg-Marquardt. Elas se aproveitam das capacidades do MATLAB, que tem dentro do Neural Network Toolbox uma srie de funes que permitem criar e manipular redes neurais. O cdigo aqui descrito se aproveita disto, e organiza tanto as entradas quanto os resultados da maneira definida pelo modelo. Dada a semelhana entre as cinco funes, ser exemplificado o cdigo de apenas uma delas. A nica diferena entre elas est na funo de MATLAB que define o algoritmo de treinamento a ser utilizado. O cdigo da funo previsao_retornos_Levenberg_ea est a seguir, e implementa uma rede neural com treinamento Levenberg-Marquardt.

vii

O cdigo est em azul e os comentrios do autor aps o smbolo % em preto.


function resultado=previsao_retornos_Levenberg_ea(inputs, targets, hidden) p = inputs; t = targets; %Normalizao das entradas e targets %para media zero e varincia unitria [pn, meanp, stdp,tn, meant, stdt] = prestd(p,t); %Realizar PCA e deixar apenas componentes responsveis por mais de 0.1% da variao [ptrans, transMat] = prepca(pn,0.001); %Dividir os dados em treinamento, validao e teste. A validao ser feita com os 100 %preos antes da faixa de teste.O teste com os 100 ltimos preos. [R,Q] = size(ptrans); iitr = 1:Q-200; iival = Q-200:Q-100; iitst = Q-100:Q; ptr = ptrans(:,iitr); ttr = tn(:,iitr); validation.P = ptrans(:,iival); validation.T = tn(:,iival); testing.P = ptrans(:,iitst); testing.T = tn(:,iitst); %Definir a Rede Neural %Algoritmo de Treinamento Levenberg-Marquardt 'trainlm' h = hidden; net = newff(minmax(ptr), [h 1], {'tansig' 'purelin'}, 'trainlm'); net.trainParam.show = 100; %Treinar a Rede Neural [net,tr] = train(net, ptr, ttr, [], [], validation, testing); %Plotar os erros de treinamento, validacao e teste. subplot(3,1,1) plot(tr.epoch,tr.perf,'r',tr.epoch,tr.vperf,':g',tr.epoch,tr.tperf,'-.b') legend('Treinamento','Validaao','Teste',-1) ylabel('Erro Quadratico') %Simular a rede treinada. Converter os resultados para media e variancia originais. an = sim(net, ptrans); a = poststd(an, meant, stdt); subplot(3,1,2) plot(t(1000:1099)) hold on plot(a(1000:1099), 'm') title('Comparaao entre targets e previsao da rede') legend('Target','Previsao') xlabel('Dias') ylabel('Preo') %Fazer analise de regresso outputs da rede treinada x targets. subplot(3,1,3) [m,b,r]=postreg(a,t); resultado=r;

viii

A1.4.2. Modelo GARCH O modelo implementado atravs de uma funo e de um script. A funo chamada de previso_risco e se utiliza de duas funes que o MATLAB j tem previamente implementada, chamadas garchfit e garchpred. A primeira otimiza os parmetros do modelo, e a segunda realiza previses, dados os parmetros. O script serve para passar os dados de cada uma das 25 aes para a funo, e armazenar os resultados, para facilitar a tarefa de anlise posterior. O cdigo da funo previso_risco est a seguir, com cdigo em azul e comentrios aps o smbolo % em preto.
function [volatilidade]=previsao_risco(dados, janela) %a funo previsao_risco adapta um modelo GARCH (1,1) na serie %temporal de preos de um ativo, fornecida via o argumento 'dados' %alem disso, o processo iterativo, atravs do parmetro janela, %onde se define o tamanho da janela deslizante a ser utilizada para %a realizao da previso. precos = dados; j = janela; size = length(precos)-j; i = 1; while (i <= size) %calcula os retornos contnuos ret = price2ret(precos(i:i+j)); %estima os parmetros do modelo GARCH [coeff, errors, LLF, innovations, sigma] = garchfit(ret); %realiza a previso um dia a frente [sFcast] = garchpred(coeff, ret); %guarda a previso vol(i) = [sFcast]; i = i + 1; end %retorna o vetor completo de previses de risco [volatilidade]=vol; end

ix

APNDICE 2 - RESULTADOS COMPLETOS

A2.1. Introduo

Nas sees 6.3.4 e 6.4 so descritos os principais resultados obtidos nos modelos de previso analisados, tanto para previso de retornos como para previso de riscos. Estes so apresentados em forma de grficos (os dados numricos esto disposio dos interessados).

A2.2. Previso de Retornos

Conforme descrito no item 6.5.1 deste trabalho, foi escolhida uma rede neural com 5 neurnios na camada escondida e algoritmo de treinamento LevenbergMarquardt para realizao das previses de retornos para cada uma das 25 aes escolhidas. As previses foram realizadas para o perodo entre 22/05 e 10/10. Em todos os grficos a seguir, mostrada uma comparao entre o preo previsto pela rede neural (curvas em azul) e o preo observado no mercado (ou preo histrico, dado nas curvas em vermelho).
9,00 8,00 7,00 6,00 5,00 4,00 3,00 22-mai-03

12-jun-03

3-jul-03

24-jul-03

14-ago-03

4-set-03

25-set-03

ARCZ6 Previso
18,00 17,00 16,00 15,00 14,00 13,00 12,00 11,00 10,00 22-mai-03

ARCZ6 Histrico

12-jun-03

3-jul-03

24-jul-03

14-ago-03

4-set-03

25-set-03

BBAS3 Previso

BBAS3 Histrico

13,50 13,00 12,50 12,00 11,50 11,00 10,50 10,00 22-mai-03

12-jun-03

3-jul-03

24-jul-03

14-ago-03

4-set-03

25-set-03

BBDC4 Previso
650,00 600,00 550,00 500,00 450,00 400,00 350,00 22-mai-03

BBDC4 Histrico

12-jun-03

3-jul-03

24-jul-03

14-ago-03

4-set-03

25-set-03

BELG4 Previso
45,00 40,00 35,00 30,00 25,00 20,00 22-mai-03

BELG4 Histrico

12-jun-03

3-jul-03

24-jul-03

14-ago-03

4-set-03

25-set-03

CMIG4 Previso
12,00 11,00 10,00 9,00 8,00 7,00 6,00 22-mai-03

CMIG4 Histrico

12-jun-03

3-jul-03

24-jul-03

14-ago-03

4-set-03

25-set-03

CPLE6 Previso

CPLE6 Histrico

xi

130,00 120,00 110,00 100,00 90,00 80,00 70,00 60,00 50,00 40,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03 14-ago-03 4-set-03 25-set-03

CSNA3 Previso
80,00 75,00 70,00 65,00 60,00 55,00 50,00 45,00 40,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

CSNA3 Histrico

14-ago-03

4-set-03

25-set-03

CSTB4 Previso
20,00 18,00 16,00 14,00 12,00 10,00 8,00 6,00 4,00 2,00 22-mai-03 12-jun-03 3-jul-03 24-jul-03

CSTB4 Histrico

14-ago-03

4-set-03

25-set-03

EBTP4 Previso
35,00 33,00 31,00 29,00 27,00 25,00 23,00 21,00 19,00 17,00 15,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

EBTP4 Histrico

14-ago-03

4-set-03

25-set-03

ELET6 Previso
18,00 17,00 16,00 15,00 14,00 13,00 12,00 11,00 10,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

ELET6 Histrico

14-ago-03

4-set-03

25-set-03

EMBR4 Previso

EMBR4 Histrico

xii

24,00 22,00 20,00 18,00 16,00 14,00 12,00 10,00


22-mai-03 12-jun-03 3-jul-03 24-jul-03 14-ago-03 4-set-03 25-set-03

FFTL4 Previso
250,00 240,00 230,00 220,00 210,00 200,00 190,00 180,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

FFTL4 Histrico

14-ago-03

4-set-03

25-set-03

ITAU4 Previso
3,00 2,90 2,80 2,70 2,60 2,50 2,40 2,30 2,20 2,10 2,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

ITAU4 Histrico

14-ago-03

4-set-03

25-set-03

ITSA4 Previso
24,00 22,00 20,00 18,00 16,00 14,00 12,00 10,00 8,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

ITSA4 Histrico

14-ago-03

4-set-03

25-set-03

LAME4 Previso
65,00 60,00 55,00 50,00 45,00 40,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

LAME4 Histrico

14-ago-03

4-set-03

25-set-03

PCAR4 Previso

PCAR4 Histrico

xiii

75,00 70,00 65,00 60,00 55,00 50,00 45,00 40,00


22-mai-03 12-jun-03 3-jul-03 24-jul-03 14-ago-03 4-set-03 25-set-03

PETR3 Previso
70,00 65,00 60,00 55,00 50,00 45,00 40,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

PETR3 Histrico

14-ago-03

4-set-03

25-set-03

PETR4 Previso
150,00 140,00 130,00 120,00 110,00 100,00 90,00 80,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

PETR4 Histrico

14-ago-03

4-set-03

25-set-03

SBSP3 Previso
41,00 39,00 37,00 35,00 33,00 31,00 29,00 27,00 25,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

SBSP3 Histrico

14-ago-03

4-set-03

25-set-03

TLPP4 Previso
45,00 43,00 41,00 39,00 37,00 35,00 33,00 31,00 29,00 27,00 25,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03

TLPP4 Histrico

14-ago-03

4-set-03

25-set-03

TNLP4 Previso

TNLP4 Histrico

xiv

6,50 6,00 5,50 5,00 4,50 4,00 3,50 3,00


22-mai-03 12-jun-03 3-jul-03 24-jul-03 14-ago-03 4-set-03 25-set-03

TSPP4 Previso

TSPP4 Histrico

28,00 26,00 24,00 22,00 20,00 18,00 16,00 14,00 12,00 10,00 8,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03 14-ago-03 4-set-03 25-set-03

USIM5 Previso

USIM5 Histrico

120,00 115,00 110,00 105,00 100,00 95,00 90,00 85,00 80,00 75,00 70,00
22-mai-03 12-jun-03 3-jul-03 24-jul-03 14-ago-03 4-set-03 25-set-03

VALE5 Previso

VALE5 Histrico

Como possvel constatar, algumas previses so de melhor qualidade, outras de pior qualidade. No geral, contudo, a rede neural mostra sua capacidade de capturar padres e realizar boas previses a partir do aprendizado destes padres.

A2.3. Previso de Riscos

Alm das previses dos retornos futuros para cada uma das 25 aes, tambm foram realizadas previses de riscos futuros, utilizando um modelo GARCH (1,1), com janela deslizante de 21 dias. As previses foram realizadas para um perodo de 1079 dias, indo de 09/06/1999 at 10/10/2003. A seguir esto apresentadas todas as curvas de risco previsto para cada uma das 25 aes.

xv

V olatilidade P revis ta de A R C Z6 0.1 D e s v io P adr ao 0.08

de Carteira de Aes 0.06


0.04 0.02 0

200

400

600 D ias

800

1000

1200

V olatilidad e P re vis t a d e B B A S 3 0.1 0 .08 D es v io P a dra o es 0 .06 0 .04 0 .02 0

200

40 0

60 0 D ias

8 00

1 00 0

120 0

0. 1 D e s v io P ad ra o 0 .0 8 0 .0 6 0 .0 4 0 .0 2 0

V o lat ilida de P re vis t a de B B D C 4

20 0

4 00

0.2 D es v io P ad ra o

600 800 D ia s V olatilid ad e P re vis ta d e B E LG 4

1 0 00

12 00

0 .15

0.1

0 .05

20 0

4 00

6 00 D ias

8 00

1 00 0

1 20 0

V o la tilid ad e P re vis ta d e C M IG 4 0 .1 0. 08 D es v io P a d ra o 0. 06 0. 04 0. 02 0

20 0

4 00

6 00 D ia s

800

1 0 00

12 00

xvi

0.2

V olatilidade P revis ta de C S N A 3

0.15 D es v io P adrao

0.1

0.05

200

400

60 0 600 D ias

800

1000

1200

0.06 D es v io P adrao 0.05 0.04 0.03 0.02 0.01 0 0 200

V olatilidade P revis ta de C R U Z3

400

0.2 D es v io P adrao

600 800 D i as V olatilidade P revis ta de C P LE 6

1000

1200

0.15

0.1

0.05

200

400

600 D ias

800

1000

1200

V olatilidade P revis ta de C S TB 4 0.12 0.1 D es v io P adrao 0.08 0.06 0.04 0.02 0 0 200 400 600 D ias 800 1000 1200

0.2 D es v io P adrao

V olatilidade P revis ta de E B TP 4

0 .15

0.1

0 .05

200

400

600 D ias

800

1000

1200

xvii

V o lat ilida de P revis ta de E L E T6 0.1 2 D e s v io P adrao 0. 1 0.0 8 0.0 6 0.0 4 0.0 2 0 0 20 0 4 00 6 00 800 D ias V olatilid ade P revis ta de E M B R 4 100 0 12 00

0.25 D es v io P a drao 0.2 0.15 0.1 0.05 0

2 00

4 00

60 0 D ia s

80 0

100 0

120 0

V olatilid ade P revis ta de F F TL 4 0.1 0.08 D es v io P adra o 0.06 0.04 0.02 0

2 00

40 0

60 0 80 0 D ia s V o latilida de P revis ta de ITA U 4

100 0

1200

0.1 0 .08 D es v io P a dra o 0 .06 0 .04 0 .02 0

20 0

4 00

6 00 D i as

80 0

10 00

1 20 0

0 .0 8 D es v io P ad rao

V o la tilida de P revis t a de ITS A 4

0 .0 6

0 .0 4

0 .0 2

20 0

40 0

6 00 D ia s

8 00

10 00

12 00

xviii

0. 4

V olatilid ad e P re vis ta de L A M E 4

D es v io P ad rao

0. 3

0. 2

0. 1

2 00

4 00

6 00 D ias

80 0

10 00

1 20 0

V ola tilidad e P re vis t a d e P C A R 4 0.2 D es v io P a d ra o

0 .15

0.1

0 .05

20 0

4 00

60 0 800 D ias V olatilida de P re vis ta d e P E TR 3

10 00

1 20 0

0.0 8 D es v io P a d r a o ra

0.0 6

0.0 4

0.0 2

2 00

400

6 00 D ias

800

10 00

1 200

V ola tilidad e P revis t a d e P E TR 4 0 .1 0.0 8 0.0 6 0.0 4 0.0 2 0

D es v io P adrao

2 00

400

60 0 800 D ias V o latilida de P re vis ta de S B S P 3

10 00

1 200

0. 08 D es v io P adrao

0. 06

0. 04

0. 02

2 00

40 0

6 00 D ias

80 0

10 00

1 20 0

xix

V olat ilida de P revis ta d e TL P P 4 0 .1 D es v io P a drao 0. 08 0. 06 0. 04 0. 02 0

20 0

400

0.1 0 .0 8 D es v io P a d ra o 0 .0 6 0 .0 4 0 .0 2 0

600 800 D ias V ola tilida d e P re vis t a de TN L P 4

100 0

120 0

2 00

400

0.12 D e s v io P a d ra o 0.1 0.08 0.06 0.04 0.02 0

600 80 0 D ia s V o la t ilid a d e P re vis t a d e TS P P 4

1000

1 2 00

200

400

0.1 D e s v io P a d ra o 0.08 0.06 0.04 0.02 0

600 800 D ia s V o la t ilid a d e P re vis t a d e U S IM 5

1000

1200

200

400

600 D ia s

800

1000

1200

V olatilidade P revis t a de V A LE 5 0.12 D e s v io P adrao 0.1 0.08 0.06 0.04 0.02 0 0 200 40 0 600 D ias 80 0 1000 12 00

xx