Fehlerbehebung
Geordnet nach dem, was Sie sehen. Die Ursache kennen Sie noch nicht – deshalb sind Sie hier.
Hat die Bridge einen Block ausgegeben, der mit Reference: something endet, springen Sie direkt zu Nach Referenzcode. Dieser Code benennt die Ursache genau.
Der Broker-Tab zeigt weiterhin „Waiting for handshake“
Die Bridge hat uns nie erreicht. Gehen Sie in dieser Reihenfolge vor:
- Läuft die Bridge tatsächlich? Nicht nur heruntergeladen, sondern gestartet. Unter Windows bedeutet das, dass ein Fenster geöffnet ist; unter Linux meldet
systemctl status ordertune-bridgeden Zustandactive (running). - Hat sie einen Fehlerblock ausgegeben? Falls ja, nehmen Sie den Referenzcode unten zur Hand.
- Läuft die Trader Workstation und sind Sie angemeldet? Die Bridge verbindet sich zuerst mit ihr und erst danach mit uns.
- Hat der Rechner ausgehenden Internetzugang? Die Bridge baut ausschließlich ausgehende Verbindungen auf; ein eingehender Port oder eine Firewall-Regel ist nicht nötig. Ein Proxy, der HTTPS-Verbindungen aufbricht, kann sie dennoch stören.
Alles ist grün, aber Orders schlagen fehl
Fast immer liegt es an Read-Only API in der Trader Workstation. Diese Einstellung lässt die Verbindung und die Heartbeats zu und blockiert nur das Übermitteln – genau deshalb bleibt sie bis zu Ihrer ersten echten Order unbemerkt.
Schalten Sie sie unter API → Settings aus, klicken Sie auf Apply und starten Sie die Trader Workstation neu. Siehe TWS vorbereiten.
Das Cockpit meldet dies beim Start unter order access.
Orders bleiben liegen, und nichts geschieht
Bypass Order Precautions for API Orders ist ausgeschaltet. Die Trader Workstation hält jede Order an einem Bestätigungsdialog fest, und wenn Sie nicht vor diesem Rechner sitzen, wird ihn niemand je anklicken.
Schalten Sie die Einstellung unter API → Precautions ein. Siehe TWS vorbereiten.
Gestern hat es funktioniert, heute Morgen geht nichts mehr
Interactive Brokers startet die Trader Workstation einmal täglich zwangsweise neu oder meldet sie ab, zu einer Uhrzeit, die Sie festlegen. Eine Bridge ohne angemeldete Trader Workstation steht zur US-Markteröffnung still.
Stellen Sie Lock and Exit → Auto restart ein – nicht Auto logoff. Einmal pro Woche verlangt Interactive Brokers außerdem eine vollständige Anmeldung, und die nehmen Sie selbst vor. Siehe TWS vorbereiten.
Das Badge zeigt „Not reporting“
Die Verbindung ist autorisiert, aber seit mehr als 90 Sekunden ist kein Heartbeat eingegangen. In diesem Zustand kann keine Order übermittelt werden. Entweder wurde die Bridge beendet, der Rechner ist in den Ruhezustand gegangen, oder er hat seine Netzwerkverbindung verloren.
Prüfen Sie zuerst den Rechner, danach das Log.
Das Badge zeigt „Never seen“
Ein Token wurde ausgestellt, aber die Bridge hat sich noch kein einziges Mal gemeldet. Das ist ein Problem beim ersten Start, keine abgebrochene Verbindung – beginnen Sie bei Starten und koppeln.
Ich habe meine bridge.env verloren
Starten Sie die Bridge und koppeln Sie sie erneut. Sie schreibt selbst eine neue
bridge.env, und der alte Token verliert im selben Moment seine Gültigkeit. Es
gibt nichts herunterzuladen und nichts zu kopieren.
Ich habe die Bridge getrennt, und jetzt startet sie nicht mehr
Das ist dieselbe Situation wie oben: Die Datei neben dem Programm ist noch vorhanden, sie ist nur nichts mehr wert. Starten Sie die Bridge – sie erkennt das, öffnet ihr Fenster und bittet Sie, sie erneut zu koppeln.
Bis einschließlich Version 0.23.0 gab sie stattdessen eine Fehlermeldung aus und beendete sich. Wenn Sie das sehen, aktualisieren Sie die Bridge.
Der Kopplungscode ist abgelaufen
Codes sind zehn Minuten gültig, und das Fenster zählt die Zeit herunter. Klicken Sie erneut auf Get a pairing code – Codes sind nur einmal verwendbar, und ein neuer kostet nichts.
Ordertune zeigt einen anderen Rechner als mein Bridge-Fenster
Dann ist der eingegebene Code nicht derjenige, den Ihre Bridge anzeigt. Brechen Sie an dieser Stelle ab.
Der Rechnername und der sechzehnstellige Hardware-Fingerabdruck werden genau für diesen Abgleich auf beiden Seiten angezeigt. Weichen sie voneinander ab, sind Sie im Begriff, einem Rechner, der nicht Ihnen gehört, die Berechtigung zu erteilen, Orders in Ihrem Depot zu platzieren. Klicken Sie auf Cancel, kehren Sie zu Ihrem eigenen Bridge-Fenster zurück und verwenden Sie den Code, den es anzeigt.
Geben Sie ausschließlich einen Code ein, den Ihr eigenes Bridge-Fenster in diesem Moment anzeigt. Niemand bei Ordertune wird Ihnen jemals einen Code zusenden.
Ich habe die Bridge auf einen anderen Rechner umgezogen
Starten Sie sie dort und koppeln Sie sie. Die Kopplung stellt den Token neu aus und bindet ihn in einem Schritt an die neue Hardware; vorher muss nichts zurückgesetzt werden.
Der alte Rechner funktioniert ab diesem Moment nicht mehr – eine Verbindung gehört immer nur zu einem Rechner.
Nur unter Linux
Fünf Dinge, die nur auf einem Server schiefgehen können, und vier davon sehen nach Erfolg aus, während sie falsch sind.
Der Dienst startet nicht
journalctl -u ordertune-bridge -n 50 --no-pagerDie Bridge schreibt dort denselben Fehlerblock hinein, den sie unter Windows auf dem Bildschirm anzeigen würde, einschließlich Referenzcode. Schlagen Sie den Code in der Tabelle unten nach.
Die Trader Workstation läuft nicht, und die Meldung spricht von einem Port
Die Trader Workstation ist eine Java-Desktop-Anwendung und startet nicht ohne Display. Auf einem Server ohne Display installieren Sie Xvfb oder eine Desktop-Umgebung – siehe Schritt 1.
Die Bridge meldet dies als Verbindungsfehler, denn aus ihrer Sicht ist das alles, was sie erkennen kann: An dem Port lauscht nichts. Die eigentliche Ursache liegt eine Ebene weiter außen.
Die Kopplung hat Erfolg gemeldet, und der Dienst startet mit env_missing
Die bridge.env wurde an einem anderen Ort als im Programmordner abgelegt. Die
Bridge sucht sie im Arbeitsverzeichnis, deshalb muss die Kopplung aus
/opt/ordertune-bridge heraus ausgeführt werden:
cd /opt/ordertune-bridge && sudo runuser -u ordertune-bridge -- \
env HOME=/home/ordertune-bridge ./ordertune-bridge-ibkr --pairSuchen Sie in dem Verzeichnis, aus dem Sie den Befehl ausgeführt haben, nach einer
verirrten bridge.env, und löschen Sie sie, sobald die richtige an ihrem Platz
ist – eine zweite Kopie mit ungültigem Token ist genau die Art von Detail, die
die nächste Person verwirrt.
Das Log meldet, dass der Datenordner nicht beschreibbar ist
Der Dienstbenutzer hat kein Home-Verzeichnis, oder es gehört einem anderen Benutzer. Das ist wichtiger, als es klingt:
sudo install -d -o ordertune-bridge -g ordertune-bridge \
/home/ordertune-bridge/.local/share/ordertune-bridge
sudo systemctl restart ordertune-bridgeDieser Ordner enthält die Aufzeichnung darüber, welche Orders bereits übermittelt wurden. Ohne ihn vergisst die Bridge über einen Neustart hinweg, was sie schon gesendet hat, und dieselbe Order kann zweimal übermittelt werden. Der Handel wird nicht angehalten, solange dieser Fehler besteht – genau deshalb weist die Bridge beim Start so deutlich darauf hin.
unreadable beim Ordner für die Trade-Reports
Die Trader Workstation und die Bridge laufen unter verschiedenen Benutzern. Beide
müssen als ordertune-bridge laufen; siehe TWS vorbereiten
und die Prüfung unter
Verbindung bestätigen.
Nach Referenzcode
Der Code steht in der letzten Zeile des Blocks, den die Bridge ausgibt, wenn sie nicht starten kann.
| Referenz | Bedeutung | Vorgehen |
|---|---|---|
env_missing | Die bridge.env liegt nicht neben dem Programm. | Legen Sie sie dort ab, oder fügen Sie eine Kopie in das Einrichtungsfenster ein. Siehe Starten und koppeln. |
env_invalid | Die Datei ist vorhanden, aber ein Wert fehlt oder ist nicht lesbar. | Laden Sie eine frische, vorausgefüllte Datei herunter, statt sie von Hand zu bearbeiten. |
tws_unreachable | Unter dieser Adresse und diesem Port antwortet überhaupt nichts. | Die Trader Workstation läuft nicht, oder Sie sind nicht angemeldet. |
tws_wrong_port | Auf dem konfigurierten Port antwortet nichts, wohl aber auf einem anderen IBKR-Port. | Der Block nennt, auf welchem. Tragen Sie diese Nummer in IBKR_TWS_PORT ein. Dateien, die vor Bridge 0.26.0 erzeugt wurden, nennen dieselbe Einstellung IBKR_GATEWAY_PORT; beide Schreibweisen funktionieren weiterhin, in einer bestehenden Datei muss also nichts umbenannt werden. |
tws_api_refused | Etwas antwortet, aber die API-Verbindung wurde abgelehnt. | Entweder ist Enable ActiveX and Socket Clients ausgeschaltet, oder IBKR_CLIENT_ID wird bereits von einer anderen Verbindung zur selben Trader Workstation verwendet. Ändern Sie den Wert auf eine beliebige andere ganze Zahl. |
token_invalid | Ordertune hat den Token abgelehnt, oder es wurde keiner gesendet. | Erzeugen Sie einen neuen Token und laden Sie die neue bridge.env herunter. |
connection_revoked | Diese Verbindung wurde in Ordertune getrennt. | Richten Sie die Bridge erneut ein und ersetzen Sie die bridge.env. |
ip_mismatch | Die Bridge läuft aus einem anderen Netzwerk als dem, aus dem sie sich registriert hat. | Die Verbindung ist an die Quell-IP ihres ersten Handshakes gebunden. Betreiben Sie sie mit einer festen ausgehenden IP, oder stellen Sie einen neuen Token aus, um das aktuelle Netzwerk zu registrieren. |
fingerprint_mismatch | Die Bridge läuft auf anderer Hardware als der, auf der sie sich registriert hat. | Stellen Sie einen neuen Token aus. Damit wird der gespeicherte Fingerabdruck gelöscht, und der nächste Handshake registriert diesen Rechner. |
fingerprint_already_set | Dieser Token gehört bereits zu einem anderen Rechner. | Verwenden Sie einen Token pro Rechner. Stellen Sie einen separaten aus, oder verlegen Sie die Bridge zurück. |
platform_unreachable | Ordertune war überhaupt nicht erreichbar. | Prüfen Sie den ausgehenden Internetzugang und ob ein Proxy oder eine Firewall ausgehendes HTTPS blockiert. |
rate_limited | Zu viele Anfragen in kurzer Zeit. | Warten Sie und starten Sie dann neu. Wiederholt sich das, läuft vermutlich mehr als eine Bridge mit demselben Token. |
wire_contract_mismatch | Diese Bridge-Version und der Ordertune-Server sind sich über das Nachrichtenformat uneinig. | Ein Neustart hilft nicht. Die Bridge ist älter als der Vertrag, den der Server erwartet – aktualisieren Sie sie. |
handshake_failed | Ordertune hat den Handshake aus einem anderen Grund abgelehnt. | Prüfen Sie den Broker-Tab. Wirkt die Verbindung dort intakt, senden Sie uns die Referenz und den Zeitstempel. |
Warnungen zum Archiv der Trade-Reports
Diese Warnungen halten die Bridge nicht an. Freigegebene Orders werden weiterhin übermittelt und Ausführungen weiterhin verbucht, während eine davon angezeigt wird. Die meisten besagen, dass das Sicherheitsnetz fehlt: Erfolgt eine Ausführung, während die Bridge ausgeschaltet ist, lässt sie sich danach nicht mehr nachholen.
Eine davon ist die Ausnahme, und es ist diejenige, der Sie zuerst begegnen werden: exists and is empty direkt nach der Einrichtung bedeutet, dass noch nichts falsch ist – es gab schlicht noch keinen Trade, über den berichtet werden könnte. Die übrigen stammen aus Schritt 1, Export Reports, und jede benennt genau das eine, was nicht stimmt.
| Die Meldung lautet | Bedeutung | Vorgehen |
|---|---|---|
TWS_EXPORT_DIR is not set | Die Bridge weiß nicht, welchen Ordner sie lesen soll. | Ergänzen Sie TWS_EXPORT_DIR in der bridge.env, oder übernehmen Sie den Standardwert und legen Sie diesen Ordner an. |
… does not exist | Der Pfad ist gesetzt, aber einen solchen Ordner gibt es nicht. | Entweder ist das Exportverzeichnis in der Trader Workstation oder der Pfad in der bridge.env falsch. Beide müssen auf denselben Ordner zeigen. |
cannot read … | Der Ordner existiert, aber die Bridge hat keinen Zugriff darauf. | Korrigieren Sie die Leserechte. Das tritt auch auf, wenn die Trader Workstation unter einem Benutzer läuft und die Bridge unter einem anderen. |
… exists and is empty | Der Ordner ist vorhanden, enthält aber keinen Report. | Direkt nach der Einrichtung ist das zu erwarten – die Trader Workstation exportiert Trades und schreibt daher nichts, bevor etwas ausgeführt wurde. Wenn Sie heute gehandelt haben, schreibt die Trader Workstation an einen anderen Ort: Vergleichen Sie die beiden Pfade Zeichen für Zeichen. |
files carry no date in their name | Die Trader Workstation überschreibt immer wieder eine einzige Datei. | Im Feld Export filename steht ein Name. Leeren Sie es, damit jeder Tag eine eigene, datierte Datei erhält. |
the newest file is from … | Das Archiv wächst nicht mehr. | Entweder lief die Trader Workstation nicht, oder der periodische Export wurde wieder ausgeschaltet. |
Die letzten beiden sind die kostspieligen, weil alles in Ordnung aussieht. Es gibt einen Ordner, es gibt Dateien, die Bridge meldet nicht, dass sie sie nicht lesen kann – und doch existiert nur ein einziger Tag, oder der jüngste Tag liegt eine Woche zurück. Beides bedeutet, dass sich eine Ausführung von jedem anderen Tag nicht nachholen lässt.
Das Log lesen
Es wird täglich rotiert und 30 Tage lang aufbewahrt. Es liegt nicht neben dem Programm – ab Version 0.23.0 befindet es sich bei den übrigen Arbeitsdateien, wo es beim Aufräumen nicht versehentlich mit entfernt wird.
%LOCALAPPDATA%\Ordertune\Bridge\logs\bridge.logDas Cockpit zeigt die letzten 200 Zeilen unter Details an, zusammen mit einer Schaltfläche Copy diagnostics, die Version, Endpunkt, Client-ID, Log-Pfad und den letzten Heartbeat zusammenstellt. Ihr Zugriffstoken ist nicht enthalten – das ist Absicht, denn als Nächstes wird ein solcher Diagnoseblock üblicherweise in eine E-Mail eingefügt.
Wenn Sie einem Verbindungsproblem nachgehen, setzen Sie LOG_LEVEL=DEBUG in der bridge.env und starten Sie neu. Stellen Sie den Wert danach wieder auf INFO – DEBUG schreibt sehr viel.
Weiterhin keine Lösung
Senden Sie uns drei Dinge: den Referenzcode, den Zeitstempel und den Diagnoseblock aus dem Cockpit. Senden Sie uns nicht Ihre bridge.env.