English Русский 中文 Español Deutsch 日本語
preview
Métodos de William Gann (Parte II): Criando um Indicador do Quadrado de Gann

Métodos de William Gann (Parte II): Criando um Indicador do Quadrado de Gann

MetaTrader 5Exemplos |
221 1
Yevgeniy Koshtenko
Yevgeniy Koshtenko

Introdução

William Delbert Gann, lendário trader e analista técnico do início do século XX, deixou um rico legado de ferramentas e métodos para análise de mercado. Entre suas numerosas criações, o Quadrado de 9 ocupa um lugar especial – uma ferramenta enigmática e multifacetada que combina elementos de geometria, numerologia e astrologia.

O Quadrado de 9 de Gann é uma sequência numérica disposta em espiral dentro de uma matriz 9x9. Essa ferramenta é utilizada para prever níveis de preço importantes e ciclos temporais nos mercados financeiros. Apesar de sua natureza esotérica, o Quadrado de 9 continua atraindo a atenção de traders modernos que buscam abordagens não convencionais para análise de mercado.

Neste artigo, mergulharemos no mundo do Quadrado de 9 de Gann e tentaremos traduzir sua concepção para a era digital, criando um indicador para a plataforma MetaTrader 5 usando a linguagem de programação MQL5. Nosso objetivo é desenvolver uma ferramenta que permita aos traders visualizar e aplicar os princípios do Quadrado de 9 em suas operações, combinando a sabedoria tradicional de Gann com as tecnologias modernas.

Vamos explorar os fundamentos teóricos do Quadrado de 9, analisar o processo de criação do indicador passo a passo, discutir sua aplicação prática e identificar possíveis limitações. Independentemente de você ser um desenvolvedor experiente de sistemas de trading ou apenas ter interesse em métodos não convencionais de análise de mercado, este artigo fornecerá informações valiosas e habilidades práticas para ampliar sua capacidade analítica.

Vamos embarcar nessa fascinante jornada pelos passos de William Gann e estabelecer uma conexão entre suas ideias brilhantes e o mundo contemporâneo da negociação algorítmica.


Fundamentos teóricos do Quadrado de 9 de Gann


O Quadrado de 9 de Gann é uma ferramenta única de análise técnica que combina elementos de geometria, numerologia e astrologia. A base desse método é a ideia de que os preços e o tempo nos mercados financeiros se movem em padrões espiralados, que podem ser representados como uma sequência numérica organizada dentro de uma matriz 9x9.

A construção do Quadrado de 9 começa a partir da célula central, que recebe o número 1. Em seguida, os números são dispostos em espiral no sentido anti-horário, preenchendo o quadrado até o número 81 (9x9). A cada nove números nessa sequência, forma-se a chamada "cruz cardinal" — pontos-chave que Gann considerava especialmente importantes para a análise de mercado.

De acordo com a teoria de Gann, os números no Quadrado de 9 correspondem a níveis de preço e intervalos de tempo. Gann acreditava que o mercado tende a reagir a esses níveis, criando pontos de reversão, suporte ou resistência. São atribuídos significados especiais aos números que estão alinhados ou possuem relações harmônicas entre si.

Gann também associava o Quadrado de 9 a conceitos astrológicos, afirmando que os ângulos entre os números no quadrado correspondem a aspectos planetários específicos. Isso adiciona uma dimensão temporal à análise, permitindo não apenas prever níveis de preço, mas também possíveis datas de eventos significativos no mercado.

É importante destacar que a interpretação do Quadrado de 9 é muitas vezes subjetiva e requer experiência. Os traders utilizam essa ferramenta de diferentes maneiras: alguns se concentram nos níveis de preço, outros nos ciclos de tempo e outros combinam ambas as abordagens.

Apesar de sua natureza esotérica, o Quadrado de 9 de Gann continua atraindo a atenção dos traders modernos. Ele se destaca pela capacidade de oferecer uma perspectiva única sobre os movimentos do mercado, complementando os métodos tradicionais de análise técnica.

No contexto da criação de um indicador para o MetaTrader 5, nossa tarefa será transformar esses conceitos teóricos em algoritmos capazes de gerar sinais de negociação concretos e representações visuais. Isso permitirá que os traders integrem as ideias de Gann ao ambiente digital moderno de negociação.


A estrutura matemática do Quadrado de 9 de Gann

