MetaTrader 5 / Kütüphaneler

MT5 to Telegram Professional Library - MetaTrader 5 için kütüphane

28
(12)

Temel Özellikler

  • 📨 Gerçek Zamanlı Alım Satım Bildirimleri - Pozisyon açma/kapama/değiştirme için anlık uyarılar
  • 📸 Grafik Ekran Görüntüleri - Ek açıklamalı otomatik grafik yakalama
  • 📊 Hesap Raporları - Günlük, haftalık ve aylık performans raporları
  • ⚠️ Risk Yönetimi Uyarıları - Düşüş, marj seviyesi ve stop-out uyarıları
  • 🔄 Mesaj Kuyruk Sistemi - Yeniden deneme mekanizması ile güvenilir teslimat
  • 👥 Çoklu Kanal Desteği - Birden fazla Telegram sohbetine/kanalına yayın yapın
  • 📝 Şablon Sistemi - Özelleştirilebilir mesaj şablonları
  • 🎯 Akıllı Hız Sınırlama - API kısıtlamasını önler

Gereksinimler

  • MetaTrader 5 yapı 2375 veya üstü
  • Telegram Bot Token (@BotFather'dan edinin)
  • Sohbet Kimliği veya Kanal Kimliği
  • İnternet bağlantısı

Kurulum

Adım 1: Telegram Botu Oluşturun

  1. Telegram'ı açın ve @BotFather'ı arayın
  2. Newbot komutunu gönder
  3. Botunuz için bir isim seçin
  4. Bir kullanıcı adı seçin ('bot' ile bitmelidir)
  5. BotFather tarafından sağlanan belirteci kaydedin

Adım 2: Sohbet Kimliği Alın

  1. Botunuzu bir gruba/kanala ekleyin veya özel sohbet başlatın
  2. Bot'a herhangi bir mesaj gönderin
  3. Ziyaret edin: https://api.telegram.org/bot<YOUR_TOKEN>/getUpdates
  4. Yanıtta sohbet kimliğini bulun

Adım 3: MT5'i Yapılandırın

  1. MT5 → Araçlar → Seçenekler → Uzman Danışmanlar'ı açın
  2. "Listelenen URL için WebRequest'e İzin Ver" seçeneğini işaretleyin
  3. URL ekle: https://api.telegram.org
  4. Tamam'a tıklayın

Adım 4: Dosyaları Yükleyin

  1. TelegramBot.mqh dosyasını MQL5/Include/ dosyasına kopyalayın
  2. TelegramBot_Example.mq5 dosyasını MQL5/Experts/ dosyasına kopyalayın
  3. Her iki dosyayı da derleyin

Hızlı Başlangıç

#include <TelegramBot.mqh> CTelegramBot bot; int OnInit() {     // Botu başlat     if(!bot.Initialize("YOUR_TOKEN", "YOUR_CHAT_ID"))     {         Print("Failed to initialize bot");         return INIT_FAILED;     }          // Test mesajı gönder     bot.SendMessage("Bot connected successfully!");          // Grafik ekran görüntüsü gönder     bot.SendChartScreenshot("Current market situation");          return INIT_SUCCEEDED; }

API Referansı

Temel Mesajlaşma

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

Ticaret Sinyalleri

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

Medya

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

Raporlar

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

Risk Yönetimi

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

Örnek Uzman Danışman

Paket, gösteren tamamen işlevsel bir örnek EA içerir:

  • Bildirimlerle pozisyon izleme
  • Ticari etkinliklerde otomatik ekran görüntüleri
  • Periyodik hesap durumu güncellemeleri
  • Risk yönetimi uyarıları
  • Günlük raporlar
  • Demo ticaret sinyalleri

Mesaj Biçimlendirme

HTML Formatı (Önerilen)

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

Markdown Biçimi

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

Performans

  • Mesaj Hızı: Dakikada 30 mesaja kadar
  • Dosya Boyutu Sınırı: Dosya başına 50MB
  • Mesaj Uzunluğu: 4096 karakter
  • Başlık Uzunluğu: 1024 karakter
  • Kuyruk Boyutu: 100 mesaj
  • Ortalama Tepki Süresi: 50-200ms

Hata İşleme

Kütüphane kapsamlı hata işleme içerir:

  • Bağlantı doğrulama
  • Hız sınırlama koruması
  • Arıza durumunda otomatik yeniden deneme
  • Başarısız mesajlar için kuyruk sistemi
  • Detaylı hata kaydı

Destek

  • Dokümantasyon: Kaynakta bulunan tam API belgeleri
  • Örnek EA: Tüm özellikleri içeren çalışma örneği
  • Hata Ayıklama Modu: Sorun giderme için yerleşik hata ayıklama

Sürüm Geçmişi

Sürüm 1.0.0 (2024)

  • İlk sürüm
  • Tam Telegram Bot API entegrasyonu
  • Çoklu kanal desteği
  • Kuyruk sistemi
  • Şablon motoru
  • Risk yönetimi uyarıları

Lisans

Bu kütüphane MetaTrader 5'te kullanım için olduğu gibi sağlanmıştır. Kişisel ve ticari kullanım için ücretsiz.

Yazar

Financial Blueprint
Profesyonel Ticaret Çözümleri

Sorumluluk Reddi

Bu yazılım herhangi bir garanti olmaksızın "olduğu gibi" sağlanmaktadır. Alım satım önemli ölçüde kayıp riski içerir ve tüm yatırımcılar için uygun değildir. Geçmiş performans gelecekteki sonuçların göstergesi değildir.


Bu kütüphaneyi faydalı bulursanız, lütfen MQL5 CodeBase'de değerlendirin!

Detaylı Kurulum Talimatları

Telegram Botu Oluşturma

  1. BotFather'ı bulun

    • Telegram'ı Aç
    • BotFather için ara
    • BAŞLAT'a basın
  2. Yeni Bot Oluştur

    • Newbot komutunu gönder
    • Bot adını girin (örneğin, "Ticaret Botum")
    • Bot kullanıcı adını girin (örneğin, my_trading_bot)
    • Belirteci şu şekilde kaydedin: 123456789:ABCdefGHIjklMNOpqrsTUVwxyz
  3. Botu Yapılandır

    • /setprivacy gönderin ve DEVRE DIŞI bırak seçeneğini seçin (grup işlevselliği için)
    • /setjoingroups öğesini gönderin ve ENABLE (gruplara eklemek için) öğesini seçin

Sohbet Kimliği Alma

Özel Mesajlar için:

  1. Botunuzla sohbet başlatın
  2. Herhangi bir mesaj gönderin
  3. Tarayıcıda açın: https://api.telegram.org/bot<TOKEN>/getUpdates
  4. "Sohbet":{"id":123456789} bulun - bu sizin Sohbet Kimliğiniz

Gruplar için:

  1. Gruba bot ekleme
  2. Grup içinde mesaj gönder
  3. Tarayıcıda açın: https://api.telegram.org/bot<TOKEN>/getUpdates
  4. "Sohbet":{"id":-123456789} bulun - gruplar için negatif sayı

Kanallar için:

  1. Botu kanal yöneticisi olarak ekleme
  2. Kanala mesaj gönder
  3. Veya Sohbet Kimliği olarak @channelname kullanın

Sık Karşılaşılan Sorunların Giderilmesi

WebRequest Hatası:

Çözüm: 1. Araçlar → Seçenekler → Uzman Danışmanlar 2. Listelenen URL için WebRequest'e İzin Ver 3. Ekle: https://api.telegram.org 4. MT5'i yeniden başlatın

Bot Yanıt Vermiyor:

Kontrol edin: 1. Token doğruluğu 2. Sohbet Kimliği doğruluğu 3. İnternet bağlantısı 4. WebRequest ayarları

Mesajlar Teslim Edilmedi:

Olası nedenler: 1. API sınırı aşıldı (30 mesaj/dakika) 2. Mesajda geçersiz HTML biçimi 3. Mesaj çok uzun (>96 karakter) Mesaj çok uzun (>4096 karakter)

Kullanım Örnekleri

Satın Alma Sinyali Gönder

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

Ekran Görüntüsünü Ek Açıklamayla Gönderme

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

Hesap Durumunu Gönder

bot.SendAccountStatus(); // Otomatik olarak bakiye, öz sermaye, marj vb. gönderir.

Günlük Raporları Kurun

// EA'nın OnTimer() işlevinde if(TimeHour(TimeCurrent()) == 23 && TimeMinute(TimeCurrent()) == 0) {     bot.SendDailyReport(); }

Düşüş Uyarısı

double drawdown = CalculateDrawdown(); // Hesaplama işleviniz if(drawdown > 20.0) // %20'den fazla düşüş {     bot.SendRiskAlert(drawdown); }

Mesaj Yapısı

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


MetaQuotes Ltd tarafından İngilizceden çevrilmiştir.
Orijinal kod: https://www.mql5.com/en/code/63587