Order size caps in Tradovate come from account-level risk limits and PreTradeRisk parameters, not from a single global setting. Traders who see a rejection should check per-account caps and allocation mode first, reduce order quantity or split it into partials, and confirm the fix in a demo account before scaling any automated copying across multiple accounts.
TL;DR:
- Order size rejections often result from per-account risk limits or PreTradeRisk parameters, not a single global setting, requiring traders to review individual caps and allocation modes.
- Allocation modes, especially Proportional versus Equal Quantity, can cause order math errors and unintended limit breaches, necessitating careful adjustment or staging of multi-account orders.
- Most common rejection messages relate to specific account caps, allocation math errors, or permissions, which can be corrected by reducing sizes, switching modes, or verifying risk parameters in demo environments first.
- Setting and testing pre-trade risk limits through UI or API, with small test orders, verify effective caps while avoiding missed fills or oversized positions before scaling automation.
- Large group trading works best when staging orders in smaller batches, enforcing per-account limits, and applying protective stops along with documented risk limit increases from brokers.
Table of Contents
- Where Tradovate enforces order size caps: UI settings, account risk, and API parameters
- How allocation modes change total order input and cause math errors
- Common error messages, what they mean, and immediate fixes
- How to set and test pre-trade risk limits
- Operational workarounds for large groups and copy-trading limits
- SafeFly expert validation checklist before scaling automation
- Why we favor simple, enforced rules over complex overrides
- Try SafeFly for automated multi-account risk control
- Sources
- FAQ
Where Tradovate enforces order size caps: UI settings, account risk, and API parameters
Order size limits in Tradovate are set in more than one place, and each layer serves a different purpose. In the platform's user interface, risk limits sit under Account Settings, where a risk administrator or prop firm can define a maximum position size and a maximum order size per account. These values are separate from the exchange's own constraints.
At the API level, the Tradovate API exposes PreTradeRisk entities that check every order before it reaches the exchange, including fields such as maxOpeningOrderQty and maxClosingOrderQty, along with userAccountPositionLimit endpoints that cap total net position size.
- UI: Account Settings, Risk Limits section, controls max position and max order size per account.
- API: PreTradeRisk parameters (maxOpeningOrderQty, maxClosingOrderQty) enforce quantity checks before submission.
- Exchange level: CME and other exchanges apply their own position limits, independent of Tradovate's settings.
Both layers matter for automated trading, since a script can bypass UI warnings but still gets rejected by the same PreTradeRisk checks that protect a manual trader.
How allocation modes change total order input and cause math errors
Multi-account copying tools generally offer two allocation modes, and each changes what quantity actually needs to be entered on the order ticket. Equal Quantity sends the same contract size to every linked account, while Proportional scales the size to each account's balance or a preset ratio. Both modes can produce totals that trip a cap without the trader realizing why.
- Equal Quantity: if a leader trades 5 contracts across 20 accounts, the system may require a total ticket input of 100 contracts, since the platform validates the aggregate before splitting it.
- Multiple-of errors: when the required total does not divide cleanly into whole per-account units, Tradovate can reject the order with a message demanding a quantity that is "a multiple of" the account count.
- Ticket input caps: many order tickets impose their own maximum, commonly cited around 100 contracts in community discussions, which blocks large multi-account totals outright, as reported in a Tradovate copy-trading limitation thread.
- Mitigation: switch to Proportional allocation, send orders per account instead of as one aggregate ticket, or stage the fill in smaller batches.
Traders running large account groups should treat allocation math as a first check whenever an order fails, since the cause is often arithmetic rather than a genuine risk breach.
Common error messages, what they mean, and immediate fixes
Most rejections fall into a handful of recognizable categories, and matching the wording to the cause saves time. A Tradovate community thread on order rejections documents the most frequent examples and how traders resolved them.
- "Maximum order quantity" usually points to a per-account cap set by a broker or prop firm, not a Tradovate-wide rule.
- "Must be a multiple of X" almost always traces back to allocation-mode math across a copied group of accounts.
- "Access denied" or entitlement errors point to permissions or account-level trading restrictions rather than size at all.
- Fast fixes: lower the order size, split it into partial fills, switch allocation mode, or request a risk limit increase from the prop firm.
Pro Tip: Reproduce the exact rejection in a demo account before changing anything live, so the fix is confirmed rather than guessed.
File a support ticket only after ruling out allocation math and per-account caps; most reported cases resolve without Tradovate intervention.
How to set and test pre-trade risk limits
Configuring pre-trade risk correctly before scaling automation prevents rejections from turning into missed fills or oversized positions. The process works the same whether it is done manually in the UI or programmatically through the API.
- In Account Settings, open the Risk Limits panel and set the maximum position size and maximum order size for the account in question.
- Using the API, create or update a userAccountRiskParameter entity and set maxOpeningOrderQty along with longLimit and shortLimit values, as documented in the PreTradeRisk schema.
- Decide whether the limit should carry a hardLimit flag, which blocks the order outright, versus a soft warning that still allows submission.
- Place a small test order in a demo environment sized just above the configured cap and confirm the platform rejects it as expected.
- Check platform logs to verify the rejection reason matches the parameter that was set, not an unrelated allocation error.
- Confirm post-trade behaviors separately, including daily loss auto-liquidation and trailing drawdown settings, since these operate after the pre-trade check passes.
A staged rollout that moves from demo, to a single live account, to a small group of two or three followers before scaling further catches most ticket-input and allocation-math problems, according to guidance in the Tradovate API documentation, before they affect an entire account group.
Verification is not optional: confirm the parameter shows as active in the account's risk profile and cross-check the audit log after every change.