O Quadrado de 9 de Gann, apesar de suas raízes esotéricas, possui uma estrutura matemática bem definida. Compreender essa estrutura é fundamental para criar um indicador preciso e eficiente. Vamos analisar os principais princípios matemáticos que fundamentam o Quadrado de 9:

  • A construção do quadrado: o Quadrado de 9 consiste em uma sequência espiralada de números de 1 a 81, disposta em uma matriz 9x9. Matematicamente, isso pode ser representado como uma função das coordenadas (x, y) dentro do quadrado.
  • Sequência espiralada: os números são organizados em espiral no sentido anti-horário. Isso pode ser descrito por meio de equações paramétricas da espiral em sua forma discreta.
  • Relações angulares: Gann atribuía um significado especial às relações angulares entre os números. Essas relações podem ser expressas por meio de funções trigonométricas, considerando a posição dos números dentro do quadrado.
  • Projeções de preço: diversas transformações matemáticas são utilizadas para converter os números do quadrado em níveis de preço, frequentemente envolvendo raízes quadradas ou logarítmicas.
  • Ciclos temporais: o aspecto temporal do Quadrado de 9 pode ser expresso pela aritmética modular, na qual cada volta completa da espiral corresponde a um ciclo específico.
  • Cruz cardinal: os números que formam a cruz cardinal (a cada nove números) podem ser descritos como uma progressão aritmética com passo 9.
  • Relações harmônicas: as relações harmônicas entre os números no quadrado podem ser descritas por razões numéricas simples ou ângulos em graus.
  • Raiz quadrada do preço: Gann frequentemente utilizava a raiz quadrada do preço em seus cálculos, adicionando mais uma camada de transformação matemática.
  • Aritmética modular: muitos cálculos no Quadrado de 9 baseiam-se nos princípios da aritmética modular, especialmente com módulo 9.

Para criar o indicador em MQL5, é necessário transformar esses conceitos matemáticos em algoritmos concretos. Isso inclui o desenvolvimento de funções para gerar o Quadrado de 9, calcular relações angulares, projetar números na escala de preços e determinar ciclos temporais.

É importante destacar que, embora a estrutura matemática do Quadrado de 9 seja precisa, sua interpretação e aplicação nos mercados continuam sendo amplamente subjetivas. Nossa tarefa ao criar o indicador foi fornecer aos usuários uma ferramenta flexível que permitisse a experimentação de diferentes aspectos da teoria de Gann, com base em cálculos matemáticos rigorosos.


Preparação para a criação do indicador

Começaremos definindo as funções principais do indicador do Quadrado de 9 de Gann. Primeiramente, devemos construir o próprio quadrado no gráfico, calcular os níveis de preço importantes e exibir os ciclos temporais. Em seguida, planejaremos as configurações que serão disponibilizadas ao usuário, como o número inicial do Quadrado de 9, a escala para conversão em preços e a escolha de cores para linhas e textos.

É essencial planejar como os dados serão armazenados. Será necessário um array para os números do Quadrado de 9, além de listas para armazenar os preços calculados e as datas.

O próximo passo será o desenvolvimento dos algoritmos principais. Precisamos criar funções para gerar o Quadrado de 9, converter seus números em níveis de preço e calcular as datas dos ciclos temporais. Também pensaremos na melhor maneira de exibir todas essas informações no gráfico, incluindo a disposição do próprio Quadrado de 9, a localização dos níveis de preço e das datas.

Não podemos nos esquecer dos testes. Precisamos definir métodos para verificar a precisão dos nossos cálculos e testar o indicador em diferentes timeframes. Também é fundamental estudar as particularidades do MQL5, especialmente no que diz respeito à criação de elementos gráficos e às funções matemáticas disponíveis.

Essa preparação estabelecerá uma base sólida para a criação de um indicador eficiente e intuitivo do Quadrado de 9 de Gann.

Estrutura do código do indicador Quadrado de 9 de Gann

Ao desenvolver o indicador Quadrado de 9 de Gann para o MetaTrader 5, é essencial criar uma estrutura de código clara e lógica. Isso facilitará a compreensão, a depuração e futuras melhorias no indicador. A seguir, veremos os principais componentes que devem ser incluídos no nosso código.

Primeiramente, é necessário declarar e inicializar as variáveis. Definiremos variáveis globais para armazenar as configurações do indicador e criaremos arrays para armazenar os dados do Quadrado de 9 e os valores calculados.

  • A função OnInit() será usada para inicializar os parâmetros do indicador e criar os objetos gráficos necessários.
  • A função OnDeinit() limpará todos os objetos gráficos criados quando o indicador for removido.
  • A função OnCalculate() é a principal função do indicador, chamada a cada novo tick. É nela que os principais cálculos serão executados e a exibição será atualizada.

