Assista a como baixar robôs de negociação gratuitos
Encontre-nos em Telegram!
Participe de nossa página de fãs
Acesse o CodeBase em seu terminal MetaTrader 5
Não encontrou o código mais adequado? Encomende-o na seção Freelance
Como escrever um Expert Advisor ou um indicador

Scripts para MetaTrader 5 com códigos fonte

icon

Scripts são usados para realizar uma ação única no MetaTrader 5 através de um programa em MQL5, e são imediatamente removidos do gráfico após a conclusão da tarefa. Exemplos de tais tarefas incluem exportar o histórico de negociações, criar um relatório e enviá-lo por e-mail, carregar e processar dados de um arquivo. Os scripts também podem ser usados para criar uma interface gráfica ou executar rapidamente operações de negociação uniformes, como fechar todas as posições urgentemente.

Os scripts apresentados podem ser livremente baixados e executados no MetaTrader 5. A biblioteca de scripts também está disponível diretamente do ambiente de desenvolvimento MetaEditor, use-os para aprender a programar em MQL5.

Adicionar código
recentes | melhores

Uma análise rápida do mercado para identificar tendências sustentáveis. O script analisa, em um segundo, todos os símbolos da “Visão Geral do Mercado” e identifica os instrumentos com o movimento mais nítido e forte, utilizando a regressão linear R² e o indicador ADX.

Abre uma operação virtual entre colchetes em cada barra de M1, simula-a com base no histórico real de ticks e relata, para uma série de distâncias de stop, com que frequência a modelagem OHLC de 1 minuto resultaria em uma avaliação incorreta da operação.

Exporta uma linha CSV por operação encerrada com os números que um extrato bancário não apresenta: o melhor lucro não realizado que a operação apresentou (MFE), a pior perda não realizada que ela suportou (MAE), quanto do MFE foi efetivamente mantido, quantas barras ela abrangeu e por quanto tempo foi mantida. A mesma métrica do indicador Trade Excursion, gravada em um arquivo em vez de exibida graficamente, pois as perguntas que valem a pena fazer sobre esses dados são aquelas que um gráfico não consegue responder: a taxa de captura depende da hora de entrada? As operações que eu fecho antecipadamente são as que eu mantenho por mais tempo? As operações com prejuízo às segundas-feiras atingem um MAE diferente das de sexta-feira? Basta uma tabela dinâmica para responder a essas perguntas, uma vez que o arquivo CSV esteja disponível. A saída é separada por ponto-e-vírgula com uma linha de cabeçalho, no formato MQL5\Files; abre em qualquer planilha. Limite da medição: as excursões são calculadas a partir das máximas e mínimas das barras no período de tempo escolhido; o trajeto dentro de uma barra é desconhecido. A coluna de barras informa a resolução obtida por cada operação, e o resumo conta as operações de barra única separadamente, em vez de calcular a média delas.

Personalize seu Assistente de IA do MetaTrader 5 com opções de idioma, personalidade, menu e comportamento, utilizando um arquivo de comandos simples.

Verifica se um indicador de gráfico é atualizado, em vez de afirmar que isso não ocorre. A invariante: uma vez que uma barra tenha fechado e sido processada, nenhum objeto desenhado nela pode mudar — nem se mover, nem mudar de cor, nem alterar seu texto, nem desaparecer. O script inicia um símbolo personalizado com histórico real, vincula seu indicador por meio de um modelo, registra cada objeto, acrescenta barras, força um recálculo completo e compara objeto por objeto. Alterações e desaparecimentos são contados separadamente, pois apenas uma alteração significa que a afirmação é falsa. Uma execução que não comparou nada é relatada como INCONCLUSIVA, nunca como aprovada. A saída é um arquivo CSV que você pode publicar junto com o número.

O Neural Loss-Pattern Auditor treina uma pequena rede neural feed-forward, desenvolvida do zero em MQL5 nativo, utilizando o histórico de negócios fechados para testar se características comportamentais e de contexto de mercado são capazes de prever quais negociações têm maior probabilidade de resultar em prejuízo. Ele apresenta um aumento na precisão em relação a uma linha de base simples, uma tabela de calibração de probabilidades, uma classificação de importância das características por permutação e uma nota composta configurável de A a F com recomendações. Na primeira execução, ele utiliza uma demonstração sintética integrada, de modo que o resultado fica visível imediatamente, sem necessidade de configuração; basta alterar uma entrada para InpUseDemoData=false para analisar o histórico de uma conta real. MQL5 puro: sem bibliotecas externas, sem Python e sem nenhum tipo de serviço de IA.