Operational workarounds for large groups and copy-trading limits
Trading across many accounts at once runs into front-end constraints that have nothing to do with actual risk tolerance. A few practical patterns reduce failed orders without weakening protection.
- Stage large fills into smaller batches instead of sending one aggregate order that exceeds the ticket input cap.
- Enforce a per-account maximum quantity inside the copying layer itself, rather than relying on a single total-quantity input that has to divide evenly.
- Apply broker-side protective stops and daily profit and loss lockouts as a backstop, so a rejected or partially filled copy order cannot leave a position unprotected.
- Request a documented risk limit increase from a prop firm before an evaluation challenge, rather than discovering the cap mid-trade.
Community reports on Apex account groups describe exactly this pattern: a 20-account group needing 700 total contracts hit a 100-contract ticket cap, and the fix was per-account enforcement rather than a bigger single order. Background on similar constraints in other copier platforms shows the same netting and allocation math applies well beyond Tradovate.
SafeFly expert validation checklist before scaling automation
Before enabling automated copying across several accounts, a short validation routine catches the errors described above without risking live capital.
- Confirm the OAuth connection to each account is active and re-authorized after any password or permission change.
- Run a demo dry run first, then a single small live order with a protective stop attached, before adding more accounts.
- Log every order request, pre-trade rejection, and applied cap so a support escalation has a clear record.
- Enable broker-side protective stops and daily profit and loss lockouts as an immediate safeguard against a failed copy leaving a position exposed.
Pro Tip: Keep the first live test small enough that a full rejection or an unexpected fill would not matter financially.
Why we favor simple, enforced rules over complex overrides
Automation multiplies mistakes as fast as it multiplies trades. Conservative order caps, broker-side stops, and a written testing routine catch the failures that a busy trading day would otherwise hide until it is too late.
— Arturo
Try SafeFly for automated multi-account risk control
SafeFly mirrors trades across multiple accounts, applies protective stops to copied trades, and enforces daily profit and loss lockouts to help manage trading risk. Plans are listed on the SafeFly pricing page, including Basic, Pro, and Ultra tiers, with details on the integration approach available on the how it works page.

Sources
Check the Tradovate API documentation for pre-trade risk endpoints, the community forum for real rejection cases, and CME's own position limit guidance for exchange-level rules.
This article is general information, not a substitute for advice from a qualified financial advisor. Consult a qualified financial professional about your own circumstances before acting on anything here.
- Tradovate API
- Trouble Passing Apex 300k with 20 Accounts – Tradovate Forum
- Tradovate partner API: open-demo-account / PreTradeRisk schema
FAQ
How much capital do you need to trade on Tradovate?
Tradovate does not publish a single required capital figure, since minimums depend on the broker or clearing firm handling the account and the futures contracts being traded. Margin requirements vary by product and change with market volatility, so traders should confirm the current figure with their broker before funding an account.
What is Level 2 data in Tradovate?
Level 2 data shows the order book depth for a contract, listing multiple bid and ask price levels rather than just the best price on each side. It helps traders see where larger clusters of resting orders sit, which can inform entry and exit timing.
Is it better to trade on Tradovate or TradingView?
The two serve different purposes: Tradovate is a futures brokerage and execution platform, while TradingView is primarily a charting and analysis tool that can connect to various brokers. Many traders use TradingView for charting and Tradovate for order execution rather than treating them as competing choices.
What can I trade with $50 on Tradovate?
Tradovate itself does not set a fixed dollar minimum for what a trader can access, since available contracts and margin requirements depend on the broker and the specific futures product. A small account is likely to be limited to micro futures contracts, which carry lower margin requirements than standard-sized contracts, but exact eligibility depends on the broker's own rules.
