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 Professional Library - bibliothèque pour MetaTrader 5

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

Caractéristiques principales

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

Exigences

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

Installation du Bot Telegram

Étape 1 : Créer le bot Telegram

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

Etape 2 : Obtenir un identifiant de chat

  1. Ajoutez votre bot à un groupe/canal ou démarrez un chat privé
  2. Envoyez n'importe quel message au bot
  3. Visitez : https://api.telegram.org/bot<Votre_TOKEN>/getUpdates
  4. Trouvez l'identifiant du chat dans la réponse

Étape 3 : Configuration de MT5

  1. Ouvrez MT5 → Outils → Options → Expert Advisors
  2. Cochez "Allow WebRequest for listed URL" (Autoriser les requêtes Web pour les URL répertoriées).
  3. Ajoutez l'URL : https://api.telegram.org
  4. Cliquez sur OK

Étape 4 : Installation des fichiers

  1. Copiez TelegramBot.mqh dans MQL5/Include/
  2. Copiez TelegramBot_Example.mq5 dans 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("Failed to initialize bot");
        return INIT_FAILED;
    }
    
    // Envoi d'un message de test
    bot.SendMessage("Bot connected successfully!");
    
    // Envoi d'une capture d'écran du graphique
    bot.SendChartScreenshot("Current market situation");
    
    return INIT_SUCCEEDED;
}

Référence API

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

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 d'Expert Advisor

Le paquet comprend un exemple d'EA entièrement fonctionnel démontrant :

  • Surveillance 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 du risque
  • Rapports quotidiens
  • Signaux de trading de démonstration

Formatage des messages

Format HTML (recommandé)

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

Format Markdown

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

Performances

  • Taux de messages : Jusqu'à 30 messages par minute
  • Limite de taille des fichiers : 50 Mo par fichier
  • Longueur du message : 4096 caractères
  • Longueur de la légende : 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 complète des erreurs :

  • Validation de la connexion
  • Protection contre la limitation du débit
  • Réessais automatiques en cas d'échec
  • Système de file d'attente pour les messages échoués
  • Enregistrement détaillé des erreurs

Support

  • Documentation : Documentation complète de l'API 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)

  • Version initiale
  • Intégration complète de l'API Telegram Bot
  • Support multi-canal
  • Système de file d'attente
  • Moteur de modèles
  • Alertes de gestion des risques

Licence d'utilisation

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

Auteur

Financial Blueprint
Solutions de trading professionnelles

Clause de non-responsabilité

Ce logiciel est fourni "tel quel" 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 indicatives des résultats futurs.


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

Instructions de configuration détaillées

Créer un bot Telegram

  1. Trouver BotFather

    • Ouvrez Telegram
    • Rechercher @BotFather
    • Appuyer sur START
  2. Créer un nouveau bot

    • Envoyer 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)
    • Enregistrez le jeton comme suit : 123456789:ABCdefGHIjklMNOpqrsTUVwxyz
  3. Configurer le bot

    • Envoyez /setprivacy et sélectionnez DISABLE (pour la fonctionnalité de groupe)
    • Envoyer /setjoingroups et sélectionner ENABLE (pour ajouter aux groupes)

Obtenir l'identifiant du chat

Pour les messages privés :

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

Pour les groupes :

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

Pour les canaux :

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

Résolution des problèmes courants

Erreur WebRequest :

Solution : 1. Outils → Options → Expert Advisors 2. Autoriser le WebRequest pour l'URL listée 3. Ajouter : https://api.telegram.org 4. Redémarrer MT5

Bot Not Responding :

Vérifier : 1. l'exactitude du jeton 2. L'exactitude de l'ID du chat 3. Connexion Internet 4. Paramètres de WebRequest

Messages non délivrés :

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

Exemples d'utilisation

Envoyer 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> Entry Point</b>\n";
caption += "Pair: EURUSD\n";
caption += "Type: BUY\n";
caption += "Price: 1.1850";
bot.SendChartScreenshot(caption);

Envoi de l'état du compte

bot.SendAccountStatus();
// Envoie automatiquement le solde, les fonds propres, la marge, etc.

Configuration des rapports quotidiens

// Dans la fonction OnTimer() de l'EA
if(TimeHour(TimeCurrent()) == 23 && TimeMinute(TimeCurrent()) == 0)
{
    bot.SendDailyReport();
}

Alerte de réduction

double drawdown = CalculateDrawdown(); // Votre fonction de calcul
if(drawdown > 20.0) // Réduction de plus de 20 %.
{
    bot.SendRiskAlert(drawdown);
}

Structure du message

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


Traduit de l’anglais par MetaQuotes Ltd.
Code original : https://www.mql5.com/en/code/63587

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.

XMACD_HTF_Signal XMACD_HTF_Signal

L'indicateur XMACD_HTF_Signal affiche les directions de tendance des trois dernières barres de l'indicateur XMACD sous forme de trois objets graphiques.

MT5 to Telegram - Bibliothèque de notifications de trading professionnel MT5 to Telegram - Bibliothèque de notifications de trading professionnel

Intégration complète de Telegram pour MT5. Envoyez des signaux de trading, des captures d'écran, des rapports et des alertes aux canaux Telegram. Inclut un système de file d'attente, un support multi-canal et une gestion des risques.

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.