Tradovate API

Tradovate API: isAutomated muss für Bots auf true stehen

Lassen Sie isAutomated auf seinem Standardwert false, wird jede algorithmische Order, die Sie senden, stillschweigend gegenüber der CME als menschlicher Klick fehlgekennzeichnet. Hier erfahren Sie, was das Flag bewirkt, warum es existiert und wie Sie es korrekt setzen.

Geprüft vom PickMyTrade Trading Systems Team Zuletzt aktualisiert
· 7 Minuten Lesezeit
Tradovate-JSON-Anfragetext für placeOrder im API Explorer, bei dem das Feld isAutomated fehlt und standardmäßig auf false gesetzt ist

Wenn Sie Orders von einem Bot, einer Webhook-Bridge oder einem Skript an Tradovate senden, entscheidet ein kleines Feld darüber, ob die Börse Ihre Ausführung als sauberen automatisierten Auftrag oder als Verstoß gegen die Audit-Trail-Vorschriften einstuft: isAutomated. Lassen Sie es bei seinem Standardwert false, wird jede algorithmische Order, die Sie senden, stillschweigend gegenüber der CME als manueller Klick fehlgekennzeichnet. Senden Sie den Wert im falschen Datentyp, kann Ihre Anfrage abgelehnt werden, bevor sie überhaupt die Matching Engine erreicht. Im Jahr 2026, in dem der Manual/Automated-Indikator der CME bei jeder einzelnen Order durchgesetzt wird, ist es keine Option mehr, dieses eine Boolean korrekt zu setzen, und es ist einer der häufigsten Gründe, warum Entwickler beobachten, dass sich ihre automatisierten Orders merkwürdig verhalten oder markiert werden. Hier erfahren Sie genau, was das Flag bewirkt, warum es existiert und wie Sie es setzen, damit Ihr Bot ablehnungsfrei handelt.

Schnelle Checkliste für das isAutomated-Flag

  • Sendet ein Bot, ein Skript oder ein Webhook die Order? Setzen Sie isAutomated: true bei jedem /order/placeOrder-Aufruf.
  • Klickt ein Mensch auf eine Schaltfläche in Ihrer eigenen Oberfläche? isAutomated bleibt auf false (dem Standardwert).
  • Senden Sie den Wert im richtigen Typ? Das Schema definiert ihn als Boolean true, nicht als Zeichenkette "true", prüfen Sie, was Ihr HTTP-Client tatsächlich serialisiert.
  • Verwenden Sie eine Bracket-/OSO-Strategie? Setzen Sie das Flag auch bei der übergeordneten Order in placeOSO/placeOrderStrategy, nicht nur bei Einzelorders.
  • Sehen Sie merkwürdige Ablehnungen oder „Zugriff verweigert“? Prüfen Sie zuerst das Flag und seinen Typ, bevor Sie Authentifizierung, Symbol oder Risikoeinstellungen verantwortlich machen.
  • Nicht sicher, wer die Order „besitzt“? Wenn kein Mensch sie in Echtzeit physisch ausgelöst hat, ist sie automatisiert. Markieren Sie sie entsprechend.

Was das isAutomated-Flag wirklich bedeutet

isAutomated ist ein Boolean-Feld im placeOrder-Anfragetext von Tradovate. Es teilt Tradovate und über Tradovate der CME-Globex-Matching-Engine mit, ob eine reale Person die Order physisch ausgelöst hat oder ob Software sie erzeugt hat. Lassen Sie das Feld weg, behandelt Tradovate es als false, was nur für eine Order korrekt ist, die ein Mensch durch einen Klick in einem Frontend ausgelöst hat.

Sobald ein Algorithmus, ein Trading-Bot, ein TradingView-Webhook oder ein anderer unpersönlicher Prozess die Order erzeugt, ist dieser Standardwert falsch. Das Flag muss bei Orders gesetzt werden, die von einem automatisierten Algorithmus platziert werden, im Gegensatz zu solchen, die manuell per Klick ausgelöst werden. Das Setzen von isAutomated: true sorgt dafür, dass Ihre Anfrage der korrekten Börsen-Kennzeichnung zugeordnet wird.