Avalia se um sinal de entrada realmente compensa os custos de transação, antes de você passar semanas desenvolvendo um EA com base nele. Apresenta o resultado líquido após os custos, uma estatística t honesta em amostras não sobrepostas e um controle aleatório. Não emite ordens.

Exibe os limites ocultos do contrato que rejeitam ordens sem aviso prévio: nível de stop, nível de congelamento, lote mínimo/incremento/máximo, tamanho e valor do tick, tipo de spread, modo de execução, swaps e a margem necessária para o lote mínimo em relação à sua margem disponível.

Inspecionador de sessão de negociação nativo da corretora, somente para leitura, com status atual, próxima transição, escopo para vários símbolos e exportação para CSV.

Script MT5 somente para leitura que exibe o volume, o preço, os stops, o congelamento, o spread e as restrições de execução da corretora.

Testes de aceitação sintéticos determinísticos para a lógica de entrada do EA do MT5, sem acesso ao mercado, à conta ou às ordens.

Um script de auditoria somente leitura para contas que executam vários EAs (ou operações manuais paralelamente a eles). Ele agrupa o histórico de operações encerradas por número mágico e exibe uma linha por número mágico: operações fechadas completas, P/L líquido incluindo swap e comissão de AMBOS os lados da operação, taxa de acerto, fator de lucro, lucro/perda médio, posições abertas e pendentes no momento, datas de atividade e símbolos — classificados por resultado líquido, com exportação em CSV para planilhas.

Análise somente para leitura para contas que executam vários Expert Advisors. Ela agrupa as operações encerradas por número mágico e avalia o que a execução conjunta desses sistemas realmente economiza para você: drawdown isolado versus combinado, a matriz de correlação entre pares representada como um mapa de calor no gráfico e uma reorganização por simulação de Monte Carlo dos retornos do portfólio ao longo do período.

O script coleta o spread real da sua corretora a partir do campo “spread” das barras M1 e exibe a mediana, o 90º e o 99º percentis em unidades de preço, em pontos e em frações de ATR, além de exportar para um arquivo CSV o spread médio e máximo para cada hora do dia. É necessário para testar estratégias com base nos custos reais da sua conta, e não com base em um spread “típico” estimado de cabeça.

Lê um histórico de operações com posições encerradas (um arquivo CSV ou um arquivo gerado automaticamente a partir do histórico de operações da conta atual pelo script complementar RuinExport.mq5) e apresenta quatro indicadores de risco independentes: aumento do volume após uma perda, sobreposição de exposições na mesma direção que resultam, em média, em um preço pior, assimetria de retorno entre ganhos e perdas e uma estimativa clássica do risco de ruína para um risco definido por operação. As quatro pontuações são combinadas em uma única nota de A a F, acompanhada de recomendações em linguagem simples. Se nenhum arquivo CSV for encontrado, o script gera automaticamente um livro de demonstração reproduzível, de modo que o relatório fique visível já na primeira execução.

Um script totalmente em MQL5 que avalia a robustez da vantagem de uma estratégia em relação aos custos de execução. Ele lê um arquivo CSV com os campos Data, Lucro e Volume das operações encerradas e modela o custo de cada operação como uma parte fixa mais uma parte por lote. Ele exibe o custo de equilíbrio por operação, a margem de segurança (o múltiplo de um custo realista presumido no qual o lucro líquido chega a zero), o lucro líquido e o fator de lucro reajustados ao custo presumido, a proporção de operações lucrativas que o custo transforma em operações com prejuízo e uma nota composta de A+ a F para a robustez em relação aos custos, acompanhada de recomendações. Se não houver nenhum arquivo, ele gera uma amostra reproduzível e a analisa, de modo que o resultado seja visível já na primeira execução. Sem bibliotecas externas, sem Python, sem IA.

