MagicTradeBot & Einhaltung der Wechselkursgrenzen

MagicTradeBot wurde entwickelt, um den automatisierten 24/7-Handel mit Hunderten von Kryptowährungspaaren zu unterstützen. Die meisten zentralisierten Börsen (CEXs) setzen jedoch strenge API-Ratenlimits durch, deren Überschreitung zu temporären Sperren, IP-Blockierungen oder Leistungsproblemen führen kann.


⚠️ Die Herausforderung mit Ratenlimits

Jede Börse erzwingt spezifische Grenzwerte für Anfragen pro Sekunde. Das kontinuierliche Scannen von Hunderten von Handelspaaren in Echtzeit über mehrere Börsen hinweg kann diese Grenzwerte leicht überschreiten.

Um API-Sperren oder Leistungsprobleme zu vermeiden, implementiert MagicTradeBot fortschrittliche Ratenlimit-Kontrollen, um automatisch die Vorgaben der Börsen einzuhalten.


🛠️ Verwaltung der Ratenlimits durch MagicTradeBot

  • ⏱️ Verwendet API-Zeitplanung mit Ratenbegrenzung, die die Anforderungsgeschwindigkeit dynamisch anpasst
  • 📊 Überwacht Antwort-Header (z. B. X-RateLimit-Remaining), um zu erkennen, wann Limits erreicht werden
  • 🧠 Führt automatisch Verzögerungen ein, wenn die API-Nutzung die Grenzwerte erreicht
  • 🔁 Teilt große Listen von Krypto-Paaren in kleinere Abschnitte zur gestaffelten Abfrage auf
  • 🕐 Verwendet die Einstellung refreshRate (z. B. alle 5 Sekunden), um jeweils einen Abschnitt zu scannen

✅ Empfohlene Bereitstellungsstrategie

Befolgen Sie diese Best Practices, um eine optimale Leistung und API-Konformität sicherzustellen:

1️⃣ Symbole auf mehrere Konten aufteilen

  • Erstellen Sie separate Börsenkonten oder Unterkonten (z. B. Binance Hauptkonto, Bybit Sub1, Bitget Spot, OKX Futures)
  • Weisen Sie jedem Konto unterschiedliche Gruppen von Handelspaaren zu
  • Dies verringert die Anfragelast auf einem einzigen API-Schlüssel

2️⃣ Mehrere Bot-Instanzen ausführen

  • Starten Sie separate MagicTradeBot-Instanzen für jede Börse bzw. jedes Konto
  • Beispiel: bot-binance-main, bot-bybit-sub1, bot-okx-spot
  • Jede Instanz verwaltet nur eine begrenzte Anzahl an Paaren – das verbessert Zuverlässigkeit und Reaktionszeit

3️⃣ Aktualisierungsrate intelligent nutzen

  • Stellen Sie den refreshRate in config.yaml sinnvoll ein (z. B. 5 Sekunden)
  • Vermeiden Sie sehr kurze Intervalle, wenn Sie Hunderte von Paaren mit einer einzigen Instanz überwachen

📦 Beispielkonfiguration: 500 Krypto-Paare

Angenommen, Sie möchten 500 Krypto-Paare scannen und handeln. Sie könnten die Last folgendermaßen aufteilen:

Bot-Instanz Börsenkonto Krypto-Paare
bot-binance-main Binance Hauptkonto 50 Paare
bot-bybit-sub1 Bybit Unterkonto 1 50 Paare
bot-okx-spot OKX Spot-Konto 50 Paare
bot-bitget-main Bitget Hauptkonto 50 Paare
... (wiederholen) Andere Börse / anderes Konto jeweils 50 Paare

Dieser modulare Ansatz ermöglicht es jeder Bot-Instanz, weniger Anfragen zu bearbeiten, innerhalb der Ratenlimits zu bleiben und die Latenz zu reduzieren.


🧩 Fehlertoleranz

Durch die Aufteilung Ihrer Strategie auf mehrere Konten und Instanzen:

  • 🛑 Wenn eine Bot-Instanz ausfällt (z. B. durch einen Börsenausfall oder internen Fehler), arbeiten die anderen weiterhin unabhängig
  • ⚙️ Es wird einfacher, zu skalieren oder spezifische Engpässe zu isolieren
  • 📉 Minimiert das Risiko, komplett von einer Börsen-API ausgeschlossen zu werden, aufgrund von Übernutzung