Order-Gültigkeit: GTC vs GTD

Beim Senden einer Order (Vorschläge → Absenden) sehen Sie im Bestätigungsdialog den Abschnitt Gültigkeit mit zwei Optionen:

GTC — Standard (Default)

Was passiert: Die Order geht mit Time-in-Force GTC (Good-Till-Cancelled) an IBKR/Lynx. Sie bleibt am Broker offen und wird NICHT zum Tagesende automatisch storniert.

WheelTrading-Cleanup: Wenn die Order nach 3 NYSE-Handelstagen nicht gefüllt wurde, cancelt WheelTrading sie automatisch außerhalb der Handelszeit für Sie. Der Proposal geht dann in den Status discarded mit status_reason=auto_3day_no_fill+broker_cancel.

Vorteil: einfaches "fire and forget" — wenn Ihr Limit zu ambitioniert war, ist die Order nach spätestens 3 Handelstagen weg.

Nachteil: WheelTrading greift aktiv in Ihr Depot ein (siehe Hinweis unten).

GTD — Broker-Ablauf (Opt-in)

Was passiert: Die Order geht mit Time-in-Force GTD (Good-Till-Date) und einem festen Ablaufdatum an IBKR/Lynx. Der Broker beendet die Order am angegebenen Kalendertag um 16:00 ET (NYSE-Schluss). WheelTrading fasst diese Order NICHT an; wir syncen nur den finalen Status.

Wo einstellen: Im Send-Dialog Radio GTD wählen und dann:

  • in [ N ] Kalendertagen — Zahlenfeld, Default 3, Max 90
  • oder am [ DD.MM.YYYY ] — freier Datepicker

Das freie Datum hat Vorrang vor der Tage-Angabe (falls Sie beides setzen).

Wann sinnvoll?

  • Put-Ladder über mehrere Wochen — Sie wollen die Order länger

als 3 Tage offen halten, weil die Prämie sonst kaum realisierbar ist.

  • Vor einer Handels-Pause (Urlaub, Wochenende, Feiertag) — Sie

wollen sich darauf verlassen, dass die Order ohne Ihre Anwesenheit vom Broker sauber beendet wird, nicht von unserer Software.

  • BaFin-/Compliance-Sicht — Sie wollen jede softwareseitige

Order-Beendigung ausschließen.

Grenzen:

  • Minimum: morgen (heute geht nicht — würde beim Send bereits

abgelaufen sein).

  • Maximum: heute + 90 Kalendertage (IBKR-Limit für goodTilDate).
  • Nach dem Ablaufdatum sehen Sie die Order als expired im Tab

Geschlossen.

Manuelles Cancel bleibt jederzeit möglich — im Tab Offen auf X klicken, dann sendet WheelTrading einen expliziten Cancel-Request an IBKR. Das ist ein user-getriggerter Cancel und regulatorisch unbedenklich.

Warum das überhaupt zwei Optionen sind

Aus regulatorischer Sicht (BaFin, FMA, FINMA) kann ein automatischer, vom Nutzer nicht im Moment ausgelöster Cancel einer offenen Order als vermögensverwaltungsnahe Handlung ausgelegt werden. Der GTD-Pfad delegiert die Ordervernichtung an den Broker — das ist ein reiner Datenabgleich unsererseits, kein Eingriff.

Wenn Sie unsicher sind: für den Anfang GTC (Default) verwenden. Das Verhalten ist identisch zur klassischen Implementierung. GTD ist rein opt-in für die Fälle wo Sie es explizit wollen.

Was passiert bei Wunschpreis-Änderung

Wenn Sie im Tab Offen den Wunschpreis einer bereits gesendeten Order ändern (Replace), bleibt die ursprüngliche Gültigkeit erhalten:

  • Eine GTC-Order bleibt GTC (unser Cleanup zählt weiter).
  • Eine GTD-Order bleibt GTD mit dem gleichen Ablaufdatum.