Das ist keine Präferenz von Tradovate, sondern eine Börsenregel. Seit dem 5. Juni 2011 verlangt die CME Group, dass jede in Globex eingegebene Order angibt, ob sie manuell oder automatisiert eingegeben wurde, übermittelt im FIX-Tag 1028 (Manual Order Indicator). Am 8. Oktober 2012 wurde diese Anforderung in der Rule 536.B jeder Börse festgeschrieben. Die zulässigen Werte sind strikt: manuelle Orders übermitteln Y, automatisierte Orders übermitteln N, andere Werte sind nicht zulässig. Ihr isAutomated: true sorgt dafür, dass Tradovate Ihre Order auf der Leitung als automatisiert (N) kennzeichnet. Eine ungenaue Übermittlung dieses Indikators ist ein Verstoß gegen die Audit-Trail-Vorschriften, der gemäß CME Rule 512 disziplinarische Maßnahmen nach sich ziehen kann.

Häufigste Ursachen für ein fehlendes oder falsches isAutomated-Flag

1. Das Feld wird einfach weggelassen

Die häufigste Ursache ist, isAutomated komplett aus dem Payload wegzulassen. Tradovate setzt es standardmäßig auf false, sodass die Anfrage trotzdem erfolgreich ist, genau das macht es gefährlich. Die Orders Ihres Bots werden gegenüber der Börse als manuell (Y) gekennzeichnet, obwohl sie von Software erzeugt wurden. Es gibt keinen Fehler, aber jede automatisierte Ausführung ist nun im Audit-Trail der CME falsch gekennzeichnet.

2. Der Wert wird im falschen Typ gesendet

Das Tradovate-Orderschema dokumentiert isAutomated als Boolean. Manche HTTP-Clients, formularkodierte Anfragen oder Third-Party-Wrapper serialisieren es als Zeichenkette "true" statt als JSON-Boolean true. Je nachdem, wie Ihr Stack den Anfragetext aufbaut, kann ein Wert, den die API nicht als Boolean parsen kann, ignoriert werden (mit Rückfall auf false) oder die Anfrage zum Scheitern bringen. Senden Sie den Typ, den Ihre Bibliothek tatsächlich als JSON serialisiert, einen echten Boolean, sofern Ihre Bridge nichts anderes dokumentiert.

3. Das Flag fehlt bei Bracket-/Strategie-Orders

Entwickler fügen isAutomated häufig bei einzelnen placeOrder-Aufrufen hinzu, vergessen es aber bei placeOSO- und placeOrderStrategy-Anfragen (OSO/OCO-Bracket). Die übergeordnete Order in einer Strategie ist weiterhin eine automatisierte Order und benötigt das Flag. Ein ohne dieses Flag gesendeter Bracket-Einstieg stellt denselben Verstoß dar wie eine nicht markierte Einzelorder.

4. Eine Mensch-vs-Bot-Verwechslung im Codepfad

Wenn derselbe Codepfad sowohl manuelle UI-Aktionen als auch automatisierte Signale verarbeitet, ist es leicht, für beide denselben Wert fest zu codieren. Das Flag muss den tatsächlichen Ursprung jeder Order zum Sendezeitpunkt widerspiegeln: true, wenn ein Signal oder Algorithmus sie ausgelöst hat, false nur, wenn ein Mensch geklickt hat.

Korrigierter Tradovate-placeOrder-JSON-Body mit isAutomated auf den Boolean true gesetzt, grün hervorgehoben, für eine Bot-Order

So beheben Sie das isAutomated-Flag: Schritt für Schritt

1

Das fehlende Flag beheben

Öffnen Sie den Code, der Ihren /order/placeOrder-Anfragetext erstellt. Fügen Sie isAutomated neben den anderen Pflichtfeldern hinzu, accountSpec, accountId, action, symbol, orderQty und orderType. Setzen Sie den Wert auf true für jede Order, die Ihr Bot, Skript oder Webhook erzeugt. Lassen Sie ihn nur bei Orders auf false, die ein Mensch direkt auslöst. Senden Sie eine Testorder in der Demo-Umgebung erneut und bestätigen Sie, dass die Antwort eine gültige Order-ID enthält und kein Fehler ist. Ein minimaler automatisierter placeOrder-Body sieht so aus: { "accountSpec": "YourUserName", "accountId": 0, "action": "Buy", "symbol": "MESU6", "orderQty": 1, "orderType": "Market", "isAutomated": true }