Calcula o tamanho correto do lote para uma operação planejada com base no seu risco (porcentagem do patrimônio líquido ou um valor fixo em dinheiro) e na distância do stop-loss (pontos ou um nível de preço). Respeita as especificações do contrato do símbolo — tamanho e valor do tick, volume mínimo/máximo/incremento — e estima a margem necessária.

Exporta suas posições encerradas, referentes a um período configurável, para um arquivo CSV, a fim de permitir a análise do diário de operações no Excel ou no Google Sheets: horário e preço de entrada e saída (ponderados pelo volume nas execuções parciais), volume, resultado em pontos, comissão, swap, lucro líquido e duração da operação.

Um script nativo em MQL5 que analisa a estrutura das quedas de valor de uma conta, e não apenas o valor isolado da “queda máxima”. Ele lê uma curva de patrimônio diária (arquivo CSV com Date e DailyPnL), reconstrói a curva de patrimônio negativo e a divide em episódios individuais de queda, com sua profundidade, duração e tempo de recuperação. Em seguida, ele apresenta o Índice de Úlcera, o Índice de Dor, o Fator de Recuperação e o tempo passado em território negativo, combinando-os em uma única pontuação de resiliência (de A+ a F) com recomendações, exibidas na aba “Experts”. Não utiliza bibliotecas externas; caso nenhum arquivo seja encontrado, ele gera uma curva de amostra para que possa ser executado imediatamente.

Um script nativo em MQL5 que mede o grau de concentração do lucro de uma estratégia — se a vantagem é ampla ou se depende de poucas operações de sorte. Ele lê um arquivo CSV com dados por operação (Data, Lucro) e apresenta a parcela do lucro líquido proveniente das maiores operações, o coeficiente de Gini das operações lucrativas, um perfil de concentração, um teste de sobrevivência que remove as melhores operações e recalcula o lucro líquido e o fator de lucro, e o maior ganho em um único dia em comparação com um limite de consistência configurável, combinados em uma pontuação de concentração e consistência (A+ a F) com recomendações. Se nenhum arquivo for encontrado, ele gera um conjunto de amostras, de modo que funciona imediatamente, sem necessidade de configuração. Sem bibliotecas externas, sem Python, sem IA. O auxiliar ExportTrades.mq5 grava o arquivo a partir do seu histórico de negociações.

Script de código aberto para a plataforma MT5 que registra as configurações do símbolo XAUUSD/GOLD, spread, valor do tick, tamanho do contrato, passo de volume, níveis de stop/freeze, swap e contexto da conta no log e, opcionalmente, em um arquivo CSV.

Script de diagnóstico que compara SYMBOL_TRADE_TICK_VALUE, SYMBOL_TRADE_TICK_VALUE_LOSS e SYMBOL_TRADE_TICK_VALUE_PROFIT para cada símbolo no Market Watch. Classifica cada símbolo em uma das quatro categorias (ALL_EQUAL, TV_MATCHES_PROFIT, TV_MATCHES_LOSS, ALL_DIFFER) e fornece um resumo agregado, além de uma dica de interpretação. Útil para verificar em qual propriedade de valor de tick se basear ao implementar o dimensionamento de lotes com base no risco em EAs. Exporta o relatório completo por símbolo para CSV em MQL5/Arquivos.

Script para definir o Stop Loss em todas as posições abertas com base em um valor-alvo de perda na moeda da conta (por exemplo, US$ 50 por posição). Funciona com qualquer moeda de depósito e qualquer símbolo de câmbio. Verifica os níveis de stop e congelamento da corretora. A conversão de moeda é feita automaticamente.

Os pipelines de rotulagem com barreira tripla costumam utilizar uma constante arbitrária (0,5–1,0%) ou uma suposição de spread herdada do passado como limite min_ret. Um limite definido abaixo do custo real de transação de ida e volta faz com que o pipeline rotule ruídos causados por custos como sinais negociáveis. O conjunto de dados rotulado, então, superestima sistematicamente o “edge”, e qualquer modelo treinado com base nessas rotulagens sofre sobreajuste a um artefato do esquema de rotulagem, em vez de se ajustar à estrutura genuína do mercado. O TransactionCostCollector.mq5 é um script independente que resolve a etapa de coleta de dados desse problema.

Encerrar posições com lucro

Conversor de verbalização NeuroPro para MQL5

