A P-Ticket (penalty ticket) is NinjaTrader's way of telling you that your Tradovate/NinjaTrader connection has hit Tradovate's API rate limit. This article covers why it happens, how to recognize it, and how to avoid or resolve it.
Why this happens
Tradovate enforces an API rate limit of 5,000 requests per hour (80 per minute) on the Tradovate/NinjaTrader connection. This limit is set entirely by Tradovate — FlowBots and Replikanto only consume the API and have no control over it. Every order submission, modification, or cancellation counts as a request, so strategies that move stops frequently (trailing stops, fast scalping, multiple price changes in a short window) burn through the limit quickly.
What you'll see
If an attempt is made to exceed the limit, NinjaTrader notifies you with a P-Ticket error:
- Orders and positions can freeze once the limit is reached.
- Pending orders, and positions that can't be canceled, modified, or closed from NinjaTrader, must be managed from the Tradovate/NinjaTrader website instead.
- On NinjaTrader 8.1.4 and later, the platform shows this notification directly; earlier versions didn't surface it the same way.
You can also confirm the condition in NinjaTrader's Log tab, which records 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.
How to avoid a P-Ticket
- Avoid trailing stops or multiple price changes in a short period — each modification is its own API call.
- Use Replikanto's Copy Market Orders (Executions) only feature, which copies only the executions to followers instead of every order change. This significantly reduces Tradovate API usage.
- Watch this walkthrough video for a demonstration of the Copy Market Orders (Executions) only setup.
If pending orders or positions get stuck
Pending orders, and positions that can't be canceled, modified, or closed from NinjaTrader, must be managed directly from the Tradovate/NinjaTrader website until the rate limit resets.
Requesting a higher limit
The rate limit is entirely Tradovate's to change — there's no FlowBots or Replikanto subscription or add-on that raises it. Contact Tradovate support directly and ask them to increase the API rate limit for your account:
- Email: support@tradovate.com
Note: we don't have confirmation on whether Tradovate applies a different limit to firm/company accounts versus individual accounts — if that distinction matters for your setup, ask Tradovate support directly.
Comments
0 comments
Article is closed for comments.