2

Den falschen Datentyp beheben

Untersuchen Sie das rohe JSON, das Ihr Client sendet (protokollieren Sie den Anfragetext oder verwenden Sie die Debug-Ausgabe Ihrer Bibliothek). Bestätigen Sie, dass isAutomated als reiner Boolean erscheint, "isAutomated": true, und nicht als zitierte Zeichenkette "isAutomated": "true". Wenn Ihr Framework Booleans automatisch in Anführungszeichen setzt, konvertieren Sie den Wert vor der Serialisierung explizit in einen echten Boolean oder verwenden Sie den von Ihrem API-Wrapper dokumentierten Typ. Testen Sie erneut und bestätigen Sie, dass die Order akzeptiert wird. Wenn Sie eine Bridge oder einen Drittanbieter verwenden, prüfen Sie deren Dokumentation auf den genau erwarteten Typ, einige formularkodierte Integrationen erwarten eine Zeichenkettenform, prüfen Sie dies also anhand Ihres konkreten Tools, bevor Sie etwas annehmen.

3

Bracket- und Strategie-Orders beheben

Suchen Sie Ihren placeOSO- oder placeOrderStrategy-Request-Builder. Fügen Sie isAutomated: true zur Einstiegs-/übergeordneten Order der Strategie hinzu, genau wie bei einer Einzelorder. Die angehängten Stop- und Target-Legs übernehmen den Strategiekontext, aber das Flag gehört zur Order, die Sie einreichen. Senden Sie ein Test-Bracket in der Demo und bestätigen Sie, dass alle Legs wie erwartet im Orders-Bericht erscheinen.

4

Bestätigen, dass die Order akzeptiert und korrekt gekennzeichnet wurde

Prüfen Sie nach dem Senden die placeOrder-Antwort auf eine numerische orderId (Erfolg) statt auf einen failureReason. Öffnen Sie das Orders-Modul oder fragen Sie /order/list ab und bestätigen Sie, dass die Order als akzeptiert/aktiv angezeigt wird, nicht als abgelehnt. Beobachten Sie bei Live-Konten die ersten automatisierten Orders genau, um sicherzustellen, dass sie nun, da das Flag gesetzt ist, sauber weitergeleitet werden.

Tradovate-API-Explorer-Schemareferenz für das placeOrder-Modell, die isAutomated als Boolean-Feld typisiert zeigtOrders-Bericht der Tradovate-Webplattform, der eine akzeptierte, aktive automatisierte Order zeigt, nachdem isAutomated auf true gesetzt wurde

Fehlerbehebungstabelle

Symptom Was es bedeutet Lösung
isAutomated im Payload weggelassenWird standardmäßig auf false gesetzt; Bot-Orders werden als manuell markiert (Tag 1028 = Y)isAutomated: true zu jeder automatisierten placeOrder hinzufügen
"isAutomated": "true" (Zeichenkette)Wert kann möglicherweise nicht als Boolean geparst werden; kann ignoriert oder abgelehnt werdenSenden Sie den JSON-Boolean true, keine zitierte Zeichenkette
Flag fehlt bei OSO/OCO-ParentBracket-Einstieg wird als nicht markierte automatisierte Order weitergeleitetisAutomated: true bei der übergeordneten Order der Strategie setzen
Gleicher Codepfad für UI und BotFalscher Ursprung pro Order gemeldetFlag pro Order basierend auf dem tatsächlichen Ursprung zum Sendezeitpunkt setzen
Order markiert / Audit-Trail-BedenkenCME-Tag-1028-Kennzeichnung ist ungenauSicherstellen, dass automatisierte Orders immer als automatisiert (N) gemeldet werden
Gelegentliches „Zugriff verweigert“ bei placeOrderMeist Authentifizierung/Konto/Symbol, nicht das Flag selbstAuthentifizierung beheben und die numerische Konto-ID verwenden; Flag ebenfalls korrekt halten

Wo PickMyTrade ins Spiel kommt