Esse script serve como um exemplo prático de como os desenvolvedores podem trabalhar programaticamente com arquivos usando MQL5. Um de seus principais objetivos é demonstrar a organização eficaz de arquivos de projeto, o que é essencial para os desenvolvedores que trabalham em sistemas de grande escala ou que desejam criar projetos portáteis e independentes. O conceito pode ser expandido e refinado com ideias adicionais para dar suporte a fluxos de trabalho de desenvolvimento mais avançados.

Exibição em tempo real das cotações da Binance

Este é um programa simples para comparar o fechamento assíncrono e síncrono. É um programa de amostra, portanto, fique à vontade para modificá-lo para seus próprios fins de teste, como adicionar condições.

O script é útil para inspecionar a estrutura dos modelos ONNX, fornecendo informações sobre a entrada e a saída, seus nomes e suas propriedades. Ele é particularmente útil para depurar e compreender as características dos modelos ONNX usados em aplicativos de aprendizado de máquina.

Esse script coleta todos os buffers de indicadores integrados da MQL5 e os armazena em um arquivo CSV para fins de análise

Esse é um script para imprimir todas as negociações abertas e seus PnLs em um momento específico do histórico.

Essa função executa a lógica principal da abertura de uma negociação. Calcula o preço de abertura, os níveis de take profit e stop loss com base nas informações do símbolo e nos parâmetros fornecidos pelo usuário. Prepara uma solicitação de negociação (MqlTradeRequest) com as informações necessárias, como símbolo, volume, tipo de ordem, desvio, comentário, número mágico etc. Chama a função OrderSend para enviar a solicitação de operação e obter o resultado. Função SetTypeFillingBySymbol: determina o tipo de preenchimento da ordem (Fill ou Kill, Immediate ou Cancel, ou Return) com base na política de preenchimento do símbolo. Função GetMinTradeLevel: calcula o nível mínimo de operação com base no nível de congelamento e no nível de parada do símbolo. Ajusta o nível mínimo para garantir que esteja dentro de certos limites e retorna o resultado.

Gerador de chaves Sec-WebSocket

Embora o ajuste manual do stop-loss de uma única operação para corresponder ao preço de abertura seja uma tarefa relativamente simples, o gerenciamento de várias posições individualmente pode ser complicado e demorado. O script Titik Impas Breakeven para MT4/MT5 simplifica esse processo, proporcionando eficiência e conveniência para os operadores que lidam com várias posições.

Exporta estatísticas abrangentes de negociação para um arquivo CSV.

Essa função executa a lógica principal da abertura de uma negociação. Ela calcula o preço de abertura, os níveis de take profit e stop loss com base nas informações do símbolo e nos parâmetros fornecidos pelo usuário. Prepara uma solicitação de negociação (MqlTradeRequest) com as informações necessárias, como símbolo, volume, tipo de ordem, slippage, comentário, número mágico etc. Chame a função OrderSend para enviar a solicitação de negociação e obter o resultado. Função SetTypeFillingBySymbol: determina o tipo de atendimento da ordem (Preencher ou Cancelar, Imediato ou Cancelar ou Retornar) de acordo com a política de atendimento do símbolo. Função GetMinTradeLevel: calcula o nível mínimo de negociação com base no nível de congelamento e no nível de parada do símbolo. Ajusta o nível mínimo para garantir que ele esteja dentro de certos limites e retorna o resultado.

O script Clean Market Watch é uma ferramenta utilitária simples projetada para remover rapidamente todos os símbolos da janela Market Watch do MetaTrader 5 com um único clique. Isso é particularmente útil quando você quer começar do zero com um espaço de trabalho limpo ou quando a Observação do Mercado está cheia de símbolos demais. Finalidade Com o tempo, os operadores costumam acumular vários símbolos na janela Observação do Mercado, dificultando a concentração nos instrumentos que negociam ativamente. A remoção manual dos símbolos, um a um, pode ser tediosa e demorada. Esse script automatiza todo o processo, limpando todos os símbolos em segundos.

Esse é um script para exportar taxas e ticks do símbolo do gráfico atual para arquivos CSV compatíveis com o formato de exportação/importação do MT5.

É um script para exibir o tempo restante até a chegada da próxima barra.

1234567