Assista a como baixar robôs de negociação gratuitos
Encontre-nos em Telegram!
Participe de nossa página de fãs
Script interessante?
Coloque um link para ele, e permita que outras pessoas também o avaliem
Você gostou do script?
Avalie seu funcionamento no terminal MetaTrader 5
Experts

Universal Breakout Study - expert para MetaTrader 5

Sergey Ermolov
Sergey Ermolov
Olá,
Sou Sergey Yermolov — desenvolvo sistemas e algoritmos de trading há mais de 15 anos.
Minha abordagem ao trading não é baseada na busca por um “Santo Graal” nem em promessas de ganhos rápidos.
Não vendo “robôs que ganham dinheiro”.
| Portuguese English Русский 中文 Español Deutsch 日本語 한국어 Français Italiano Türkçe
Visualizações:
18
Avaliação:
(4)
Publicado:
Freelance MQL5 Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance

O Universal Breakout Study é um Expert Advisor desenvolvido para pesquisar e testar estratégias de negociação baseadas em breakouts

Descrição da estratégia

O EA define uma faixa de preço (Box) utilizando um número especificado de velas H1 e, assim que a faixa estiver completa, coloca ordens pendentes Buy Stop e Sell Stop fora dos limites da faixa.

Quando ocorre um rompimento, a ordem correspondente é ativada. Após a abertura da posição, ela pode ser gerenciada por meio de Stop Loss, Take Profit, Breakeven, Trailing Stop e outras técnicas de gerenciamento de negociação.

A faixa pode ser criada para qualquer sessão de negociação utilizando a hora ajustada ao GMT. Isso permite que os traders pesquisem rompimentos durante as sessões asiática, de Londres, de Nova York ou qualquer sessão personalizada, sem precisar modificar o código-fonte.

O EA suporta vários métodos para calcular Stop Loss e Take Profit. As ordens de proteção podem ser desativadas, especificadas como valores fixos ou calculadas como um coeficiente do tamanho da caixa. O tamanho da posição é calculado automaticamente com base no nível de risco selecionado.

Recursos de gerenciamento de negociação disponíveis:

  • Breakeven — move o Stop Loss para o ponto de equilíbrio.
  • Trailing Stop — gerenciamento dinâmico de posições.
  • Time Exit — encerrar posições após um período de tempo especificado.
  • Expiration — controle da validade das ordens pendentes.
  • Filtro por dia da semana — ativar ou desativar negociações em dias específicos da semana.

A negociação pode ser ativada ou desativada separadamente para cada dia da semana, tornando o EA adequado não apenas para pesquisas de rompimento, mas também para o estudo de efeitos de mercado baseados no calendário.

O código-fonte é totalmente aberto e pode ser usado para desenvolver estratégias personalizadas de rompimento, adicionar novos filtros e testar hipóteses de negociação.

Parâmetros

Configurações da caixa

  • GMT — deslocamento de GMT usado para o cálculo da sessão e a construção da caixa.
  • StartHourBox — Hora de início da caixa no horário GMT.
  • TotalBarBox — Número de velas H1 usadas para construir a caixa.

Example:

StartHourBox = 8
TotalBarBox = 24

O EA construirá uma caixa utilizando 24 velas horárias a partir das 08:00 GMT.

Abrir configurações

  • Shift — Distância adicional em relação ao limite da caixa antes de colocar ordens pendentes.
  • Expiration_Minute — Tempo de validade da ordem pendente em minutos.
    O valor 0 desativa a validade da ordem.

Exemplo:

Máxima da área = 1,1000
Deslocamento = 10 pontos

A ordem Buy Stop será colocada em 1,1010.

Configurações de StopLoss

  • StopLoss_Type — Método de cálculo do Stop Loss.

Modos disponíveis:

  • Nulo — Stop Loss desativado.
  • Fixed — Stop Loss fixo em pontos.
  • Coeficiente da caixa — Stop Loss calculado como uma fração do tamanho da caixa.
  • StopLoss — Valor fixo do Stop Loss em pontos.
  • k_StopLoss — Coeficiente de Stop Loss em relação ao tamanho da caixa.

Exemplo:

Tamanho da caixa = 100 pontos
k_StopLoss = 0,62

Stop Loss = 62 pontos.

Configurações de Take Profit

  • TakeProfit_Type — Método de cálculo do Take Profit.

Modos disponíveis:

  • Nulo — Take Profit desativado.
  • Fixo — Take Profit fixo em pontos.
  • Coeficiente da caixa — Take Profit calculado como uma fração do tamanho da caixa.
  • TakeProfit — Valor fixo do Take Profit em pontos.
  • k_TakeProfit — Coeficiente de Take Profit em relação ao tamanho da caixa.

Exemplo:

Tamanho da caixa = 100 pontos
k_TakeProfit = 0,30

Take Profit = 30 pontos.

Ponto de equilíbrio

  • Paritet_Type — Ativa ou desativa o ponto de equilíbrio.
  • Paritet — Lucro em pontos necessário antes de mover o Stop Loss para o breakeven.
  • Pips — Lucro adicional garantido após a movimentação do Stop Loss.

Exemplo:

Paritet = 20
Pips = 5

Após atingir 20 pontos de lucro, o Stop Loss será movido para o preço de entrada +5 pontos.

