Tradovate API/Webhook Limit-Order-Preisabweichung beheben
Ihr Alert sagt 4100, und die aktive Order zeigt 4100,50. Nichts hat den Markt gekreuzt, der Preis wurde irgendwo zwischen Ihrem Alert und dem Orderbuch nur gerundet. Hier erfahren Sie, warum, und wie Sie es stoppen.
Sie stellen Ihre Strategie so ein, dass sie bei 4100 schließt. Der Alert feuert, die Nachricht liest eindeutig 4100, und dennoch erscheint die aktive Order bei 4100,50. Nichts hat den Markt gekreuzt, nichts wurde zu einem schlechten Preis gefüllt, die Zahl hat sich einfach irgendwo zwischen Ihrem Alert und dem Orderbuch geändert. Das ist zum Verrücktwerden, und es ist genau die Art von Sache, die Leute “Slippage” nennen, während sie insgeheim wissen, dass es das nicht ganz ist.
Hier die Kurzfassung: Futures-Preise existieren nicht auf einer glatten Zahlengeraden. Sie existieren nur auf einem festen Raster von Ticks. Wenn der Preis, den Ihre Strategie übergibt, kein exaktes Vielfaches dieses Rasters ist, muss ihn etwas runden, und die Richtung, in die gerundet wird, ist selten die, die Sie im Kopf hatten. Beheben Sie, wo der Preis ausgerichtet wird, und stellen Sie sicher, dass das Limit nicht auf der falschen Marktseite sitzt, dann verschwindet der Phantom-Halbpunkt.
Dieser Leitfaden geht durch, warum sich der Preis bewegt, wie Sie herausfinden, welche der drei üblichen Ursachen bei Ihnen zutrifft, und was Sie genau ändern müssen, damit Ihre Limits auf der Zahl landen, die Sie gemeint haben.
Was „Slippage“ hier tatsächlich bedeutet
Es lohnt sich, zwei sehr unterschiedliche Dinge zu trennen, denn die Lösung hängt davon ab, welches der beiden Sie haben.
Echte Slippage passiert bei einer Market-Order: Sie akzeptieren, was auch immer das Buch hergibt, und in einem schnellen oder dünnen Markt sind das ein paar Ticks schlechter als der letzte Print. Es gibt keinen Preis zu schützen, also gibt es nichts zu debuggen, das ist genau der Trade, um den Sie gebeten haben.
Was Sie hier sehen, ist anders. Eine Limit-Order trägt einen bestimmten Preis, und dieser Preis wird umgeformt, bevor er im Buch liegt. Die Zahl in Ihrem Alert und die Zahl auf der aktiven Order stimmen nicht überein. Das ist nicht der Markt, der sich gegen Sie bewegt; das ist Ihr Preis, der unterwegs umgeformt wird. Die gute Nachricht: umgeformte Preise sind vorhersehbar, und vorhersehbar heißt behebbar.
Warum sich der Preis von Ihrem Ziel entfernt
Drei Mechanismen verursachen fast jeden Fall. Sie können sich stapeln, daher lohnt es sich, alle drei zu kennen, selbst wenn heute nur einer Sie beißt.
1. Der Preis liegt nicht auf dem Tick-Raster
Jeder Kontrakt hat ein festes Mindestinkrement. Senden Sie einen Preis, der zwischen zwei zulässigen Ticks liegt, wird er auf den nächstgelegenen gerundet. Das ist kein Bug, ein Preis außerhalb des Rasters kann an der Börse schlicht nicht existieren, also muss er irgendwo einrasten.
Das Problem ist, dass verschiedene Kontrakte in unterschiedlichen Größen einrasten, und es ist leicht, die falsche anzunehmen:
| Kontrakt | Tick-Größe | Zulässige Preise nahe 4100 / 75,00 / 2050 |
|---|---|---|
| ES, NQ, MES, MNQ | 0,25 | 4100,00, 4100,25, 4100,50, 4100,75 |
| CL (Rohöl) | 0,01 | 75,00, 75,01, 75,02, 75,03 |
| GC, MGC (Gold) | 0,10 | 2050,00, 2050,10, 2050,20 |
| YM, MYM (Dow) | 1,0 | 42100, 42101, 42102 |
Nehmen wir an, Ihre Logik berechnet einen Gold-Ausstieg bei 2050,05. Diesen Preis gibt es nicht, GC bewegt sich in Zehntel-Schritten, sodass er auf 2050,00 oder 2050,10 gerundet wird, und jetzt ist Ihr „5 Cent besserer“ Ausstieg um einen ganzen Dime daneben. Bestätigen Sie das aktuelle Inkrement auf der Kontrakt-Spezifikationsseite der Börse, bevor Sie diesen Zahlen vertrauen; die Börse kann eine Tick-Größe anpassen, und Mikro-Kontrakte stimmen nicht immer mit ihrem vollformatigen Geschwisterkontrakt überein.
2. Fließkomma-Mathematik schubst Sie über einen Tick
Das ist die hinterhältige Ursache, und sie steckt meist hinter der klassischen Beschwerde „4100 gesendet, 4100,50 erhalten“. ES handelt in Vierteln, sodass sowohl 4100,00 als auch 4100,50 vollkommen zulässig sind. Der Preis wurde nicht gerundet, weil er außerhalb des Rasters lag, er wurde gerundet, weil der Wert, den Ihre Strategie tatsächlich berechnet hat, nicht die glatte 4100 war, die Sie im Alert-Text gesehen haben.
Strategien programmieren einen Ausstieg selten fest ein. Sie berechnen ihn: ein Einstieg minus ein Offset, ein gleitender Durchschnittswert, ein Prozentsatz einer Range. Machen Sie das in Fließkomma, erhalten Sie Zahlen wie 4100,4999999 oder 4100,3700001. Runden Sie das auf das nächste Viertel, können Sie leicht einen Halbpunkt von dort landen, wo die runde Zahl in Ihrem Alert es aussehen ließ, als würden Sie landen. Alert-Nachricht und Preisfeld können sogar voneinander abweichen, weil eines Anzeigetext ist und das andere der tatsächlich gesendete Wert.
3. Das Limit ist bereits durch den Markt gegangen
Das ist tatsächlich echte Slippage im Kostüm einer Limit-Order. Ein Kauf-Limit, das über dem aktuellen Ask liegt, oder ein Verkaufs-Limit, das unter dem aktuellen Bid liegt, ist „marktfähig“, es kann sofort zum bestverfügbaren Preis gefüllt werden, statt zu liegen. Wenn Ihre Strategie also ein Limit auf der falschen Marktseite berechnet (ein häufiger Vorzeichenfehler: ein Offset subtrahieren, wenn Sie eigentlich addieren wollten), kreuzt die Order den Spread und wird zu einem Preis gefüllt, der Ihrer Zahl in nichts ähnelt.