Wenn Ihnen die manuelle Pflege des rohen API-Vertrags zu fehleranfällig erscheint, verbindet PickMyTrade TradingView-Alerts direkt mit Ihrem Tradovate-Konto und übernimmt die Order-Verarbeitung für Sie:

  • Korrekte Automatisierungs-Kennzeichnung, aus Ihren Alerts generierte Orders werden über den richtigen automatisierten Pfad übermittelt, sodass die Börsen-Kennzeichnung erledigt wird, ohne das Flag manuell zu codieren.
  • Payload-Validierung, Symbol-, Mengen- und Ordertyp-Felder werden validiert, bevor die Order gesendet wird, wodurch Fehler abgefangen werden, die direkt neben isAutomated im Body stehen.
  • Rate-Limit-sicheres Routing, der Order-Fluss wird zeitlich gestaffelt, sodass Bursts die Anfragelimits von Tradovate nicht auslösen.
  • Multi-Konto-Synchronisierung, dieselbe validierte Order wird auf all Ihre verbundenen Konten gespiegelt, statt dass Sie den Payload für jedes einzelne neu implementieren müssen.

Ablehnungsfrei handeln

Starten Sie Ihre kostenlose 5-tägige Testversion, verknüpfen Sie noch heute Ihre Alerts und handeln Sie ablehnungsfrei.

Starten Sie Ihre kostenlose 5-Tage-Testversion

Häufig gestellte Fragen

Es ist ein Boolean im placeOrder-Anfragetext, der angibt, ob ein Mensch oder eine Software die Order erzeugt hat. Es wird dem FIX-Tag-1028-Manual-Order-Indicator der CME zugeordnet, sodass die Börse weiß, dass die Order automatisiert war.

Das Feld wird standardmäßig auf false gesetzt, sodass Ihre automatisierte Order gegenüber der CME als manuell eingegeben gekennzeichnet wird. Das ist eine ungenaue Audit-Trail-Kennzeichnung, die gemäß CME Rule 536.B und Rule 512 zu disziplinarischen Maßnahmen führen kann.

Verwenden Sie true für jede Order, die ein Bot, Algorithmus, Skript oder Webhook erzeugt. Verwenden Sie false nur für Orders, die eine Person in Echtzeit physisch auslöst.

Das Tradovate-Orderschema definiert es als Boolean, senden Sie also true (nicht "true"). Wenn Sie eine Bridge eines Drittanbieters oder einen formularkodierten Client verwenden, prüfen Sie den genau erwarteten Typ, da sich die Serialisierung zwischen Tools unterscheiden kann.

Ja. Setzen Sie das Flag bei der übergeordneten/Einstiegs-Order Ihrer placeOSO- oder placeOrderStrategy-Anfrage, genau wie bei einer Einzelorder.

Nicht immer. Da es standardmäßig auf false gesetzt wird, sind viele Anfragen erfolgreich, aber falsch gekennzeichnet. Das größere Risiko ist ein Compliance- und Audit-Trail-Verstoß. Wird der Wert jedoch in einem Typ gesendet, den die API nicht parsen kann, kann das die Anfrage selbst zum Scheitern bringen.

Seit 2011 verlangt die CME bei jeder Globex-Order die Angabe, ob es sich um eine manuelle (Y) oder automatisierte (N) Eingabe handelt, zu Überwachungs- und Audit-Trail-Zwecken. Dies wurde 2012 in Rule 536.B festgeschrieben, und nur Y oder N sind gültig.

Dieser Fehler betrifft in der Regel die Authentifizierung, die Konto-ID oder das Symbol und nicht isAutomated. Behalten Sie das Flag korrekt bei, beheben Sie Authentifizierungs- und Kontozugriffsprobleme aber separat.

Diese Anleitung dient ausschließlich Bildungs- und Informationszwecken und stellt keine Finanz-, Anlage- oder Handelsberatung dar. Der Handel mit Futures und anderen gehebelten Produkten birgt ein erhebliches Verlustrisiko und ist nicht für jeden Anleger geeignet. PickMyTrade ist eine unabhängige Drittanbieter-Automatisierungsplattform und steht in keiner Verbindung zu Tradovate, Inc. und wird von diesem Unternehmen weder unterstützt noch gesponsert. Alle zugehörigen Namen, Logos und Marken sind Eigentum ihrer jeweiligen Inhaber. Plattformfunktionen und -schritte ändern sich im Laufe der Zeit, bestätigen Sie daher stets den aktuellen Ablauf in der offiziellen Tradovate-Plattform und -Dokumentation, bevor Sie handeln.