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

MT5 to Telegram Professional Library - biblioteca para MetaTrader 5

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

Principais recursos

  • Notificações de negociação em tempo real - Alertas instantâneos para abertura/fechamento/modificação de posições
  • Capturas de tela de gráficos - Capturas automáticas de gráficos com anotações
  • Relatórios da conta - Relatórios de desempenho diários, semanais e mensais
  • ⚠️ Alertas de gerenciamento de risco - Avisos de drawdown, nível de margem e stop-out
  • 🔄 S istema de fila de mensagens - Entrega confiável com mecanismo de nova tentativa
  • Suporte a vários canais - Transmissão para vários chats/canais do Telegram
  • Sistema de modelos - Modelos de mensagens personalizáveis
  • Limitação inteligente de taxa - Evita a limitação da API

Requisitos

  • MetaTrader 5 build 2375 ou superior
  • Token de bot do Telegram (obtido com @BotFather)
  • ID de bate-papo ou ID de canal
  • Conexão com a Internet

Instalação

Etapa 1: Criar o bot do Telegram

  1. Abra o Telegram e procure por @BotFather
  2. Envie o comando /newbot
  3. Escolha um nome para seu bot
  4. Escolha um nome de usuário (deve terminar com "bot")
  5. Salve o token fornecido pelo BotFather

Etapa 2: Obter ID de bate-papo

  1. Adicione seu bot a um grupo/canal ou inicie um chat privado
  2. Envie qualquer mensagem para o bot
  3. Acesse: https://api.telegram.org/bot<YOUR_TOKEN>/getUpdates
  4. Encontre o ID do chat na resposta

Etapa 3: Configurar o MT5

  1. Abra o MT5 → Tools → Options → Expert Advisors
  2. Marque "Allow WebRequest for listed URL" (Permitir solicitação da Web para URL listada)
  3. Adicione o URL: https://api.telegram.org
  4. Clique em OK

Etapa 4: Instalar arquivos

  1. Copie TelegramBot.mqh para MQL5/Include/
  2. Copie TelegramBot_Example.mq5 para MQL5/Experts/
  3. Compile os dois arquivos

Início rápido

#include <TelegramBot.mqh>

CTelegramBot bot;

int OnInit()
{
    // Inicializar o bot
    if(!bot.Initialize("YOUR_TOKEN", "YOUR_CHAT_ID"))
    {
        Print("Failed to initialize bot");
        return INIT_FAILED;
    }
    
    // Enviar mensagem de teste
    bot.SendMessage("Bot connected successfully!");
    
    // Enviar captura de tela do gráfico
    bot.SendChartScreenshot("Current market situation");
    
    return INIT_SUCCEEDED;
}

Referência da API

Mensagens básicas

bool SendMessage(string text);
bool SendHTMLMessage(string text);
bool SendMarkdownMessage(string text);
bool SendMessageToAll(string text);

Sinais de negociação

bool SendTradeSignal(ENUM_SIGNAL_TYPE type, string symbol, double price);
bool SendPositionOpened(ulong ticket, string symbol, ENUM_POSITION_TYPE type, double volume, double price);
bool SendPositionClosed(ulong ticket, string symbol, double profit, double commission, double swap);

Mídia

bool SendPhoto(string file_path, string caption);
bool SendDocument(string file_path, string caption);
bool SendChartScreenshot();
bool SendChartScreenshot(string caption);

Relatórios

bool SendAccountStatus();
bool SendDailyReport();
bool SendWeeklyReport();
bool SendMonthlyReport();

Gerenciamento de risco

bool SendRiskAlert(double drawdown_percent);
bool SendMarginWarning(double margin_level);
bool SendStopOutWarning();

Exemplo de Consultor Especialista

O pacote inclui um exemplo de EA totalmente funcional que demonstra:

  • Monitoramento de posição com notificações
  • Capturas de tela automáticas em eventos de negociação
  • Atualizações periódicas do status da conta
  • Alertas de gerenciamento de risco
  • Relatórios diários
  • Sinais de negociação de demonstração

Formatação de mensagens

Formato HTML (recomendado)

string message = "<b> Bold text</b>\n";
message += "<i> Italic text</i>\n";
message += "<code> Fixed-width code</code>\n";
message += "<a href='http://example.com'> Link</a>";
bot.SendHTMLMessage(message);

Formato Markdown

string message = "*Bold text*\n";
message += "_Italic text_\n";
message += "`Fixed-width code`\n";
message += "[Link](http://example.com)";
bot.SendMarkdownMessage(message);

Desempenho

  • Taxa de mensagens: Até 30 mensagens por minuto
  • Limite de tamanho de arquivo: 50 MB por arquivo
  • Comprimento da mensagem: 4096 caracteres
  • Comprimento da legenda: 1024 caracteres
  • Tamanho da fila: 100 mensagens
  • Tempo médio de resposta: 50-200ms

Tratamento de erros

A biblioteca inclui um tratamento abrangente de erros:

  • Validação de conexão
  • Proteção de limitação de taxa
  • Novas tentativas automáticas em caso de falha
  • Sistema de fila para mensagens com falha
  • Registro detalhado de erros

Suporte ao usuário

  • Documentação: Documentação completa da API incluída no código-fonte
  • Exemplo de EA: exemplo funcional com todos os recursos
  • Modo de depuração: Depuração integrada para solução de problemas

Histórico de versões

Versão 1.0.0 (2024)

  • Versão inicial
  • Integração completa com a API do Telegram Bot
  • Suporte a vários canais
  • Sistema de filas
  • Mecanismo de modelos
  • Alertas de gerenciamento de risco

Licença