Der Hinweis: Rundungsfehler bringen Sie einen oder zwei Ticks daneben, immer in einer rundungsförmigen Art. Ein marktfähiges Limit bringt Sie dorthin, wo das Buch gerade stand, was mehrere Ticks sein können und immer auf der Seite, die Sie etwas kostet. Ist die Lücke größer als ein Tick und konsequent gegen Sie, vermuten Sie die Marktseite, nicht das Raster.
So beheben Sie es, Schritt für Schritt
Die tatsächliche Tick-Größe des Kontrakts lesen
Nehmen Sie nichts an, schlagen Sie es für den genauen Kontrakt nach, den Sie handeln. Holen Sie die Tick-Größe aus den Kontraktdetails der Plattform, der Spezifikationsseite der Börse oder der API, wo jedes Kontraktobjekt ein Feld tickSize offenlegt (neben priceFormat und priceFormatType, die Ihnen sagen, wie der Preis skaliert und angezeigt wird). Mikro- und Vollformat-Kontrakte können sich einen Tick teilen, aber nicht immer, und Quartals-Rollovers ändern den Tick nicht, ändern aber das Symbol.
Jeden Preis vor Verlassen der Strategie auf den Tick runden
Machen Sie das Runden explizit und tun Sie es als letzten Schritt vor dem Senden. Das Muster ist in jeder Sprache dasselbe:rounded = round(rawPrice / tickSize) * tickSize
Für ES mit einem 0,25-Tick wird aus einem Rohwert von 4100,37: round(4100.37 / 0.25) * 0.25 = round(16401.48) * 0.25 = 16401 * 0.25 = 4100.25. Jetzt wissen Sie genau, welcher Preis rausgeht, weil Sie ihn berechnet haben, nicht der Router. Wenn Sie garantieren wollen, dass Sie den Markt nie kreuzen, runden Sie ein Kauf-Limit auf den Tick nach unten und ein Verkaufs-Limit nach oben, das hält die Order passiv.
Die Fließkomma-Abweichung eliminieren
Selbst nach dem Runden können winzige Binärbruch-Fehler Ihnen 4100,2500001 hinterlassen. Rasten Sie das Ergebnis vor dem Senden auf die Dezimalgenauigkeit des Kontrakts ein, formatieren Sie ES/NQ auf zwei Dezimalstellen, Gold auf zwei, Rohöl auf zwei, den Dow auf null. Senden Sie den Preis als saubere Zahl im Feld, und verlassen Sie sich nicht darauf, dass der menschenlesbare Alert-Text ihn trägt; der Wert im Payload ist es, der tatsächlich platziert wird.
Prüfen, auf welcher Seite des Buchs das Limit liegt
Bevor Sie dem Runden die Schuld geben, bestätigen Sie die Richtung. Bei einem liegenden Kauf sollte das Limit auf oder unter dem aktuellen Preis liegen; bei einem liegenden Verkauf auf oder über ihm. Kreuzt Ihr berechneter Preis diese Linie, haben Sie ein marktfähiges Limit gefunden, und die Lösung liegt in Ihrer Offset-Mathematik, prüfen Sie das Vorzeichen und ob Sie in Ticks statt in Punkten rechnen. Fünf „Ticks“ bei ES sind 1,25 Punkte, nicht 5,00; das zu vermischen, wirft den Preis wild daneben und oft komplett auf die falsche Seite.
Prüfen, ob die aktive Order übereinstimmt
Platzieren Sie eine Order in einem simulierten Konto und lesen Sie sie zurück. Der Preis der aktiven Order im Orders-Panel sollte der Zahl entsprechen, auf die Sie gerundet haben, tickgenau. Falls ja, sind Sie fertig. Falls nicht, protokollieren Sie den exakten Rohpreis, die verwendete Tick-Größe und den gesendeten gerundeten Wert, und vergleichen Sie sie, die Abweichung liegt fast immer in einer dieser drei Eingaben, nicht in der Plattform.


