Guarda come scaricare robot di trading gratuitamente
Ci trovi su Telegram!
Unisciti alla nostra fan page
Script interessante?
Pubblica il link!
lasciare che altri lo valutino
Ti è piaciuto lo script? Provalo nel Terminale MetaTrader 5
Librerie

MT5 to Telegram Professional Library - libreria per MetaTrader 5

Visualizzazioni:
53
Valutazioni:
(12)
Pubblicato:
\MQL5\Include\ \MQL5\Experts\
testbot.mq5 (42.56 KB) visualizza
Freelance MQL5 Hai bisogno di un robot o indicatore basato su questo codice? Ordinalo su Freelance Vai a Freelance

Caratteristiche principali

  • 📨 Notifiche di trading in tempo reale - Avvisi istantanei di apertura/chiusura/modifica della posizione
  • 📸 S creenshot dei grafici - Cattura automatica dei grafici con annotazioni
  • 📊 Rapporti sul conto - Rapporti sulla performance giornalieri, settimanali e mensili
  • ⚠️ Avvisi sulla gestione del rischio - Avvisi di drawdown, livello di margine e stop-out
  • 🔄 S istema di coda dei messaggi - Consegna affidabile con meccanismo di ritentativo
  • 👥 S upporto multi-canale - Trasmissione a più chat/canali di Telegram
  • 📝 S istema di modelli - Modelli di messaggio personalizzabili
  • 🎯 Limitazione intelligente della velocità - Previene il throttling delle API

Requisiti

  • MetaTrader 5 build 2375 o superiore
  • Gettone Telegram Bot (ottenuto da @BotFather)
  • ID chat o ID canale
  • Connessione a Internet

Installazione

Passo 1: Creare il Bot Telegram

  1. Aprite Telegram e cercate @BotFather
  2. Inviate il comando /newbot
  3. Scegliete un nome per il vostro bot
  4. Scegliere un nome utente (deve finire con 'bot')
  5. Salvare il token fornito da BotFather

Passo 2: Ottenere l'ID della chat

  1. Aggiungete il vostro bot a un gruppo/canale o avviate una chat privata
  2. Inviare qualsiasi messaggio al bot
  3. Visitare: https://api.telegram.org/bot<YOUR_TOKEN>/getUpdates
  4. Trovare l'ID della chat nella risposta

Passo 3: Configurare MT5

  1. Aprire MT5 → Strumenti → Opzioni → Consulenti esperti
  2. Spuntare "Consenti WebRequest per l'URL elencato".
  3. Aggiungere l'URL: https://api.telegram.org
  4. Fare clic su OK

Passo 4: Installare i file

  1. Copiate TelegramBot.mqh in MQL5/Include/
  2. Copiare TelegramBot_Example.mq5 in MQL5/Experts/
  3. Compilate entrambi i file

Avvio rapido

#include <TelegramBot.mqh>

CTelegramBot bot;

int OnInit()
{
    // Inizializza il bot
    if(!bot.Initialize("YOUR_TOKEN", "YOUR_CHAT_ID"))
    {
        Print("Failed to initialize bot");
        return INIT_FAILED;
    }
    
    // Inviare un messaggio di prova
    bot.SendMessage("Bot connected successfully!");
    
    // Inviare la schermata del grafico
    bot.SendChartScreenshot("Current market situation");
    
    return INIT_SUCCEEDED;
}

Riferimento alle API

Messaggistica di base

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

Segnali di trading

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

Media

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

Rapporti

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

Gestione del rischio

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

Esempio di Expert Advisor

Il pacchetto include un esempio di EA completamente funzionale che dimostra:

  • Monitoraggio delle posizioni con notifiche
  • Screenshot automatici su eventi di trading
  • Aggiornamenti periodici sullo stato del conto
  • Avvisi sulla gestione del rischio
  • Rapporti giornalieri
  • Segnali di trading demo

Formattazione dei messaggi

Formato HTML (consigliato)

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

Prestazioni

  • Velocità dei messaggi: Fino a 30 messaggi al minuto
  • Limite di dimensione dei file: 50 MB per file
  • Lunghezza messaggio: 4096 caratteri
  • Lunghezza didascalia: 1024 caratteri
  • Dimensione coda: 100 messaggi
  • Tempo medio di risposta: 50-200 ms

Gestione degli errori

La libreria include una gestione completa degli errori:

  • Convalida della connessione
  • Protezione dalla limitazione della velocità
  • Riproduzione automatica in caso di errore
  • Sistema di coda per i messaggi falliti
  • Registrazione dettagliata degli errori

Supporto

  • Documentazione: Documentazione API completa inclusa nel sorgente
  • Esempio EA: esempio funzionante con tutte le funzionalità
  • Modalità di debug: Debug incorporato per la risoluzione dei problemi

Storia della versione