Implementação dos principais componentes do indicador

Vamos analisar um esboço do código do Quadrado de 9:

//+------------------------------------------------------------------+
//|                                                      GannSquare9 |
//|                                          Copyright 2024, Shtenco |
//|                          https://www.mql5.com/ru/users/koshtenko |
//+------------------------------------------------------------------+
#property copyright "Copyright 2023, Evgeniy Koshtenko"
#property link      "https://www.mql5.com/ru/users/koshtenko"
#property version   "1.00"
#property description "Gann Square of 9 Price and Time Levels Indicator"
#property indicator_chart_window

// Input parameters
input double StartNumber = 1;  // Starting number for the Gann Square
input color PriceLevelColor = clrDodgerBlue;  // Color of the price levels
input color TimeLevelColor = clrRed;  // Color of the time levels
input int LevelsToShow = 50;  // Number of levels to display
input datetime EndDate = D'2024.08.14 00:00';  // End date for calculations
input double PriceStepDivisor = 10.0;  // Divisor for price step (higher value = more levels)

// Global variables
double price_levels[];
datetime time_levels[];
double price_scale;
int time_scale;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
// Validate inputs
   if(StartNumber <= 0 || LevelsToShow <= 0 || EndDate <= 0 || PriceStepDivisor <= 0)
     {
      Print("Invalid input parameters");
      return INIT_PARAMETERS_INCORRECT;
     }

// Calculate scales
   CalculateScales();

// Calculate and draw levels
   CalculateLevels();
   DrawLevels();

   return(INIT_SUCCEEDED);
  }

//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
// No calculations needed for this indicator
   return(rates_total);
  }

//+------------------------------------------------------------------+
//| Calculate price and time scales                                  |
//+------------------------------------------------------------------+
void CalculateScales()
  {
   double current_price = SymbolInfoDouble(_Symbol, SYMBOL_BID);
   price_scale = current_price / (StartNumber * StartNumber);

   datetime current_time = TimeCurrent();
   time_scale = (int)MathMax(1, (EndDate - current_time) / (86400 * StartNumber * StartNumber));  // in days
  }

//+------------------------------------------------------------------+
//| Calculate price and time levels                                  |
//+------------------------------------------------------------------+
void CalculateLevels()
  {
   ArrayResize(price_levels, LevelsToShow);
   ArrayResize(time_levels, LevelsToShow);

   for(int i = 0; i < LevelsToShow; i++)
     {
      double price_square = MathPow(StartNumber + i / PriceStepDivisor, 2);
      int time_square = (StartNumber + i) * (StartNumber + i);

      price_levels[i] = price_scale * price_square;
      time_levels[i] = EndDate - time_scale * time_square * 86400;  // Convert days to seconds
     }
  }

//+------------------------------------------------------------------+
//| Draw levels on the chart                                         |
//+------------------------------------------------------------------+
void DrawLevels()
  {
   for(int i = 0; i < LevelsToShow; i++)
     {
      // Draw price level
      string price_name = "GannPriceLevel_" + IntegerToString(i);
      ObjectCreate(0, price_name, OBJ_HLINE, 0, 0, price_levels[i]);
      ObjectSetInteger(0, price_name, OBJPROP_COLOR, PriceLevelColor);
      ObjectSetInteger(0, price_name, OBJPROP_STYLE, STYLE_SOLID);
      ObjectSetInteger(0, price_name, OBJPROP_WIDTH, 1);
      ObjectSetString(0, price_name, OBJPROP_TOOLTIP, "Gann Price Level " + DoubleToString(price_levels[i], _Digits));

      // Draw time level
      string time_name = "GannTimeLevel_" + IntegerToString(i);
      ObjectCreate(0, time_name, OBJ_VLINE, 0, time_levels[i], 0);
      ObjectSetInteger(0, time_name, OBJPROP_COLOR, TimeLevelColor);
      ObjectSetInteger(0, time_name, OBJPROP_STYLE, STYLE_DOT);
      ObjectSetInteger(0, time_name, OBJPROP_WIDTH, 1);
      ObjectSetString(0, time_name, OBJPROP_TOOLTIP, "Gann Time Level " + TimeToString(time_levels[i], TIME_DATE|TIME_MINUTES));
     }
  }

