260 likes | 333 Views
Dissertação – Mestrado em Engenharia Informática e de Computadores. STOCKS: Computação Inteligente aplicada à Gestão de Acções. Adriano Simões nº 53813 Orientadores: Prof. Nuno Horta, Prof. Rui Neves. Índice. Introdução Estado da Arte Arquitectura e Implementação
E N D
Dissertação – Mestrado em Engenharia Informática e de Computadores STOCKS: Computação Inteligente aplicada à Gestão de Acções Adriano Simões nº 53813 Orientadores: Prof. Nuno Horta, Prof. Rui Neves
Índice • Introdução • Estado da Arte • Arquitectura e Implementação • Métricas de Avaliação da Solução • Conclusões e Calendarização STOCKS 01/07/09
Problema • 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). STOCKS
Um Pouco de História - 1720 • 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… STOCKS 01/07/09
Prever o Mercado Capitais • 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). STOCKS 01/07/09
Exemplo de Estratégias de Investimento • 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. STOCKS 01/07/09
Exemplo de Estratégias de Investimento Périodo de Teste: Janeiro de 1990 a Dezembro 2008. Rentabilidade: STOCKS 01/07/09
Exemplo de Estratégias de Investimento 2 STOCKS 01/07/09
Estado da Arte • 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 STOCKS 01/07/09
Estado da Arte STOCKS 01/07/09
Estado da Arte - Aplicações STOCKS 01/07/09
Estado da Arte - Aplicações Pro Real Time STOCKS 01/07/09
Arquitectura • 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. STOCKS 01/07/09
Arquitectura Algoritmos deOptimização Dados das Empresas Interface • 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. STOCKS 01/07/09
Implementação • 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) STOCKS 01/07/09
Estado da Implementação - Interface • 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 STOCKS 01/07/09
Estado da Implementação – Dados das Empresas • 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). STOCKS 01/07/09
Estado da Implementação – Alg. Genéticos Gerar População Inicial Aleatória Avaliar a População Descartar Piores Indivíduos Escolher Indivíduos para Cruzamento Repetir até N execuções, ou atingir condição de paragem Cruzamento Mutação STOCKS 01/07/09
Estado da Implementação – Alg. Genéticos • 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” STOCKS 01/07/09
Possível Cromossoma STOCKS 01/07/09
Operações: Cruzamento: Mutação: STOCKS 01/07/09
Métricas de Avaliação SR = Rentabilidade da Estratégia – R0 Desvio Padrão Estratégia • 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”. STOCKS 01/07/09
Conclusões • 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. STOCKS 01/07/09
Calendarização • 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 01/07/09
Questões ? STOCKS 01/07/09