Trailing Stop Clássico

  • OnTraillingStop — Ativar ou desativar o Trailing Stop.
  • TraillingStop — Distância entre o preço atual e o Stop Loss.
  • TraillingStep — Passo mínimo de ajuste do Stop Loss.
  • TraillingStart — Lucro adicional necessário antes da ativação do Trailing Stop.

Exemplo:

TraillingStop = 20
TraillingStart = 10

O Trailing Stop só será ativado depois que a posição atingir 30 pontos de lucro.

Nesse momento, o Stop Loss será ajustado para garantir 10 pontos de lucro. Posteriormente, o Stop Loss continuará acompanhando o preço a uma distância de 20 pontos.

Saída por tempo

  • Close_Type — Ativa ou desativa a saída baseada no tempo.
  • Market_Minute — Tempo máximo de duração da posição em minutos.
  • Close_Level — Lucro mínimo necessário antes do fechamento da posição.

Exemplo:

Market_Minute = 70
Close_Level = 10

Se uma operação permanecer aberta por mais de 70 minutos e o lucro ultrapassar 10 pontos, a posição será fechada.

Dias de Negociação

  • Segunda-feira — Ativar negociação na segunda-feira.
  • Terça-feira — Ativar negociação na terça-feira.
  • Quarta-feira — Ativar negociação na quarta-feira.
  • Quinta-feira — Ativar negociação na quinta-feira.
  • Sexta-feira — Ativar negociação na sexta-feira.

Este filtro permite que o comportamento de rompimento seja testado separadamente para os diferentes dias da semana.

Configurações de negociação

  • RiskPercent — Risco por negociação como porcentagem do saldo da conta.

Observações importantes

  1. O EA funciona exclusivamente no período de tempo H1.
  2. A janela de negociação é construída com base na hora ajustada ao GMT, independentemente da hora do servidor da corretora.
  3. O tamanho da área de negociação é definido pelo número de velas H1, permitindo a análise de qualquer sessão de negociação ou intervalo de tempo personalizado.
  4. As ordens Buy Stop e Sell Stop são colocadas automaticamente assim que a janela for preenchida.
  5. As ordens pendentes podem expirar automaticamente usando o parâmetro Expiration_Minute.
  6. O Stop Loss e o Take Profit podem ser desativados, especificados como valores fixos ou calculados como um coeficiente do tamanho da caixa.
  7. Breakeven, Trailing Stop e Time Exit podem ser usados de forma independente ou simultânea.
  8. O Trailing Stop só é ativado depois que o lucro atinge TraillingStop + TraillingStart. O primeiro movimento de stop garante pelo menos TraillingStart pontos de lucro.
  9. A Saída por Tempo (Time Exit) fecha apenas as posições que atingiram o nível de lucro especificado.
  10. A negociação pode ser ativada ou desativada individualmente para cada dia da semana.
  11. O tamanho da posição é calculado automaticamente com base no nível de risco selecionado.
  12. Quando o dimensionamento de posição baseado em risco é utilizado, o risco é calculado a partir do saldo da conta no momento em que o EA é iniciado, e não a partir do saldo atual ou do patrimônio líquido.
  13. O EA foi criado para pesquisar estratégias de rompimento e não deve ser considerado um sistema pronto para negociação sem validação adicional e testes fora da amostra.

Exemplo de pesquisa

Como exemplo de como o Expert Advisor pode ser utilizado, foi realizado um estudo completo de pesquisa sobre estratégias de rompimento de faixa.

Os seguintes componentes foram analisados sequencialmente:

  • parâmetros de formação da faixa;
  • configurações de Stop Loss e Take Profit;
  • gestão do ponto de equilíbrio;
  • parâmetros de trailing stop;
  • filtro de saída baseado no tempo;
  • filtro por dia da semana.

Após selecionar as configurações mais promissoras, obteve-se um modelo final, que foi posteriormente validado em um período de teste prospectivo.

As figuras abaixo mostram os resultados da otimização e o desempenho no teste prospectivo de uma das configurações selecionadas.

Resultados da otimização

Estudo de Breakout Universal - Backtest do EURUSD


Resultados do Teste Prospectivo

Análise de rompimento universal - Forvard EURUSD

Este exemplo é fornecido apenas para fins de demonstração. Ele não deve ser interpretado como uma recomendação para usar qualquer conjunto específico de parâmetros nem como uma garantia de desempenho futuro.

O objetivo é simplesmente ilustrar como o Universal Breakout Study pode ser usado como uma ferramenta de pesquisa para desenvolver, testar e validar ideias de negociação.

Traduzido do inglês pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/en/code/73711

Chart Navigator MT5 Light Chart Navigator MT5 Light

Chart Navigator MT5 Light — um mini-gráfico para navegar rapidamente pelo gráfico de preços e acessar rapidamente seus marcadores nele

Institutional Ornstein-Uhlenbeck Equilibrium Matrix Institutional Ornstein-Uhlenbeck Equilibrium Matrix

Um indicador econométrico do espaço de preços que utiliza o processo estocástico de Ornstein-Uhlenbeck para estimar matematicamente o verdadeiro equilíbrio sem deriva do ativo e sua velocidade de reversão à média.

Accumulation/Distribution Accumulation/Distribution

O Indicador Accumulation/Distribution (Acumulação/Distribuição ou A/D) é determinado pelas mudanças de preço e volume.

Accelerator Oscillator (AC) Accelerator Oscillator (AC)

O Indicador Acceleration/Deceleration (Aceleração/Desaceleração ou AC) mede a aceleração e a desaceleração da força motriz atual do mercado.