Voir comment télécharger gratuitement des robots de trading
Retrouvez-nous sur Telegram !
Rejoignez notre page de fans
Un script intéressant ?
Poster un lien vers celui-ci -
laisser les autres l'évaluer
Vous avez aimé le script ? Essayez-le dans le terminal MetaTrader 5
Bibliothèque

MT5 to Telegram - Bibliothèque de notifications de trading professionnel - bibliothèque pour MetaTrader 5

Vues:
56
Note:
(6)
Publié:
\MQL5\Experts\
testbot.mq5 (42.56 KB) afficher
\MQL5\Include\
MQL5 Freelance Besoin d'un robot ou d'un indicateur basé sur ce code ? Commandez-le sur Freelance Aller sur Freelance

Bibliothèque professionnelle d'intégration de Telegram Bot pour MetaTrader 5. Une solution complète pour envoyer des signaux de trading, des captures d'écran, des rapports et des notifications en temps réel aux canaux et groupes Telegram.

Caractéristiques principales

  • 📨 Notifications de trading en temps réel - Alertes instantanées sur l'ouverture/la fermeture/la modification des positions.
  • 📸 Captures d'écran des graphiques - Capture automatique des graphiques avec annotations.
  • 📊 Rapports de compte - Rapports de performance quotidiens, hebdomadaires et mensuels
  • ⚠️ Alertes de gestion des risques - Alertes de drawdown, de niveau de marge et de stop-out
  • 🔄 S ystème de mise en file d'attente des messages - Livraison fiable avec mécanisme de relance
  • 👥 Prise en charge multicanal - Envoi à plusieurs chats/canaux Telegram
  • 📝 S ystème de modèles - Modèles de messages personnalisables
  • 🎯 Limitation intelligente du débit - Empêche le blocage de l'API

Exigences

  • MetaTrader 5 version 2375 ou supérieure
  • Jeton Telegram Bot (à obtenir auprès de @BotFather)
  • ID de chat ou de canal
  • Connexion Internet

Installation du Bot Telegram

Etape 1 : Créer un Telegram Bot

  1. Ouvrez Telegram et trouvez @BotFather
  2. Envoyez la commande /newbot
  3. Choisissez un nom pour votre bot
  4. Sélectionnez le nom d'utilisateur (doit se terminer par 'bot')
  5. Enregistrez le jeton fourni par BotFather

Etape 2 : Obtenir un identifiant de chat

  1. Ajoutez le bot à un groupe/canal ou démarrez une salle de chat privée
  2. Envoyer un message au bot
  3. Allez sur : https://api.telegram.org/bot<Votre_TOKEN>/getUpdates
  4. Trouvez l'identifiant de chat dans la réponse

Étape 3 : Configurer MT5

  1. Ouvrez MT5 → Service → Paramètres → Expert Advisors
  2. Cochez la case "Allow WebRequest for the following URLs" (Autoriser les requêtes Web pour les URL suivantes).
  3. Ajoutez l'URL : https://api.telegram.org
  4. Cliquez sur OK

Étape 4 : Installation des fichiers

  1. Copiez TelegramBot.mqh dans le dossier MQL5/Include/.
  2. Copiez TelegramBot_Example.mq5 dans le dossier MQL5/Experts/.
  3. Compilez les deux fichiers

Démarrage rapide

#include <TelegramBot.mqh>

CTelegramBot bot;

int OnInit()
{
    // Initialisation du bot
    if(!bot.Initialize("YOUR_TOKEN"., "YOUR_CHAT_ID"))
    {
        Print("Échec de l'initialisation du bot");
        return INIT_FAILED;
    }
    
    // Envoi d'un message test
    bot.SendMessage("Bot connecté avec succès !");
    
    // Envoyer une capture d'écran du graphique
    bot.SendChartScreenshot("Situation actuelle du marché".);
    
    return INIT_SUCCEEDED;
}

Référence API

Messages de base

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

Signaux d'échange

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);

Fichiers média

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

Rapports

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

Gestion du risque

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

Exemple de conseiller expert

Le paquet comprend un exemple entièrement fonctionnel du conseiller expert, démontrant :

  • Suivi des positions avec notifications
  • Captures d'écran automatiques lors d'événements commerciaux
  • Mises à jour périodiques de l'état du compte
  • Alertes de gestion des risques
  • Rapports quotidiens
  • Signaux de trading de démonstration

Formatage des messages

Format HTML (recommandé)

string message = "<b> Жирный текст</b>\n";
message += "<i> Курсив</i>\n";
message += "<code> Моноширинный код</code>\n";
message += "<a href='http://example.com'> Ссылка</a>";
bot.SendHTMLMessage(message);

Format Markdown

string message = "Texte en gras{\n}";
message += "Italique".;
message += "Code monospace".;
message += "[Lien](http://example.com)";
bot.SendMarkdownMessage(message);

Performances

  • Vitesse des messages : jusqu'à 30 messages par minute
  • Limite de taille des fichiers : 50 Mo par fichier
  • Longueur du message : 4096 caractères
  • Longueur de la signature : 1024 caractères
  • Taille de la file d'attente : 100 messages
  • Temps de réponse moyen : 50-200 ms

Gestion des erreurs

La bibliothèque comprend une gestion complexe des erreurs :

  • Vérification de la connexion
  • Protection contre le dépassement de limite
  • Réessais automatiques en cas d'échec
  • Système de file d'attente pour les messages échoués
  • Enregistrement détaillé des erreurs

