23 Junho 2021 10:02

Uso de algoritmos genéticos para prever mercados financeiros

Em “A Random Walk Down Wall Street” (1973), Burton Malkiel sugeriu: “Um macaco vendado jogando dardos nas páginas financeiras de um jornal poderia selecionar um portfólio que serviria tão bem quanto um cuidadosamente selecionado por especialistas”. Embora a evolução possa ter tornado o homem não mais inteligente na escolha de ações, a teoria de Charles Darwin provou ser eficaz quando aplicada de forma mais direta.

Algoritmos genéticos são maneiras únicas de resolver problemas complexos, aproveitando o poder da natureza. Ao aplicar esses métodos para prever preços de títulos, os negociantes podem otimizar as regras de negociação, identificando os melhores valores a serem usados ​​para cada parâmetro de um determinado título.

Principais vantagens

  • Algoritmos de computador complexos baseados em regras de genética e teoria evolutiva tiveram algum sucesso recente na negociação de títulos.
  • Ao aplicar esses métodos para prever preços de títulos, os traders podem otimizar as regras de negociação e criar novas estratégias.
  • Os comerciantes individuais podem aproveitar o poder dos algoritmos genéticos usando vários pacotes de software no mercado.

O que são algoritmos genéticos?

Algoritmos genéticos (AGs) são métodos de solução de problemas (ou heurísticas) que imitam o processo de evolução natural. Ao contrário das redes neurais artificiais (RNAs), projetadas para funcionar como neurônios no cérebro, esses algoritmos utilizam os conceitos de seleção natural para determinar a melhor solução para um problema.

Como resultado, os AGs são comumente usados ​​como otimizadores que ajustam parâmetros para minimizar ou maximizar alguma medida de feedback, que pode então ser usada de forma independente ou na construção de uma RNA. (Para saber mais sobre RNAs, consulte: Redes Neurais: Previsão de Lucros.)

Nos mercados financeiros, os algoritmos genéticos são mais comumente usados ​​para encontrar os melhores valores de combinação de parâmetros em uma regra de negociação e podem ser construídos em modelos de RNA projetados para selecionar ações e identificar negociações.

Vários estudos demonstraram a eficácia desses métodos, incluindo ” Algoritmos Genéticos: Gênese da Avaliação de Estoque ” (2004) e ” As Aplicações de Algoritmos Genéticos na Otimização de Mineração de Dados do Mercado de Ações ” (2004). (Para obter mais informações, consulte:  Como os algoritmos de negociação são criados.)

Como funcionam os algoritmos genéticos

Algoritmos genéticos são criados matematicamente usando vetores, que são quantidades que têm direção e magnitude. Os parâmetros de cada regra de negociação são representados com um vetor unidimensional que pode ser considerado um cromossomo em termos genéticos. Enquanto isso, os valores usados ​​em cada parâmetro podem ser pensados ​​como genes, que são então modificados por meio da seleção natural.

Por exemplo, uma regra de negociação pode envolver o uso de parâmetros como  divergência de convergência da média móvel  (MACD), uma  média móvel exponencial  (MME) e estocástica. Um algoritmo genético poderia então inserir valores nesses parâmetros com o objetivo de maximizar o lucro líquido. Com o tempo, pequenas mudanças são introduzidas e aquelas que causam um impacto desejável são mantidas para a próxima geração.

(Consulte também:  Noções básicas de negociação algorítmica.)

Existem três tipos de operações genéticas que podem ser realizadas:

  • Os crossovers representam a reprodução e o crossover visto na biologia, por meio do qual uma criança assume certas características de seus pais.
  • Mutações representam mutações biológicas e são usadas para manter a diversidade genética de uma geração de uma população para a próxima, introduzindo pequenas mudanças aleatórias.
  • As seleções são o estágio no qual os genomas individuais são escolhidos de uma população para reprodução posterior (recombinação ou cruzamento).

Essas três operações são então usadas em um processo de cinco etapas:

  1. Inicialize uma população aleatória, onde cada cromossomo tem comprimento n, com n sendo o número de parâmetros. Ou seja, um número aleatório de parâmetros é estabelecido com n elementos cada.
  2. Selecione os cromossomos, ou parâmetros, que aumentam os resultados desejáveis ​​(presumivelmente o lucro líquido).
  3. Aplique operadores de mutação ou crossover aos pais selecionados e gere uma prole.
  4. Recombine a prole e a população atual para formar uma nova população com o operador de seleção.
  5. Repita as etapas dois a quatro.

Com o tempo, esse processo resultará em cromossomos (ou parâmetros) cada vez mais favoráveis ​​para uso em uma regra de negociação. O processo é então encerrado quando os critérios de parada são atendidos, o que pode incluir tempo de execução, adequação, número de gerações ou outros critérios.

Usando Algoritmos Genéticos no Comércio

Embora os algoritmos genéticos sejam usados ​​principalmente por traders quantitativos institucionais, os traders individuais podem aproveitar o poder dos algoritmos genéticos – sem um diploma em matemática avançada – usando vários pacotes de software no mercado.

Essas soluções variam de pacotes de software independentes voltados para os mercados financeiros até complementos do Microsoft Excel que podem facilitar análises mais práticas.

Ao usar esses aplicativos, os comerciantes podem definir um conjunto de parâmetros que são otimizados usando um algoritmo genético e um conjunto de dados históricos. Alguns aplicativos podem otimizar quais parâmetros são usados ​​e os valores para eles, enquanto outros se concentram principalmente em simplesmente otimizar os valores para um determinado conjunto de parâmetros.

O ajuste de curva (ou seja, overfitting ), ou projetar um sistema de negociação em torno de dados históricos, em vez de identificar o comportamento repetível, representa um risco potencial para os negociadores que usam algoritmos genéticos. Qualquer sistema de negociação que usa GAs deve ser testado no papel antes do uso ao vivo.

A escolha de parâmetros é uma parte importante do processo, e os negociadores devem buscar parâmetros que se correlacionem com as mudanças no preço de um determinado título. Por exemplo, experimente diferentes indicadores para ver se algum parece se correlacionar com as principais viradas do mercado.

The Bottom Line

Esses algoritmos não são o Santo Graal, e os comerciantes devem ter o cuidado de escolher os parâmetros corretos e não o ajuste de curva.

(Para uma leitura adicional, confira: Escolher o Trading Software Direito Algorithmic, The Power of Trades Programa,como codificar sua própria Algo Trading Robot.)