In einem Java-Client können Fehler 507 oder eine Meldung über das Stream-Ende darauf hinweisen, dass die Socket-Verbindung abgebrochen ist. Prüfen Sie, ob TWS geschlossen, neu gestartet wurde oder einen konkurrierenden Client abgelehnt hat. Stellen Sie den Zustand wieder her, bevor Sie Geschäftsaktionen wiederholen.
Hinweise zur Software zu Bildungszwecken. Der Handel ist mit Risiken verbunden. Finanzielle Hinweise und Informationshinweise lesen.
Schritt für Schritt
- 1 Speichern Sie zuerst die vollständige App-Meldung. Um ein aufgezeichnetes TWS-API-Log zu prüfen, öffnen Sie Help → Troubleshooting → Diagnostics → API Logs. Wählen Sie das Datum und dann View Logs. Ist die Liste leer, aktivieren Sie das API-Logging vor dem nächsten Ereignis.
- 2 Vergleichen Sie den Zeitpunkt des Socket-Fehlers mit Neustarts und Beendigungen von TWS.
- 3 Öffnen Sie Help → Data Connections und prüfen Sie in der Liste API Connections, ob ein anderer Client dieselbe ID verwendet. Vergleichen Sie dies mit dem App-Log; eine leere Liste erklärt keine frühere Trennung.
- 4 Bringen Sie TWS bei Bedarf wieder in einen vollständig angemeldeten Zustand.
- 5 Verbinden Sie die vorgesehene App einmal erneut und warten Sie die Kontoinitialisierung ab.
- 6 Vergleichen Sie offene Orders, Ausführungen und Positionen, bevor Sie neue Signale zulassen.
Ein praktisches Beispiel
Angenommen, TWS startet neu, während eine Java-App noch von ihrem Socket liest. Die App sieht möglicherweise das Ende des Streams und meldet 507. Das sagt Ihnen nicht, ob die letzte Handelsanfrage den Broker vor dem Abbruch erreicht hat. Stellen Sie die Verbindung wieder her und vergleichen Sie dann Orders und Ausführungen mit dem letzten Alert. Die Verbindung zu reparieren und zu entscheiden, ob erneut gesendet wird, sind zwei getrennte Aufgaben.
Bildschirmreferenz




Fehler, den Sie vermeiden sollten
Häufige Fragen
Ist das in jeder Programmiersprache gleich?
Der gemeldete Code oder die Ausnahme kann sich zwischen API-Implementierungen unterscheiden.
Kann ich einfach den letzten Trade erneut senden?
Bestätigen Sie zuerst, ob dieser Trade vor der Trennung angenommen wurde.