Prise en charge

  • Documentation : La documentation complète de l'API est incluse dans le code source.
  • Exemple EA : Exemple de travail avec toutes les fonctionnalités
  • Mode de débogage : débogage intégré pour le dépannage

Historique des versions

Version 1.0.0 (2024)

  • Première version
  • Intégration complète de l'API Telegram Bot
  • Prise en charge de plusieurs canaux
  • Système de file d'attente
  • Moteur de modèles
  • Alertes de gestion des risques

Licence

Cette bibliothèque est fournie "telle quelle" pour une utilisation dans MetaTrader 5. Elle est gratuite pour un usage personnel et commercial.

Auteur

Forex Trading Blueprint
(Stepan Sinic)

Clause de non-responsabilité

Ce logiciel est fourni "en l'état" sans garantie d'aucune sorte. Le trading implique un risque substantiel de perte et ne convient pas à tous les investisseurs. Les performances passées ne sont pas un indicateur des résultats futurs.


Si vous trouvez cette bibliothèque utile, veuillez l'évaluer sur MQL5 CodeBase !

Instructions d'installation détaillées

Créer un bot dans Telegram

  1. Trouver BotFather

    • Ouvrez Telegram
    • Tapez @BotFather dans la recherche
    • Appuyer sur START
  2. Créer un nouveau bot

    • Envoyez la commande /newbot
    • Entrez le nom du bot (par exemple : "My Trading Bot")
    • Entrez le nom d'utilisateur du bot (par exemple : my_trading_bot)
    • Sauvegardez le jeton du formulaire : 123456789:ABCdefGHIjklMNOpqrsTUVwxyz
  3. Configurer le bot

    • Envoyez /setprivacy et sélectionnez DISABLE (pour le travail en groupe).
    • Envoyer /setjoingroups et sélectionner ENABLE (pour ajouter à des groupes)

Obtenir un identifiant de chat

Pour les messages privés :

  1. Entamez un dialogue avec votre robot
  2. Envoyez n'importe quel message
  3. Ouvrez votre navigateur : https://api.telegram.org/bot<TOKEN>/getUpdates
  4. Trouvez "chat":{"id":123456789} - il s'agit de votre identifiant de chat.

Pour un groupe :

  1. Ajouter le bot à un groupe
  2. Envoyer un message dans le groupe
  3. Ouvrir dans un navigateur : https://api.telegram.org/bot<TOKEN>/getUpdates
  4. Trouver "chat":{"id":-123456789} est un nombre négatif pour les groupes

Pour les canaux :

  1. Ajouter un bot en tant qu'administrateur du canal
  2. Envoyer un message au canal
  3. Ou utiliser @username du canal comme Chat ID

Solution aux problèmes fréquents

Erreur WebRequest :

Solution : 1. Outils → Paramètres → Conseillers 2. Autoriser le WebRequest pour les URLs suivantes 3. Ajouter : https://api.telegram.org 4. Redémarrer MT5

Le bot ne répond pas :

Vérifier : 1. Jeton correct 2. L'identifiant de chat est correct 3. la connexion Internet 4. les paramètres WebRequest

Les messages ne passent pas :

Causes possibles : 1. Limite API dépassée (30 messages/minute) 2. Format HTML incorrect dans le message 3. Message trop long (>4096 caractères)

Exemples d'utilisation

Envoi d'un signal d'achat

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

Envoi d'une capture d'écran avec annotation

string caption = "<b> Точка входа</b>\n";
caption += "Пара: EURUSD\n";
caption += "Тип: BUY\n";
caption += "Цена: 1.1850";
bot.SendChartScreenshot(caption);

Envoi de l'état d'un compte

bot.SendAccountStatus();
// Envoi automatique du solde, des fonds propres, de la marge, etc.

Mise en place de rapports quotidiens

// Dans le conseiller OnTimer()
if(TimeHour(TimeCurrent()) == 23 && TimeMinute(TimeCurrent()) == 0)
{
    bot.SendDailyReport();
}

Alerte de réduction (Drawdown)

double drawdown = CalculateDrawdown(); // Votre fonction de calcul
if(drawdown > 20.0) // La réduction est supérieure à 20 %.
{
    bot.SendRiskAlert(drawdown);
}

Structure des messages

Position ouverte

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

Position clôturée

[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
================

Rapport quotidien

[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%
================

Traduit du russe par MetaQuotes Ltd.
Code original : https://www.mql5.com/ru/code/63585

MT5 to Telegram Professional Library MT5 to Telegram Professional Library

Bibliothèque professionnelle d'intégration de Telegram Bot pour MetaTrader 5. Solution complète pour envoyer des signaux de trading, des captures d'écran, des rapports et des notifications en temps réel aux canaux et groupes Telegram.

IncCMOOnArray IncCMOOnArray

La classe CMOOnArray est conçue pour calculer les valeurs de l'indicateur CMO (Chande Momentum Oscillator) par tampon d'indicateur. L'indicateur Test_CMOOnArray est joint comme exemple d'utilisation de la classe.

OHLC Candles with extreme tick price tracking OHLC Candles with extreme tick price tracking

This is an OHLC candlestick chart which records the highest ask and lowest bid on each new bar

IncSAROnArray IncSAROnArray

La classe CSAROnArray est conçue pour calculer les valeurs de l'indicateur SAR (Parabolic SAR) par les tampons de l'indicateur. L'indicateur Test_SAROnArray est joint en tant qu'exemple d'utilisation de la classe.