Versione 1.0.0 (2024)

  • Rilascio iniziale
  • Integrazione completa dell'API di Telegram Bot
  • Supporto multicanale
  • Sistema di coda
  • Motore di modelli
  • Avvisi di gestione del rischio

Licenza

Questa libreria viene fornita così com'è per l'utilizzo in MetaTrader 5. È libera per uso personale e commerciale.

Autore

Financial Blueprint
Soluzioni di trading professionale

Esclusione di responsabilità

Questo software viene fornito "così com'è" senza alcun tipo di garanzia. Il trading comporta un rischio sostanziale di perdita e non è adatto a tutti gli investitori. Le performance passate non sono indicative dei risultati futuri.


Se trovate utile questa libreria, valutatela su MQL5 CodeBase!

Istruzioni dettagliate per l'installazione

Creare un Bot Telegram

  1. Trovare BotFather

    • Aprire Telegram
    • Cercare @BotFather
    • Premere INIZIO
  2. Crea un nuovo Bot

    • Inviare il comando /newbot
    • Inserire il nome del bot (ad esempio, "My Trading Bot")
    • Inserire il nome utente del bot (ad es., my_trading_bot)
    • Salvare il token come segue: 123456789:ABCdefGHIjklMNOpqrsTUVwxyz
  3. Configurare il bot

    • Inviare /setprivacy e selezionare DISABLE (per la funzionalità dei gruppi).
    • Inviare /setjoingroups e selezionare ENABLE (per aggiungere ai gruppi).

Ottenere l'ID della chat

Per i messaggi privati:

  1. Avviare la conversazione con il bot
  2. Inviare qualsiasi messaggio
  3. Aprire il browser: https://api.telegram.org/bot<TOKEN>/getUpdates
  4. Trovare "chat":{"id":123456789} - questo è l'ID della chat

Per i gruppi:

  1. Aggiungere il bot al gruppo
  2. Inviare un messaggio nel gruppo
  3. Aprire il browser: https://api.telegram.org/bot<TOKEN>/getUpdates
  4. Trova "chat":{"id":-123456789} - numero negativo per i gruppi

Per i canali:

  1. Aggiungere il bot come amministratore del canale
  2. Inviare un messaggio al canale
  3. Oppure utilizzare @channelname come ID chat

Risoluzione dei problemi comuni

Errore WebRequest:

Soluzione: 1. Strumenti → Opzioni → Expert Advisors 2. ✓ Consenti WebRequest per gli URL elencati. Aggiungere: https://api.telegram.org 4. Riavviare MT5

Il bot non risponde:

Controllare: 1. Correttezza del token 2. Correttezza dell'ID della chat Correttezza dell'ID della chat 3. Connessione a Internet 4. Impostazioni di WebRequest

Messaggi non consegnati:

Possibili cause: 1. Limite API superato (30 messaggi/minuto) 2. Formato HTML non valido nel messaggio 3. Messaggio troppo lungo (>4096 caratteri). Messaggio troppo lungo (>4096 caratteri)

Esempi di utilizzo

Invio di un segnale di acquisto

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

Invio di una schermata con annotazione

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

Invio dello stato del conto

bot.SendAccountStatus();
// Invio automatico di saldo, capitale, margine, ecc.

Impostazione dei rapporti giornalieri

// In OnTimer() dell'EA
if(TimeHour(TimeCurrent()) == 23 && TimeMinute(TimeCurrent()) == 0)
{
    bot.SendDailyReport();
}

Allarme di drawdown

double drawdown = CalculateDrawdown(); // La vostra funzione di calcolo
if(drawdown > 20.0) // Drawdown superiore al 20%
{
    bot.SendRiskAlert(drawdown);
}

Struttura del messaggio

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


Tradotto dall’inglese da MetaQuotes Ltd.
Codice originale https://www.mql5.com/en/code/63587

IncCMOOnArray IncCMOOnArray

La classe CMOOnArray è progettata per calcolare i valori dell'indicatore CMO (Chande Momentum Oscillator) per buffer di indicatori. L'indicatore Test_CMOOnArray è allegato come esempio di utilizzo della classe.

Segnale XMACD_HTF Segnale XMACD_HTF

L'indicatore XMACD_HTF_Signal visualizza le direzioni di tendenza delle ultime tre barre dell'indicatore XMACD come tre oggetti grafici.

Da MT5 a Telegram - Libreria di notifiche di trading professionale Da MT5 a Telegram - Libreria di notifiche di trading professionale

Integrazione completa di Telegram per MT5. Invia segnali di trading, screenshot, report e avvisi ai canali Telegram. Include un sistema di code, supporto multicanale e gestione del rischio.

IncSAROnArray IncSAROnArray

La classe CSAROnArray è progettata per calcolare i valori dell'indicatore SAR (Parabolic SAR) tramite buffer di indicatori. L'indicatore Test_SAROnArray è allegato come esempio di utilizzo della classe.