Leistung

Optimierungstechniken

Die Bot-Architektur ist um leichtgewichtige Ausführung und minimale blockierende Operationen herum konzipiert. Die meisten kritischen Systeme arbeiten asynchron oder in isolierten Threads, um die Handelslogik auch unter hoher Last reaktionsfähig zu halten.

Die Infrastruktur trennt Verantwortlichkeiten in dedizierte Module:

  • Handelsengine
  • TCP-Kommunikationsebene
  • Telegram-Integration
  • Persistenzschicht
  • Protokollierungssystem
  • Hintergrundarbeiter

Dies verhindert, dass langsame Operationen die Orderausführung oder Marktanalyse blockieren.

Zum Beispiel wird die Persistenz über ein asynchrones warteschlangenbasiertes System abgewickelt. Zustandsaktualisierungen werden in einen Hintergrundarbeiter geschoben, anstatt während Handelsoperationen direkt auf die Festplatte zu schreiben. Dies reduziert den Ausführungs-Overhead während des aktiven Handels erheblich.

Das Protokollierungssystem ist ebenfalls für die Produktionsnutzung optimiert:

  • Separate Konsolen- und Dateihandler
  • Rotierende Protokolldateien
  • Unabhängige TCP-Protokollweiterleitung
  • Konfigurierbare Protokollstufen

Der Bot vermeidet übermäßige Synchronisationspunkte und verwendet leichtgewichtiges Threading nur dort, wo es notwendig ist. Hintergrundarbeiter laufen als Daemon-Threads, sodass die Kernstrategieschleife auf die Marktausführung konzentriert bleiben kann.

Weitere Optimierungstechniken, die im gesamten Projekt verwendet werden, umfassen:

  • Warteschlangendeduplizierung für Persistenzspeicherungen
  • Atomarer Dateiersatz anstelle vollständiger Neuschreibungen
  • Wiederverwendbare Logger-Instanzen
  • Persistente TCP-Verbindungen
  • Explizite Modulimporte mit kontrolliertem PYTHONPATH
  • Unabhängig neustartbare Dienste
  • Minimale blockierende Schlafintervalle

Die Architektur ist bewusst modular, so dass Nutzer die Strategielogik ersetzen können, ohne die Infrastrukturebene neu aufbauen zu müssen.

Performance Intro

Reduzierung der API-Nutzung

Effiziente API-Nutzung ist für jedes ernsthafte Handelssystem entscheidend.

Die Plattform ist darauf ausgelegt, unnötige Exchange-Anfragen zu reduzieren und gleichzeitig eine schnelle Reaktionsgeschwindigkeit beizubehalten.

Mehrere Infrastrukturentscheidungen helfen, die API-Last zu minimieren:

Intelligente Zustandspersistenz

Anstatt nach jedem Neustart ständig Daten von der Exchange neu abzurufen, speichert der Bot den internen Handelszustand lokal über die Persistenzschicht.

Dies ermöglicht:

  • Positionswiederherstellung
  • Orderverfolgung
  • Strategiefortsetzung nach Neustart
  • Reduzierte Synchronisationsanfragen

Der Bot muss nicht jedes Mal beim Start den vollständigen Zustand von der Exchange neu aufbauen.

Internes Befehlsrouting

Das Telegram-System kommuniziert über eine lokale TCP-Ebene, anstatt externe Dienste für den Bot-Zustand abzufragen.

Befehle wie:

  • starttrading
  • stoptrading
  • buy
  • sell
  • getstatus

werden intern zwischen Modulen mit nahezu null Overhead geroutet.

Dies vermeidet unnötige externe API-Kommunikation und hält die Infrastruktur leichtgewichtig.

Kontrollierte Protokollierungsstufen

Die Protokollierungsausführlichkeit kann unabhängig konfiguriert werden für:

  • Konsolenausgabe
  • Dateiprotokollierung
  • Allgemeine Logger-Stufe

Dies verhindert übermäßige Debug-Operationen in Produktionsumgebungen.

Starkes Debug-Logging kann die Leistung in hochfrequenten Systemen erheblich reduzieren, daher ist konfigurierbare Protokollfilterung wichtig.

Lokale Wiederherstellungslogik

Absturzwiederherstellungs- und automatische Neustartsysteme helfen, wiederholte Start-Synchronisationsanfragen zu reduzieren.

Anstatt die gesamte Laufzeitumgebung nach Fehlern manuell neu aufzubauen, stellt der Bot schnell mit persistentem Zustand und Watchdog-Ausführungsschleifen wieder her.


Niedriglatenz-Ausführung

Niedriglatenz-Ausführung wird durch Infrastruktureinfachheit und Prozessisolierung erreicht.

Das Projekt vermeidet unnötige Frameworks und schwere Orchestrierungsschichten. Das Handelssystem läuft als direkter Python-Prozess mit minimaler Middleware zwischen Strategielogik und Ausführung.

Wichtige latenzorientierte Designentscheidungen umfassen:

Dedizierter Handelsprozess

Der Trading Bot läuft unabhängig von der Telegram-Oberfläche.

Dies bedeutet:

  • Telegram-Traffic kann die Handelslogik nicht einfrieren
  • Nachrichtenverzögerungen beeinflussen die Ausführung nicht
  • Externe Benachrichtigungen bleiben isoliert

Selbst wenn Telegram nicht verfügbar ist, arbeitet die Handelsengine weiter.

Persistente TCP-Kommunikation

Die Kommunikation zwischen Modulen verwendet eine persistente TCP-Ebene anstatt temporäre Prozesse zu erzeugen oder langsame IPC-Mechanismen zu verwenden.

Dies bietet:

  • Schnelle Befehlszustellung
  • Leichtgewichtiges Nachrichtenrouting
  • Echtzeit-Protokollströme
  • Kommunikation mit minimalem Overhead

Protokolle der Handelsengine werden über die TCP-Pipeline direkt an den Telegram-Bot weitergeleitet, was eine nahezu Echtzeit-Überwachung ohne Blockierung der Ausführung ermöglicht.

Hintergrund-Thread-Architektur

Mehrere Operationen laufen unabhängig von der Kernstrategieschleife:

  • Persistenzspeicherungen
  • TCP-Kommunikation
  • Telegram-Befehlsverarbeitung
  • Protokollweiterleitung
  • Wiederherstellungs-Worker

Dies verhindert, dass langsame E/A-Operationen die Handelsausführung unterbrechen.

Automatische Neustartinfrastruktur

Die

Dies minimiert Ausfallzeiten und hält die Wiederherstellungslatenz extrem niedrig.

Anstatt manuelles Eingreifen zu erfordern, stellt die Infrastruktur die Dienste innerhalb von Sekunden automatisch wieder her.

Minimaler Laufzeit-Stack

Das System vermeidet bewusst:

  • Schwere Web-Frameworks
  • Container-Orchestrierungs-Overhead
  • Datenbankserver
  • Komplexe Nachrichtenbroker
  • Große Abhängigkeitsketten

Das Ergebnis ist eine leichtgewichtige Ausführungsumgebung, die sich vollständig auf die Handelsleistung und Betriebsstabilität konzentriert.

Die Infrastruktur fungiert als Hochgeschwindigkeitsgrundlage, auf der Nutzer ihre eigenen Handelsalgorithmen implementieren können, während professionelle Persistenz-, Protokollierungs-, Überwachungs-, Neustartwiederherstellungs- und Kommunikationssysteme bereits vollständig integriert sind.