Due to Tradovate's API rate limit, orders and positions on Tradovate accounts can freeze inside NinjaTrader once the connection hits that ceiling. This article covers why it happens, how to tell it's happening, how to prevent it, and what to do if you're affected right now.
Symptoms
- Orders or positions freeze — sometimes called "golden orders" — and stop responding to Cancel, Modify, or Flatten inside NinjaTrader.
- The issue affects Tradovate accounts specifically; it is not seen on Rithmic or other connections.
- On NinjaTrader 8.1.4 and later, the platform shows a notification when the limit is reached.
Why this happens
Tradovate enforces an API rate limit of 5,000 requests per hour (80 per minute) on the Tradovate/NinjaTrader connection. This ceiling is set entirely by Tradovate — Replikanto and NinjaTrader only consume the API, they don't configure or negotiate the limit. Once it's reached, orders and positions can freeze and stop responding to cancel, modify, or close requests sent from inside NinjaTrader.
Trailing stops and repeated price changes in a short window are frequent causes, since each modification is its own API call.
How NinjaTrader reports it
NinjaTrader tracks this as issue NT-14091. On version 8.1.4 and later, it notifies you when the limit is hit and logs the event — check the Log tab for entries such as:
2025-01-01 10:10:10:000|0|32|APEX123000000001, Rate limit exceeded affected Order: Buy 1 StopMarket @ 21000
or
2025-01-01 10:10:10:000|0|32|A rate limit for too many order requests has been hit. Please wait and try again.
Older NinjaTrader versions freeze the same way but without any on-screen explanation — only the log shows what happened. The 8.1.4+ notification only reports the limit; it doesn't prevent or fix the freeze itself.
If orders are frozen right now
Pending orders and positions that can't be canceled, modified, or closed from NinjaTrader must be managed from the Tradovate website instead. For step-by-step recovery — disconnecting and reconnecting the broker connection, repairing the NinjaTrader database, and working directly from Tradovate's site — see Frozen orders and Orders that cannot be canceled.
Preventing it
- Avoid trailing stops on Tradovate accounts — every price adjustment is its own API call.
- Avoid multiple order price changes in a short period.
- Switch to Replikanto's Copy Market Orders (Executions) only feature, which copies only the leader's executions to followers instead of every order change — this significantly reduces Tradovate API usage. See this video walkthrough for more detail.
Requesting a higher limit
FlowBots and Replikanto have no control over Tradovate's API rate limit, and there's no subscription or paid tier on our side that raises it — any increase has to be requested from Tradovate directly. Contact Tradovate support at support@tradovate.com and ask them to raise the limit for your account. See this article for more detail.
Comments
0 comments
Article is closed for comments.