//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   ObjectsDeleteAll(0, "GannPriceLevel_");
   ObjectsDeleteAll(0, "GannTimeLevel_");
  }
//+------------------------------------------------------------------+

Este indicador representa uma interpretação moderna do conceito do Quadrado de 9 de William Gann, interpretação essa adaptada para a plataforma MetaTrader 5. Ele mostra níveis de preço e tempo baseados nos princípios de Gann, fornecendo aos traders uma ferramenta única para análise de mercado e tomada de decisões.

Parâmetros de entrada do indicador:

  • StartNumber – número inicial para a construção do Quadrado de 9,
  • PriceLevelColor e TimeLevelColor – cores para exibição dos níveis de preço e tempo, respectivamente,
  • LevelsToShow – número de níveis a serem exibidos,
  • EndDate – data final para cálculos e testes com dados históricos,
  • PriceStepDivisor – fator de ajuste da frequência dos níveis de preço.

Para armazenamento e processamento de dados, são utilizadas variáveis globais. Os arrays price_levels[] e time_levels[] armazenam, respectivamente, os níveis de preço e tempo calculados. As variáveis price_scale e time_scale são usadas para escalonar os valores de preço e tempo, respectivamente.

A função CalculateScales() determina automaticamente as escalas de preço e tempo com base no preço atual do ativo e na data final definida. A função CalculateLevels() executa os cálculos dos níveis de preço e tempo. Os níveis de preço são calculados utilizando uma função quadrática e um divisor adicional para ajustar a frequência dos níveis, enquanto os níveis temporais são baseados no quadrado do número, alinhando-se à teoria de Gann. A função DrawLevels() é responsável pela visualização dos dados, criando linhas horizontais no gráfico para os níveis de preço e linhas verticais para os níveis temporais. 

O indicador fornece aos traders uma representação visual dos níveis de preço e tempo, baseada nos princípios do Quadrado de 9 de Gann. Isso pode ser especialmente útil para traders interessados em métodos não convencionais de análise técnica e que buscam ferramentas adicionais para confirmar suas ideias de negociação.

Entre os principais recursos dessa implementação, estão a possibilidade de ajustar a frequência dos níveis de preço para uma análise mais detalhada, flexibilidade na escolha da data final para análise histórica e a combinação de níveis de preço e tempo em um único gráfico.

Melhorias futuras no indicador podem incluir a adição de alertas quando o preço ou o tempo atingir níveis-chave, a implementação de atualização automática dos níveis em caso de variação significativa no preço, a integração com outros métodos de análise de Gann para a criação de um sistema de negociação mais completo e a otimização de desempenho para uso em timeframes mais longos e com um maior número de níveis.


Visualização dos níveis do Quadrado de 9 no gráfico

Os níveis de preço são exibidos como linhas horizontais no gráfico. Cada linha representa um potencial nível de suporte ou resistência, calculado com base nos princípios do Quadrado de 9 de Gann. A cor dessas linhas é definida pelo parâmetro PriceLevelColor, permitindo que os traders personalizem a exibição de acordo com suas preferências e com o estilo do gráfico. As linhas horizontais são distribuídas ao longo do eixo vertical do gráfico, e sua densidade é controlada pelo parâmetro PriceStepDivisor. Isso permite que os traders ajustem a quantidade de níveis de preço exibidos, encontrando um equilíbrio entre detalhamento e legibilidade.


Os níveis de tempo são visualizados como linhas verticais no gráfico. Essas linhas representam pontos temporais-chave, baseados na progressão quadrática dos números de Gann. A cor das linhas de tempo é definida pelo parâmetro TimeLevelColor, o que facilita a distinção entre elas e os níveis de preço. As linhas verticais são distribuídas ao longo do eixo horizontal do gráfico, começando a partir da data final especificada (EndDate) e avançando para trás no tempo. Isso permite que os traders identifiquem possíveis pontos de reversão ou datas significativas no futuro, além de analisar dados históricos.


Quadratura do tempo e ciclos temporais

A quadratura do tempo e os ciclos temporais são conceitos essenciais na teoria de William Gann, refletidos no Quadrado de 9. Essas ideias são baseadas na premissa de que os movimentos do mercado seguem determinados padrões temporais que podem ser previstos e utilizados para a tomada de decisões de negociação.

time_scale = (int)MathMax(1, (EndDate - current_time) / (86400 * StartNumber * StartNumber));  // in days