Esta biblioteca é fornecida no estado em que se encontra para uso no MetaTrader 5. Gratuita para uso pessoal e comercial.

Autor

Financial Blueprint
Professional Trading Solutions

Isenção de responsabilidade

Este software é fornecido "no estado em que se encontra", sem qualquer tipo de garantia. A negociação envolve risco substancial de perda e não é adequada para todos os investidores. O desempenho passado não é indicativo de resultados futuros.


Se você achar esta biblioteca útil, avalie-a no MQL5 CodeBase!

Instruções detalhadas de configuração

Criando um bot do Telegram

  1. Encontre o BotFather

    • Abra o Telegram
    • Procure por @BotFather
    • Pressione START
  2. Criar novo bot

    • Enviar o comando /newbot
    • Digite o nome do bot (por exemplo, "My Trading Bot")
    • Digite o nome de usuário do bot (por exemplo, my_trading_bot)
    • Salve o token como: 123456789:ABCdefGHIjklMNOpqrsTUVwxyz
  3. Configurar o bot

    • Envie /setprivacy e selecione DISABLE (para funcionalidade de grupo)
    • Envie /setjoingroups e selecione ENABLE (para adicionar a grupos)

Como obter o ID do chat

Para mensagens privadas:

  1. Inicie a conversa com seu bot
  2. Envie qualquer mensagem
  3. Abra no navegador: https://api.telegram.org/bot<TOKEN>/getUpdates
  4. Encontre "chat":{"id":123456789} - esse é seu ID de bate-papo

Para grupos:

  1. Adicionar bot ao grupo
  2. Enviar mensagem no grupo
  3. Abra no navegador: https://api.telegram.org/bot<TOKEN>/getUpdates
  4. Encontre "chat":{"id":-123456789} - número negativo para grupos

Para canais:

  1. Adicionar bot como administrador do canal
  2. Enviar mensagem para o canal
  3. Ou use @channelname como ID do chat

Solução de problemas comuns

Erro de WebRequest:

Solução: 1. Ferramentas → Opções → Expert Advisors 2. Permitir WebRequest para o URL listado 3. Adicionar: https://api.telegram.org 4. Reiniciar o MT5

O bot não está respondendo:

Verifique: 1. correção do token 2. A ID do chat está correta 3. Conexão com a Internet 4. Configurações do WebRequest

Mensagens não entregues:

Possíveis causas: 1. Limite da API excedido (30 mensagens/minuto) 2. Formato HTML inválido na mensagem 3. Mensagem muito longa (>4096 caracteres)

Exemplos de uso

Enviar sinal de compra

bot.SendTradeSignal(SIGNAL_BUY, "EURUSD", 1.1850, 1.1800, 1.1900);

Enviar captura de tela com anotação

string caption = "<b> Entry Point</b>\n";
caption += "Pair: EURUSD\n";
caption += "Type: BUY\n";
caption += "Price: 1.1850";
bot.SendChartScreenshot(caption);

Enviar status da conta

bot.SendAccountStatus();
// Envia automaticamente saldo, patrimônio líquido, margem, etc.

Configurar relatórios diários

// No OnTimer() do EA
if(TimeHour(TimeCurrent()) == 23 && TimeMinute(TimeCurrent()) == 0)
{
    bot.SendDailyReport();
}

Alerta de drawdown

double drawdown = CalculateDrawdown(); // Sua função de cálculo
if(drawdown > 20.0) // Drawdown superior a 20%
{
    bot.SendRiskAlert(drawdown);
}

Estrutura da mensagem

[POSITION OPENED] ↑
================
Ticket: #12345678
Symbol: EURUSD
Type: BUY
Volume: 0.10
Price: 1.18500
Time: 2024.01.15 10:30


[POSITION CLOSED]
================
Ticket: #12345678
Symbol: EURUSD
Profit: +125.50 USD
Commission: -2.00
Swap: -0.50
Total: +123.00 USD
Time: 2024.01.15 14:45
================


[DAILY REPORT]
================
Date: 2024.01.15

ACCOUNT SUMMARY
----------------
Balance: 10,125.50 USD
Equity: 10,250.00 USD
Floating P/L: +124.50 USD

TRADING ACTIVITY
----------------
Trades Today: 5
Today's Result: +250.00 USD
Open Positions: 2

BOT STATISTICS
----------------
Messages Sent: 45
Signals Sent: 8
Success Rate: 98.5%
================


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

Arbitrage Triangle EURGBP-EURUSD-GBPUSD Arbitrage Triangle EURGBP-EURUSD-GBPUSD

O EA identifica discrepâncias entre as taxas de câmbio teóricas e reais para executar oportunidades de negociação com risco minimizado.

Martingale Pulse EA Martingale Pulse EA

Apresentamos o MP by SPLpulse, um Expert Advisor sofisticado e altamente versátil projetado para o trader moderno. Seja você um scalper, um seguidor de tendências ou um operador de reversão, o MP by SPLpulse combina várias estratégias de negociação com um conjunto de gerenciamento de risco de nível institucional para se adaptar ao seu estilo de negociação exclusivo. Assuma o controle de suas negociações com personalização inigualável e automação poderosa.

MT5 to Telegram - Biblioteca de notificações de negociação profissional MT5 to Telegram - Biblioteca de notificações de negociação profissional

Integração completa do Telegram para o MT5. Envie sinais de negociação, capturas de tela, relatórios e alertas para os canais do Telegram. Inclui sistema de filas, suporte multicanal e gerenciamento de risco.

Barra de tempo Barra de tempo

Um indicador de informações simples que mostra o tempo restante até o fechamento da barra, bem como o tempo decorrido desde a abertura da barra e a hora atual.