Einrichtung der MagicTradeBot-Bot-Instanz und sichere Kommunikation

Die MagicTradeBot Bot-Instanz ist eine plattformübergreifende ausführbare Datei, die Windows, Linux und macOS unterstützt. Sie ist so konzipiert, dass sie eigenständig oder zusammen mit mehreren Instanzen läuft, wobei die Konfiguration über eine zentrale .yaml-Datei erfolgt.

Jede Bot-Instanz verbindet sich mit der MagicTradeBot Management App API zur Authentifizierung, zur Ausführung von Trades und zur Echtzeit-Marktanalyse. Dieses Dokument erklärt die Konfigurationsparameter und bewährte Methoden für eine sichere Kommunikation.


📄 YAML-Konfigurationsstruktur

Die Hauptkonfiguration jeder Bot-Instanz wird in einer config.yaml-Datei gespeichert. Nachfolgend ein Referenzbeispiel:

server:
  # Name
  botName: "Bybit_Mainnet_Trading_Bot"  # Eindeutiger Name für die Bot-Instanz

  # LIZENZSCHLÜSSEL
  licenseKey: "hRnWOLo91ESUiZ8SkN986w"  # Erforderlich zur Aktivierung und Validierung

  # DEMO-MODUS
  isDemo: true  # true = Simulationsmodus; false = Live-Handel

  # API-KONFIGURATION
  api: "https://localhost:7225/"  # URL der MagicTradeBot Management API

  # AUSFÜHRUNGSSTEUERUNG
  refreshRate: 5  # Markt-Scan-Intervall in Sekunden
  totalConcurrentTrades: 0  # Maximale gleichzeitige Trades (0 = unbegrenzt)

  # RISIKOMANAGEMENT (0 = deaktiviert)
  maxLoss: 0      # Bot stoppt bei kumulativem Verlust über diesem Wert
  maxProfit: 0    # Bot stoppt bei kumulativem Gewinn über diesem Wert

  # KONTOEINSTELLUNGEN
  exchangeId: 0   # Konto-ID (von Management App abgerufen)

  # VORLAGENEINSTELLUNGEN
  templateId: 0  # Strategievorlage (0 = Standard)

  # HANDELSSTRATEGIE
  strategy: 0      # Strategie-ID (siehe Liste unten)
  strategyMaxCount: 55  # Max. Fortschrittsstufen (0 = unbegrenzt)

  # STRATEGIEREFERENZ:
  # 0: Keine Strategie
  # 1: Martingale        2: Reverse Martingale
  # 3: Fibonacci         4: Fibonacci Reverse
  # 5: 3-2-6-3           6: 3-2-6-3 Reverse
  # 7: D'Alembert        8: D'Alembert Reverse

  timeZone: "UTC"  # Zeitzone für Planung und Handel

# SYSTEMEINSTELLUNGEN
debug: true  # Ausführliche Protokollierung aktivieren

🔐 Richtlinien für sichere Kommunikation

Da Bot-Instanzen mit der Management API interagieren, um Symbole abzurufen, Märkte zu scannen und Trades auszuführen, ist die Absicherung dieser Kommunikation entscheidend. Hier sind wichtige Maßnahmen:

1. HTTPS für API-Endpunkte verwenden

  • Stellen Sie sicher, dass das Feld api eine HTTPS-URL verwendet
  • Verwenden Sie gültige TLS-Zertifikate (z. B. von Let’s Encrypt)
  • Lehnen Sie unsichere HTTP-Verbindungen zur Management App ab

2. JWT-Authentifizierung erzwingen

  • Beim Start fordert die Bot-Instanz ein JWT-Token an, indem sie Anmeldedaten sendet
  • Nach Validierung sendet die Management App ein Token zurück, das bei allen folgenden Anfragen im Header Authorization verwendet wird
  • Token sollten kurzlebig sein und sicher im Speicher gehalten werden
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

3. Zugriff mit IP-Whitelist einschränken

  • Erlauben Sie API-Zugriff nur von bekannten IP-Adressen, auf denen Bots laufen
  • Richten Sie Firewall-Regeln ein, um unbefugten Zugriff zu blockieren

4. API- und Lizenzschlüssel schützen

  • Schreiben Sie keine Geheimnisse in Quellcode oder Protokolle
  • Lesen Sie Schlüssel aus Umgebungsvariablen oder verschlüsselten Secret-Managern
  • Drehen Sie Lizenzschlüssel und API-Zugänge regelmäßig

5. Jede Bot-Instanz isolieren

  • Vergeben Sie einen eindeutigen botName und führen Sie Instanzen in Containern oder isolierten Umgebungen aus
  • Beschränken Sie Berechtigungen je Instanz, wenn OS-ACLs verwendet werden

6. API-Nutzung überwachen und prüfen

  • Aktivieren Sie Audit-Logging in der Management App
  • Protokollieren Sie alle JWT-Authentifizierungsversuche und Zugriffsfehler
  • Integrieren Sie Warnmeldungen über Sentry, Pushover oder LogDNA zur Anomalieerkennung

✅ Empfehlungen

  • 📌 Verwenden Sie starke Passwörter und verschlüsselte Verbindungen zwischen allen Komponenten
  • 📌 Isolieren Sie Bot-Infrastruktur vom öffentlichen Netzwerk
  • 📌 Halten Sie Management- und Bot-Anwendungen aktuell
  • 📌 Planen Sie automatische Backups von Konfigurationen und Handelsverlauf

📎 Related Topics