O conceito da quadratura do tempo sugere que eventos significativos do mercado ocorrem frequentemente em intervalos que são quadrados de números inteiros. Por exemplo, reversões importantes no mercado podem acontecer após 4, 9, 16, 25, 36, 49, 64 ou 81 dias, ou em períodos mais longos baseados nesses números. No contexto do Quadrado de 9, esses números correspondem a pontos-chave dentro da espiral.

A fórmula desempenha um papel essencial no cálculo da escala temporal do indicador Quadrado de 9 de Gann. Vamos analisar seus componentes e seu significado:

  1. EndDate − current_time: essa é a diferença entre a data final definida e o tempo atual. O resultado é expresso em segundos.
  2. 86400: representa o número de segundos em um dia (24 horas * 60 minutos * 60 segundos).
  3. StartNumber * StartNumber: é o quadrado do número inicial, utilizado para escalonar a escala temporal.
  4. (EndDate − current_time) / (86400 * StartNumber * StartNumber): essa parte da fórmula converte a diferença de tempo de segundos para dias e, em seguida, divide pelo quadrado do número inicial. Isso cria uma escala de tempo não linear, alinhada aos princípios do Quadrado de 9 de Gann.
  5. MathMax(1, ...): essa função garante que o resultado seja pelo menos 1. Isso evita divisões por zero ou valores negativos.
  6. (int): converte o resultado para um tipo inteiro, pois a escala de tempo deve ser expressa em dias inteiros.

O propósito dessa fórmula é criar uma escala temporal que se contrai à medida que se aproxima da data atual. Isso reflete a ideia de Gann sobre a aceleração do tempo e dos ciclos de mercado.

Quanto maior for StartNumber, mais comprimida será a escala de tempo. Isso permite que os traders ajustem o indicador para diferentes horizontes temporais de negociação.

O uso do quadrado de StartNumber (StartNumber * StartNumber) no denominador gera uma distribuição não linear dos níveis temporais, o que está alinhado aos princípios do Quadrado de 9 de Gann, no qual a importância dos números cresce de forma quadrática.


A aceleração dos ciclos temporais junto com a aceleração dos ciclos de mercado

Uma das características mais interessantes deste indicador é que os ciclos temporais, baseados nos princípios do Quadrado de 9 de Gann, ficam cada vez mais próximos à medida que se aproximam da data atual. Esse fenômeno pode ser interpretado como um reflexo da aceleração dos ciclos de mercado observada no ambiente financeiro moderno.

Nas últimas décadas, de fato, temos observado uma aceleração significativa nos processos do mercado. Crashes financeiros que antes ocorriam a cada vários anos ou até décadas agora acontecem com muito mais frequência. Isso pode estar relacionado a uma série de fatores, incluindo a globalização dos mercados financeiros, o avanço das tecnologias da informação e do trading algorítmico, além do aumento da velocidade de disseminação de informações. Talvez isso esteja ligado ao movimento gradual rumo à singularidade tecnológica. 

O indicador Quadrado de 9 de Gann, ao exibir ciclos temporais que se comprimem à medida que se aproximam do presente, reflete indiretamente essa aceleração. Essa representação visual pode ajudar os traders a compreender melhor e a se adaptar à realidade do mercado moderno, no qual os eventos se desenrolam mais rapidamente e os ciclos se sucedem com velocidade crescente.

Essa aceleração pode ser vista como um sinal do desenvolvimento tecnológico e da evolução dos mercados financeiros. Com o surgimento do trading de alta frequência, a disseminação instantânea de notícias por meio das redes sociais e o aumento da acessibilidade das plataformas de negociação para investidores de varejo, os mercados passaram a reagir aos eventos com uma rapidez sem precedentes. As tendências, que antes eram mais duradouras e previsíveis, agora mudam com maior volatilidade. 

É importante destacar que, embora o indicador reflita essa aceleração, ele não a prevê diretamente. Em vez disso, ele fornece uma ferramenta visual que pode ajudar os traders a compreender e incorporar o conceito de ciclos de mercado acelerados em sua análise.


Testando o indicador

Vamos analisar os resultados do indicador com dados históricos. Escolhemos o par euro-dólar como ativo e definimos 1.00 como ponto inicial para o cálculo dos níveis. Agora, observemos os seguintes períodos:

Outro trecho da história:

Mais um exemplo:

2008:

2010, novamente vemos reação aos níveis:

2011:

2012:

2020:

Atualidade: neste momento, o preço do euro-dólar está precisamente em um nível do Quadrado de 9 de Gann.