Wenn Sie über einen Webhook oder eine Bridge routen
Wenn ein TradingView-Alert die Order über eine Bridge steuert, gibt es eine zusätzliche Übergabe, bei der der Preis abdriften kann. Der Alert feuert mit einem Wert, die Bridge bildet diesen Wert auf ein Order-Payload ab, und das Payload ist es, was den Broker erreicht. Zwei Dinge halten das sauber.
Erstens: Machen Sie die Strategie zur einzigen Wahrheitsquelle für den Preis, runden Sie innerhalb Ihrer Pine-Logik auf den Tick und übergeben Sie diese exakte, vorab gerundete Zahl an den Alert, statt einen rohen Schlusskurs zu senden und zu hoffen, dass das nachgelagerte System so rundet, wie Sie es wollen. Zweitens: Bestätigen Sie, dass das Feld, das die Bridge liest, das Preisfeld ist, kein Label.
Haben Sie es satt, Preise von Hand zu runden und nachzuverfolgen, wo sich ein halber Tick eingeschlichen hat? PickMyTrade routet Ihre TradingView-Alerts zu Tradovate und übernimmt die Tick-Ausrichtung für Sie, sodass das Limit, das Ihre Strategie verlässt, das Limit ist, das im Buch landet.
So verhindern Sie, dass es wiederkommt
Ist es einmal behoben, verhindern ein paar Gewohnheiten das Wiederauftreten:
- In der Strategie runden, immer. Senden Sie nie einen roh berechneten Preis und lassen Sie etwas Nachgelagertes den Tick entscheiden.
- Rohwert und gerundeten Wert protokollieren. Halten Sie beide Werte in Ihren Logs fest, damit ein verirrter Tick ein Zwei-Sekunden-Diff ist, kein Rätsel.
- Zuerst in der Simulation testen. Feuern Sie den Alert in ein simuliertes Konto und prüfen Sie den aktiven Preis mit bloßem Auge, bevor Sie ihm echtes Volumen anvertrauen.
- Bei Offsets in Ticks rechnen, nicht in Punkten. Legen Sie vorab fest, in welcher Einheit Ihre Offsets sind, und rechnen Sie einmal um, an einer Stelle.
- Auch die Bracket-Beine im Auge behalten. Stop- und Target-Preise runden auf dieselbe Weise; landen Ihre schützenden Beine daneben, gilt dieselbe Rundungslösung. Hängen sich diese Beine gar nicht erst an, ist das ein anderes Problem, siehe unseren Leitfaden zu fehlschlagenden Tradovate API Bracket-Orders (OSO/OCO).
Hören Sie auf, Preise von Hand zu runden
PickMyTrade routet Ihre TradingView-Alerts zu Tradovate und übernimmt die Tick-Ausrichtung für Sie, sodass das Limit, das Ihre Strategie verlässt, das Limit ist, das im Buch landet.
Starten Sie Ihre kostenlose 5-Tage-TestphaseHäufig gestellte Fragen
Normalerweise nicht. Echte Slippage ist eine Market-Order, die schlechter als der Quote gefüllt wird, weil sich das Buch bewegt hat. Ein Limit, das einen Tick oder Halbtick von Ihrem Alert entfernt landet, wurde umgeformt, bevor es das Buch erreichte, auf einen zulässigen Tick gerundet, durch Fließkomma-Mathematik verschoben oder als marktfähiges Limit durch den Markt gesendet. Nur Letzteres ist echte Slippage; die anderen beiden sind ein Formatierungsproblem, das Sie kontrollieren.
ES handelt in 0,25-Schritten, sodass 4100,00 bis 4100,75 alle zulässig sind. Wenn Ihre Strategie das Limit aus einem Bar-Wert oder einem Offset berechnet, ist die Rohzahl oft etwas wie 4100,37 oder 4100,4999 und rundet auf das nächste Viertel, manchmal den Halbpunkt über dem, was Sie erwartet hatten. Runden Sie den Preis selbst auf den Tick und protokollieren Sie Roh- und gerundete Werte.
Lesen Sie sie aus den Kontraktdetails der Plattform, der Spezifikationsseite der Börse oder dem tickSize-Feld der API am Kontraktobjekt ab. Als schnelle Referenz: ES, NQ, MES und MNQ ticken in 0,25; Rohöl (CL) in 0,01; Gold (GC) in 0,10; der Dow (YM) in 1,0. Bestätigen Sie die aktuelle Spezifikation, bevor Sie sich darauf verlassen.
Es beseitigt die Rundungsüberraschung, da eine Market-Order keinen Preis zum Runden hat, aber sie wird zu dem gefüllt, was das Buch gerade bietet, was in einem schnellen Markt schlechter sein kann als ein korrektes Limit. Ging es Ihnen um Preiskontrolle, behalten Sie das Limit und beheben Sie die Rundung. Brauchen Sie nur den Fill, ist eine Market-Order einfacher.
Nein, das Tick-Raster wird von der Börse festgelegt und ist daher bei Evaluierungs-, finanzierten und persönlichen Konten identisch. Was sich je nach Firma unterscheidet, sind die erlaubten Kontrakte und Ordertypen sowie die Risikoregeln, und diese äußern sich als Ablehnungen, nicht als verschobene Preise. Landet Ihr Preis daneben, prüfen Sie Ausrichtung und Routing, und checken Sie die aktuellen Regeln Ihrer Firma auf ordertyp-spezifische Vorgaben.
Dieser Leitfaden 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. oder Bookmap und wird von diesen 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 den aktuellen Ablauf daher immer in der offiziellen Plattformdokumentation, bevor Sie handeln.