Assista a como baixar robôs de negociação gratuitos
Encontre-nos em Twitter!
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
Bibliotecas

Calendar-Based Backtesting: an Event-Driven Trading EA - biblioteca para MetaTrader 5

Visualizações:
44
Avaliação:
(4)
Publicado:
2025.06.28 12:09
Freelance MQL5 Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance

O código está repleto de comentários para melhor compreensão. Esta descrição explica a ideia principal e as maneiras de usar/reutilizar o código.

Essa estrutura consiste em três componentes principais:

1. CalendarRetriever.mq5 (Script) - Esse script busca eventos de notícias econômicas anteriores e os salva em arquivos na pasta "Common" do seu terminal. Esses arquivos serão lidos posteriormente pelo consultor especialista durante o backtesting. O script requer dois parâmetros de entrada:

  • Data de início - A data a partir da qual os eventos de notícias anteriores devem ser recuperados.
  • Data final - A última data para a qual os eventos de notícias devem ser armazenados

Depois de executar esse script, ele gerará uma pasta "Calendário" no diretório "Comum" do terminal e os seguintes arquivos de texto serão criados:

  • Countries.txt - Contém informações sobre cada país do MQLCalendarCountry
  • Events.txt - Armazena detalhes do evento, como nome, impacto e countryid.
  • News.bin - Contém valores históricos de eventos de notícias, incluindo registros de data e hora.

    2. CalendarFile.mq (Include File) - Esse arquivo fornece uma maneira estruturada de lidar com dados de notícias no consultor especialista. Ele contém duas classes principais:

    • CalendarFileWriter - Usado internamente pelo script para armazenar dados de notícias.
    • CalendarFileReader - Usado no consultor especialista para ler e processar dados de notícias. Inclui funções para carregar dados de eventos e rastrear as próximas notícias na função OnTick.
    3. NewsBacktest.mq5 (Expert Advisor) - Esse EA usa os dados armazenados para simular condições de notícias em tempo real no testador de estratégia. Ele lê os dados de notícias salvos usando as funções Load e executa as negociações de acordo.

    Como usar a estrutura:

    1. Execute o script CalendarRetriever: Selecione o símbolo que deseja testar e execute o script CalendarRetriever.mq5, com as datas de início e término especificadas.

    2. O Expert Advisor

      • O EA usa a classe CalendarFileReader para carregar os dados usando estas funções:
        • LoadEvents() - Carrega os detalhes do evento.
        • LoadCountries() - Carrega as informações do país.
        • LoadValues() - Carrega valores históricos de notícias.
      • Em seguida, ele processa os eventos de notícias na função OnTick para determinar quando um evento de notícias está ocorrendo. Use Propagate() para prever e Track() para reagir.
      • A função CalendarFileReader.Propagate() definirá o próximo índice para o próximo evento, que deve ser chamado a cada tick.
      • A função CalendarFileReader.Track() retorna true quando um evento de notícias tiver passado e define o último índice para esse evento específico. Também é chamada na função OnTick(), mas o resultado deve ser verificado.
    3. Faça o backtestda estratégia Abra o testador de estratégia no MetaTrader 5, selecione NewsBacktest.mq5 e execute o backtest no modo visual

    Como adaptá-lo a suas próprias estratégias baseadas em notícias:

    Essa estrutura foi projetada para ser flexível, permitindo que os traders desenvolvam suas próprias estratégias em torno de eventos de notícias econômicas. Aqui estão algumas maneiras de modificá-la:

    • Ajustar a lógica de filtragem de eventos em OnTick() para reagir a tipos específicos de notícias (por exemplo, negociar somente após o lançamento de NFP ou CPI).
    • Modificar a lógica de execução de ordens para implementar estratégias diferentes, como desvanecer o movimento inicial em vez de negociar com breakout.
    • Usar indicadores adicionais junto com eventos de notícias para refinar os sinais de entrada.
    • Alterar o tempo de expiração das ordens pendentes com base no nível de impacto do evento.

    Essa solução torna o backtesting de estratégias baseadas em notícias o mais realista possível dentro das limitações do MetaTrader 5. Ao recuperar primeiro os dados históricos de notícias e depois simular seu impacto no mercado, os traders podem obter informações valiosas sobre o desempenho de suas estratégias em condições reais.

    Para uma compreensão mais fácil e melhor, não deixe de assistir ao meu vídeo sobre o assunto:




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

    Indicador de equilíbrio de tendências TrendEQ Indicador de equilíbrio de tendências TrendEQ

    O TrendEQ analisa dinamicamente as tendências do mercado combinando momentum e volatilidade. Ao medir o momentum em relação às tendências do mercado, o TrendEQ fornece uma medida confiável da força e da direção da tendência.

    Gerenciamento de riscos e viés diário de bot ict Gerenciamento de riscos e viés diário de bot ict

    A biblioteca RiskManagement da MQL5 oferece um gerenciamento de risco eficiente e dinâmico, otimizado para minimizar os recursos. Ela permite a definição de limites máximos de lucros e perdas com modificadores personalizáveis. Inclui controle de ordens OCO e ferramentas para gerenciamento de candlesticks e conversões de preços.

    Smart Trend Follower Smart Trend Follower

    Esse EA foi projetado para seguir automaticamente as tendências do mercado usando sinais dos indicadores Média Móvel e Oscilador Estocástico. O EA detecta sinais de compra e venda utilizando cruzamentos de MA e confirma a tendência com o Estocástico. Além disso, o EA inclui o gerenciamento automático de posições, como a definição de Take Profit, Stop Loss e duplicação do tamanho do lote para aumentar a eficácia da negociação em mercados de tendência.

    Trade Assistant MT5 Trade Assistant MT5

    Indicador Trade Assistant MetaTrader - um indicador multi-timeframe que se baseia em três indicadores padrão: Oscilador estocástico, RSI (Índice de Força Relativa) e CCI (Índice de Canal de Commodities). Ele exibe as direções da tendência atual para os períodos de tempo M1, M5, M15, M30, H1, H4, D1, W1 e MN1. Quando você segue esse indicador, tem uma visão clara das tendências em todos os períodos de tempo importantes. Não importa em qual período de tempo você anexa esse indicador. O indicador pode ser baixado para MT4 e MT5.