Quanto aos ciclos temporais baseados na quadratura do tempo, não identifiquei reações estatisticamente significativas do preço em relação a eles.

Possíveis melhorias

Seria interessante adicionar alertas quando o preço tocar um nível do Quadrado de 9, assim como implementar um recalculo automático dos níveis do quadrado quando houver atualização nos preços. 

Seria igualmente interessante implementar a Caixa de Gann e a Grade de Gann como indicadores, integrando todas essas ferramentas em um único sistema abrangente.

Perspectivas para a criação de um EA baseado no Quadrado de 9

Também é viável desenvolver um EA que opere em reversões nos níveis do quadrado. Considero esse EA semiautomático, possivelmente vinculado a objetos no gráfico. Ele poderia facilitar o trabalho do trader, executando suas diretrizes para operar a partir de determinados níveis.

Considerações finais

Para concluir, o desenvolvimento do indicador Quadrado de 9 de Gann para a plataforma MetaTrader 5 representa um projeto ambicioso e inovador, que combina conceitos clássicos da análise técnica com as mais modernas tecnologias de negociação. Ele fornece aos traders uma ferramenta única para análise de mercado, unificando elementos de análise de preço e de tempo.

A implementação da teoria do Quadrado de 9 na forma de um indicador digital torna essa abordagem mais acessível e prática para um público mais amplo de traders. A possibilidade de visualizar, simultaneamente, níveis de preço e tempo em um único gráfico permite uma análise mais abrangente dos movimentos do mercado, o que pode ser especialmente útil no ambiente atual, no qual as condições mudam rapidamente.

É importante destacar que, apesar da base matemática do indicador, a interpretação dos sinais do Quadrado de 9 de Gann continua sendo amplamente subjetiva. 

No geral, este projeto demonstra como métodos históricos de análise técnica podem ser adaptados às tecnologias modernas de negociação, proporcionando novas ferramentas para os traders. Isso reforça o valor atemporal das ideias clássicas e seu potencial no contexto dos mercados financeiros contemporâneos.

Traduzido do russo pela MetaQuotes Ltd.
Artigo original: https://www.mql5.com/ru/articles/15566

Arquivos anexados |
Gann_Square9.mq5 (10.58 KB)
Últimos Comentários | Ir para discussão (1)
Weite Yu
Weite Yu | 27 mar. 2025 em 09:31
Como mostrar a calculadora de tempo no gráfico?
Introdução ao MQL5 (Parte 8): Guia do Iniciante para Construção de Expert Advisors (II) Introdução ao MQL5 (Parte 8): Guia do Iniciante para Construção de Expert Advisors (II)
Este artigo aborda perguntas comuns de iniciantes nos fóruns de MQL5 e apresenta soluções práticas. Aprenda a realizar tarefas essenciais, como comprar e vender, obter preços de velas e gerenciar aspectos de negociação automatizada, como limites de operações, períodos de negociação e limites de lucro/perda. Receba orientações passo a passo para aprimorar sua compreensão e implementação desses conceitos no MQL5.
Algoritmo de otimização da sociedade anárquica — Anarchic society optimization (ASO) Algoritmo de otimização da sociedade anárquica — Anarchic society optimization (ASO)
No próximo artigo, conheceremos o algoritmo Anarchic Society Optimization (ASO) e discutiremos como um algoritmo baseado no comportamento irracional e aventureiro dos participantes de uma sociedade anárquica — um sistema anômalo de interação social, livre de autoridade centralizada e de qualquer tipo de hierarquia — é capaz de explorar o espaço de soluções e evitar armadilhas de ótimos locais. O artigo apresentará uma estrutura unificada do ASO, aplicável tanto a problemas contínuos quanto a problemas discretos.
Redes neurais em trading: Método abrangente de previsão de trajetórias (Traj-LLM) Redes neurais em trading: Método abrangente de previsão de trajetórias (Traj-LLM)
Neste artigo, quero apresentar a você um método interessante de previsão de trajetórias, desenvolvido para resolver problemas relacionados ao movimento autônomo de veículos. Os autores do método combinaram os melhores elementos de diferentes soluções arquitetônicas.
Métodos de William Gann (Parte I): Criando um indicador de ângulos de Gann Métodos de William Gann (Parte I): Criando um indicador de ângulos de Gann
Qual é a essência da teoria de Gann? Como são construídos os ângulos de Gann? Criamos um indicador de ângulos de Gann para o MetaTrader 5.