© 2005, it - instituto de telecomunicações. Todos os direitos reservados. Adriano Simões nº Orientadores: Prof. Nuno Horta, Prof. Rui Neves STOCKS: Computação Inteligente aplicada à Gestão de Acções Dissertação – Mestrado em Engenharia Informática e de Computadores
2 Índice STOCKS 01/07/09 Introdução Estado da Arte Arquitectura e Implementação Métricas de Avaliação da Solução Conclusões e Calendarização
3 Problema STOCKS 01/07/09 Prever o comportamento de activos nos Mercado de Capitais. Acções, Índices, Moeda, Matérias-Primas. Conseguir obter lucros acima da Média. Decisões feitas de forma automática (pelo computador).
4 Um Pouco de História STOCKS 01/07/09 South Sea Company Esta companhia tinha o monopólio do comercio com a América do Sul (zona espanhola). A Bolha especulativa é visível: 900% em meio-ano… O Crash também…
5 Prever o Mercado Capitais STOCKS 01/07/09 Análise Fundamental: Decisões devem ser baseadas no negócio da empresa: Concorrentes, estilo de Gestão, Área de Negocio, Taxas de Juro, Câmbio, estado da Economia. Análise Técnica: Decisões devem ser baseadas em: Preço e Volume. (Dados históricos). Com estes dados é possível capturar a evolução da oferta e da procura. Hipótese da Eficiência dos Mercados: É impossível obter rentabilidades acima da média do mercado (isto é, acima da estratégia Buy and Hold), porque os mercados são sistemas totalmente eficientes (o valor de um activo reflecte toda a informação conhecida).
6 Exemplo de Estratégias de Investimento STOCKS 01/07/09 MAC (Moving Average Crossing): Cruzamento de Duas Médias Moveis. Comprar quando Média Móvel de Curto Prazo, cruza para cima a de Longo Prazo, vender a descoberto caso contrário. MAD (Moving Average Derivate): Derivada (declive) de uma Média Móvel. Comprar quando derivada é positiva, vender a descoberto quando derivada é negativa.
7 Périodo de Teste: Janeiro de 1990 a Dezembro Rentabilidade: Exemplo de Estratégias de Investimento STOCKS 01/07/09 S&P 500FTSE 100DAX 30NIKKEI 225Rentabilidade M é dia Buy and Hold MAC (50; 200) MAD (50; 200)
8 Exemplo de Estratégias de Investimento 2 STOCKS 01/07/09
9 Estado da Arte STOCKS 01/07/09 Técnicas de soft-computing: Redes Neuronais Algoritmos Genéticos / Computação Evolutiva Análise Qualitativa / Fundamental Outras (Segmentação, Clustering, Machine Learning, etc..) Mais Utilizadas e com Melhores Resultados: Redes Neuronais Algoritmos Genéticos / Computação Evolutiva
10 Estado da Arte STOCKS 01/07/09 Heurística Avaliação de Resultados Dados Usados Activos Usados PeríodoRentabilidade Redes Neuronais Comparação com Mercado Cotação Madrid Stock Market % ao Ano Bull-Flag + Algor. Genéticos + Redes Neuronais Comparação com Mercado e T-Test Cotação, Volume e Padrão Gráfico. Índice: NYSEC % por Trade Redes Neuronais Comparação com Mercado Cotação e Volume + Análise Fundamental e Económica/ Politica Índice: TOPIX (Japão) % ao Ano. Algor. Genéticos Comparação com Mercado 6 Indicadores Técnicos Índice: TSEWSI (Taiwan) ,52% ao Ano Algor. Genéticos Comparação com Mercado e Sharpe Ratio 9 Indicadores Técnicos Acções do Egipto % ao Ano Algor. Genéticos Comparação com Mercado 1 Indicador: MACD (Optimizar parâmetros) Índice: Dow Jones % da Rentabilidade Máxima
11 Estado da Arte - Aplicações STOCKS 01/07/09 Aplicação Heurísticas Disponíveis Criação de novos Indicadores e Estratégias Teste de Estratégias Linhas de Sup. E Res. Automáticas Ordens de Transacção Criação Manual de Objectos Gráficos Saxo Bank Detecção de Padrões Gráficos Não Market + Stop linhas, texto e Indicadores MetaStock--- Sim, dispõe de uma linguagem de programação SimNão Market + Stop linhas, texto e Indicadores Pro Real Time--- Sim, dispõe de uma linguagem de programação Sim Não linhas, texto e Indicadores Trade Station--- Sim, dispõe de uma linguagem de programação SimNão Market + Stop linhas, texto e Indicadores Optimal Trader Redes Neuronais NãoSimNão linhas, texto e Indicadores
12 Estado da Arte - Aplicações STOCKS 01/07/09 Pro Real Time
13 Arquitectura STOCKS 01/07/09 Três Módulos Principais: Interface Interacção com o Utilizador. Dados Sobre as Empresas Download e Actualização de Dados. Calculo de Indicadores. Algoritmos de Optimização Exploração e Optimização de Estratégias de Investimento.
14 Algoritmos de Optimização Dados das Empresas Arquitectura STOCKS 01/07/09 Três Módulos Principais: Interface Interacção com o Utilizador. Dados Sobre as Empresas Download e Actualização de Dados. Calculo de Indicadores. Algoritmos de Optimização Exploração e Optimização de Estratégias de Investimento. Interface
15 Implementação STOCKS 01/07/09 Linguaguem Escolhida: Object Oriented + Performance C++ Interface Gráfica: Preferência Interface Web (Pode ser utilizada em qualquer plataforma). Bom suporte para gráficos de acções. Flex (corre no Plugin do Adobe Flash)
16 Estado da Implementação - Interface STOCKS 01/07/09 Está implementada a interface através de ficheiros de configuração. Ex. de Ficheiro de Configuração: #Este é o ficheiro de configuração do StockGragh algoritmo=stocks dirCotacoes=c:\cotacoes\emer-full\ debug=true funcao=stocks startDate=2003 endDate=2008 slidingwindow=1
17 Estado da Implementação – Dados das Empresas STOCKS 01/07/09 Está implementada o download e actualização de cotações para acções norte-americanas e todos os Indices (finance.yahoo.com). Estão implementados inúmeros Indicadores Técnicos: Moving Average (Média Móvel), RSI (Relative Strength Index), MACD (Moving Average Convergence/Divergence), OBV (On Balance Volume), ROC (Rate of Change). Está por implementar o download e actualização de acções europeias (através do site da Euronext).
18 Estado da Implementação – Alg. Genéticos STOCKS 01/07/09 Gerar População Inicial Aleatória Avaliar a População Descartar Piores Indivíduos Escolher Indivíduos para Cruzamento Cruzamento Mutação Repetir até N execuções, ou atingir condição de paragem
19 Estado da Implementação – Alg. Genéticos STOCKS 01/07/09 Estão implementadas as 3 operações básicas dos A.G.: Selecção, Cruzamento, Mutação. Técnica de Selecção: 50% piores indivíduos são descartados, os outros 50% são escolhidos para Cruzamento. Para escolher indivíduos para o Cruzamento é usada: Roullete Wheel Selection
20 Possível Cromossoma STOCKS 01/07/09 Parâmetros a Optimizar Nº Dias RSI Nível Compra RSI Nível Fecho RSI N.º de Dias da Média Móvel Diferença entre MM e Cotação Compra Diferença entre MM e Cotação Venda Limites dos Parâmetros 0 a a 1002 a 1500% a 20%
21 Possível Cromossoma Parâmetros a Optimizar N º Dias RSI N í vel Compra RSI N í vel Fecho RSI N. º de Dias da M é dia M ó vel Diferen ç a entre MM e Cotação Compra Diferen ç a entre MM e Cotação Venda Limites dos Parâmetros 0 a a 1002 a 1500% a 20%
22 Operações: STOCKS 01/07/09 Pai ,103,09 Cruzamento: Mãe Pai ,103,09 Filho ,103,09 Mãe Filho 1 Filho 2 Filho Mutação: Filho ,103,097 Parâmetros a Optimizar N º Dias RSI N í vel Compra RSI N í vel Fecho RSI N. º de Dias da M é dia M ó vel Diferen ç a entre MM e Cota ç ão Compra Diferen ç a entre MM e Cota ç ão Venda Limites dos Parâmetros 0 a a 1002 a 1500% a 20%
23 Métricas de Avaliação STOCKS 01/07/09 Return of Investment (ROI) Retorno Anual Sharpe Ratio Cálculo: Rácio de Retorno vs Risco. Sortino Ratio: Similar a Sharpe Ratio Desvio Padrão só considera Rentabilidades Negativas Outras: % de Negócios Certos, Baixo Valor de Perdas, Máximo Drawdown. SR = Rentabilidade da Estratégia – R0 Desvio Padrão Estratégia
24 Conclusões STOCKS 01/07/09 Soluções Encontradas: Obtenção de dados: yahoo e euronext. Técnica de Optimização: Algoritmos Genéticos. São os que apresentam melhores resultados. Interface: Flex. Arquitectura Modular. Requisitos da Aplicação podem sofrer alterações. Podem ser experimentadas diversas Técnicas de Optimização.
25 Calendarização 01/07/09 1º Semestre: Leitura de Publicações / Livros Técnicos Indicadores Técnicos Desenho Arquitectura. Módulo de Empresas (Obtenção de Dados) Interface Texto Algoritmos Genéticos Escrita do Relatório 2º Semestre: Implementação Novos Indicadores Exploração de Diversos Cromossomas Modificações ao Algoritmo Genético Testes Escrita do Relatório
26 Questões STOCKS 01/07/09 ?