Anzeige im Tab "Offen"

  • GTC-Zeile: Spalte Ablauf zeigt Auto-Cancel in Nd (rot ab

Tag 2, gelb ab Tag 1 vor Cancel).

  • GTD-Zeile: Spalte Ablauf zeigt einen kleinen GTD-Chip plus

das Broker-Ablaufdatum (Do 24.07. 22:00). Farbe neutral grün — hier greift unser Cleanup nicht.

Vollständige Reichweite unseres schreibenden Broker-Zugriffs

Folgende Tabelle listet alle schreibenden IBKR-/Lynx-Aufrufe, die WheelTrading gegenüber Ihrem Broker auslöst. Andere schreibende Zugriffe finden nicht statt – alles übrige ist reiner Lese-Zugriff (Kontostand, Positionen, Füllstand von Orders).

ZugriffEndpointAusgelöst durchFür welchen Nutzer?
Auto-Cancel nach 3 NYSE-HandelstagenDELETE /iserver/account/{acc}/order/{orderId}Cron order_sync_scheduler.discard_unfilled_after_3dAlle Nutzer mit GTC-Orders am Broker; kein Klick des Nutzers
Manueller Cancel (X-Button im Tab Offen)DELETE /iserver/account/{acc}/order/{orderId}Klick des NutzersAlle Nutzer
Wunschpreis-Änderung (Replace)POST /iserver/account/{acc}/order/{orderId}Klick des NutzersAlle Nutzer
Order-Platzierung (Send)POST /iserver/account/{acc}/ordersKlick des Nutzers im Send-Dialog mit `Übermittlungsmodus = bafin_compliant`Nicht für Endnutzer. Aktiv nur wenn ALLE drei Bedingungen gleichzeitig erfüllt sind (siehe unten).

Wichtig für Standard-Nutzer: Für Sie als regulären Endnutzer platziert WheelTrading keine Orders bei IBKR/Lynx. Ihre Orders geben Sie ausschließlich feldweise per Copy-Paste selbst im Broker-Ticket ein – also über Ihre eigene TWS-/Lynx+-Sitzung.

Wann ist der Server-Send (bafin_compliant) freigeschaltet?

Der Server-Send über das Client-Portal-Gateway (bafin_compliant) ist an drei kumulative Bedingungen gekoppelt – an eine Rolle, nicht an eine feste Nutzer-Nummer:

  1. `users.is_admin = TRUE` in der Datenbank (Admin-Rolle,

Betreiberkonto). Kein Endkundenkonto trägt dieses Flag.

  1. `users.easy_ibkr_send_enabled = TRUE` – persönlicher Opt-in-

Toggle, den jeder Admin für sich selbst über PUT /api/settings/easy-ibkr-send aktivieren muss. Default false. Der Toggle-Endpoint selbst prüft die Admin-Rolle (403 Admin only).

  1. Send-Dialog-Auswahl Übermittlungsmodus = bafin_compliant im

konkreten Send-Vorgang. Nicht-Admins bekommen hier 403 BAFIN_SEND_NOT_ALLOWED.

Zusätzlich (Defense-in-Depth): Wird easy_ibkr_send_enabled wieder auf false gesetzt, wird ein zuvor gewählter trade_submission_mode = bafin_compliant automatisch auf copy_paste zurückgestellt – es gibt keinen „vergessenen Server-Send aus einer alten Sitzung“.

BaFin-Einordnung

  • Cancel (Auto- und User-Cancel): rein technische Beendigung einer

bestehenden Order. Zielt nicht auf das Zustandekommen eines Geschäfts – kein Vermittlungstatbestand.

  • Replace (Limitänderung): Änderung eines Parameters an einer vom

Nutzer selbst platzierten Order, wieder auf Klick des Nutzers.

  • Send: aktive Platzierung. Für Endnutzer aus

regulatorischen Gründen gesperrt. Der Admin-Pfad existiert nur für Betreiber-Tests gegen ein eigenes IBKR-Konto und wird zahlenden Kunden nicht ausgeliefert.

Details zur allgemeinen Order-Übermittlung: siehe Order-Übermittlung.