Prop Traders: Ticket Level Fixes for Partial Fill Trade Copying

A copier’s first job is to recognize that a “5-lot fill” is rarely one event. Most systems handle the first partial correctly and mangle the second or third because they track net position instead of ticket state. The one capability that prevents over-closing is ticket-level state tracking paired with repeated-partial recognition. Expect divergence between accounts. Check ticket-state logging, lot-scaling settings, and auto-reconcile before you trust any copier with real size.
TL;DR:
- Accurate trade copying requires ticket-level state tracking, including OrderID, ExecID, and cumulativeQty, to correctly handle partial fills and avoid over-closing.
- Divergences during partial fills are common due to latency, venue differences, order-type conversions, and sizing mismatches, which affect replication fidelity.
- Selecting the appropriate copy mode—order, execution, or fills-only—depends on your strategy’s tolerance for orderbook fidelity versus safety during partial executions.
- Proper configuration of the copier’s architecture and regular testing with partial fill scenarios help prevent over-closing and ensure reliable performance in live trading.
- Continuous reconciliation and latency monitoring are essential daily practices for managing drift and maintaining accurate position tracking across multiple accounts.
Table of Contents
- How Do Partial Fills Work in Trade Copying?
- Why Does Trade Copying Break on Partial Fills?
- Copy Modes and How Each Handles Partial Fills
- Configuring Copiers for Reliable Partial-Fill Handling
- How to Verify and Test Partial-Fill Copying
- Where Trading Floor Fits Into Partial-Fill Reliability
- What Operations Teams Should Prioritize Every Day
- Try Trading Floor on Your Own Multi-Account Setup
- Sources
- FAQ
How Do Partial Fills Work in Trade Copying?
A leader sends a 5-lot order and the exchange doesn’t hand it back as one tidy fill. It might come back as three separate execution reports: 2 lots, then 1, then the final 2, each stamped with its own timestamp and price. A copier that only watches “current position” sees three separate jumps and, if it isn’t careful, tries to open three separate follower trades instead of recognizing one order filling in stages.

Exchange documentation on order types for futures and options confirms that market-limit orders which partially fill leave the remainder resting at the limit price, which can generate repeated partial-fill reports at different price levels over time. That’s not a bug in your broker’s feed. It’s how the matching engine is designed to behave.
Four fields decide whether your copier gets this right:
- OrderID: ties every partial back to the same parent order.
- ExecID (trade number): identifies the specific match event, though it isn’t always globally unique.
- cumulativeQty: the running total filled, the number your reconciliation logic should trust most.
- lastQty and timestamp: how much just filled and when, useful for detecting stalls or out-of-order messages.
Modern matching engines complicate this further. CME’s own guidance on consolidated iLink fill messages explains that fills get published per match event, and ExecID isn’t guaranteed unique across resting orders. A parser that assumes one ExecID equals one distinct trade will eventually double count or drop a fill. Ninety percent of the copying accuracy problem lives in this parsing layer, not in the strategy logic sitting on top of it.
Why Does Trade Copying Break on Partial Fills?
Divergence is normal. A CFTC filing involving a leader-follower futures program documents that subscribers were explicitly warned that follower results often won’t match the leader’s, citing slippage, execution timing, and technical factors as the drivers. If your copier promises identical fills across independently connected broker accounts, it’s promising something the market structure doesn’t actually allow.
The failure modes that matter most, roughly in order of how often they show up:
- No ticket-level state. The copier reacts to net position changes only, so a leader’s second partial on the same order looks like a brand-new signal, and the follower ends up over-closing or doubling exposure.
- Latency and venue differences. A few hundred milliseconds of lag between leader and follower accounts changes which price level a follower order lands on, especially during fast partial-fill sequences.
- Order-type conversion mismatches. A leader’s limit order partially fills, and a poorly built copier converts the follower’s remainder into a market order, changing the entire risk profile of the trade.
- Sizing and multiplier errors. A follower account with a different contract multiplier or a smaller allowed lot size can’t cleanly replicate a 3 lot partial, and rounding decisions get made silently, without anyone noticing until the books don’t match.
- Missing ExecID correlation. Without persistent ticket IDs, a repeated partial reads as a fresh order, and the system fires a redundant trade.
Pro Tip: Test your copier with a single 5 lot order that fills in three uneven pieces (2, 1, 2) before you ever run it live. If your dashboard shows three separate follower positions instead of one converging position, you’ve found the bug before it cost you money.
Copy Modes and How Each Handles Partial Fills
Trade copiers generally offer three configurations, and picking the wrong one for your strategy is the fastest way to create drift.
- Order mode. The copier mirrors every order event, including resting the follower’s pending order at the same price. This gives the highest fidelity to what the leader is actually doing, but it requires the follower’s order book to behave the same way, and a partially filled resting order on one side can leave the other side sitting with an unmatched pending order if the leader cancels the remainder.
- Execution mode. The copier replicates fills as they happen rather than mirroring the order itself. Fidelity to pending orders drops, but you avoid the problem of stranded resting orders across accounts, which makes this the more forgiving choice for accounts with different liquidity access.
- Fills-only mode. The copier waits until the leader’s order is completely filled, then sends one market order to the follower. This is the safest mode for avoiding over-closing, but operational guides on trade replication note the tradeoff clearly: you’re trading exact strategy fidelity for execution safety, and a scalping strategy that depends on entering at the same partial price levels as the leader won’t behave identically downstream.
Bracket-order and scalping strategies tend to do better under execution mode, where speed matters more than perfect order-book replication. Slower swing strategies with resting limit orders often prefer order mode, where matching the leader’s actual order structure matters more than shaving milliseconds.
Configuring Copiers for Reliable Partial-Fill Handling
Get the ticket-state architecture right first, because everything else is downstream of it. Persist OrderID, ExecID, cumulativeQty, lastQty, and a match-event identifier for every execution report, then build a repeated-partial detector that recognizes an incrementing cumulativeQty on the same OrderID as one order filling in stages, not three separate signals. This is the single fix that eliminates most over-closing incidents.
Lot-scaling is the second priority. Contract multipliers differ across account types, and a follower account sized at half the leader’s contracts needs a rounding rule defined in advance, not decided ad hoc mid-trade. Set a minimum-lot guard so a 1-lot partial never gets silently rounded to zero and dropped.
From there, add:
- Slippage caps on any follower order generated from a partial fill, so a fast market doesn’t fill you far outside your acceptable range.
- Conversion rules that explicitly state whether a leader’s limit-to-market conversion should be mirrored or blocked on the follower side.
- Repeated-partial handling toggles, so operators can choose whether a third partial on the same order re-triggers a follower action or gets absorbed into the existing position.
- Latency monitoring, since infrastructure choice affects fill timing directly. Copy-trading operational guides point to cloud or VPS hosting near the exchange as the standard fix for tick-to-trade lag, paired with a live latency dashboard so drift gets caught in minutes rather than at end-of-day reconciliation.
Pro Tip: Log every execution report raw, before any transformation. When something drifts, you want the original message, not your copier’s interpretation of it, to figure out where the logic broke.
How to Verify and Test Partial-Fill Copying
Run these four scenarios before any live capital touches the system, in this order:
- Single partial fill. One order, one partial execution report, confirm the follower opens the correct proportional size.
- Repeated partials on the same order. Three or more partial reports on one OrderID, confirm the follower converges to the final cumulative quantity rather than stacking separate positions.
- Leader cancels the unfilled remainder. Confirm the follower doesn’t keep chasing a fill the leader already abandoned.
- Limit order filled across multiple price levels. Confirm your reconciliation tolerance accounts for the price spread without flagging a false-positive drift alert.
What you log matters as much as what you test. Keep raw execution receipts, a running per-account position delta between leader and follower, and a reconciliation diff report generated on a fixed interval. Auto-reconciliation practices recommended in exchange documentation on consolidated fills point toward periodic net-position convergence checks, where the system computes leader net position minus follower net position per instrument on a schedule.
| Reconciliation check | Trigger condition | Suggested response |
|---|---|---|
| Position delta small | Difference under your defined threshold | Log and continue, no action |
| Position delta moderate | Difference exceeds threshold, within risk limits | Issue corrective market order |
| Position delta large | Difference exceeds risk tolerance | Raise SLA alert, halt further copying |
Set your reconciliation frequency based on how fast your strategy trades. A scalping desk running dozens of trades an hour needs a tighter interval than a swing account holding positions for days.
Where Trading Floor Fits Into Partial-Fill Reliability
Tradingfloor mirrors a leader’s net position, not just signals, which sidesteps a lot of the ticket-duplication risk that trips up copiers built around raw signal replay. Here’s how its documented capabilities line up against the failure modes above:
- Net-position mirroring means the follower converges on the leader’s actual position rather than reacting to every intermediate partial as a discrete event.
- Per-account risk controls let each funded or evaluation account carry its own size limits, which addresses the lot-scaling mismatch problem directly.
- Auto-reconciliation runs the convergence check described above without a manual reconciliation process bolted on afterward.
- Published live latency metrics give operators a real number to watch instead of guessing whether execution timing is the cause of a drift.
What Tradingfloor can’t fix is exchange and broker behavior itself. Fill prices across independent brokers will still differ due to liquidity and routing, and no copier eliminates that. Multi-account execution mechanics explain why identical fills across separate accounts are rarely realistic, which is exactly why reconciliation, not price-matching, is the right target.
What Operations Teams Should Prioritize Every Day

Chasing identical fill prices across accounts is a losing game, and operators who treat it as the benchmark end up chasing noise instead of managing real risk. The better standard of care is measurable reconciliation: is your position delta converging within tolerance, and are your alerts firing before drift compounds into real dollars.
Run your test matrix before every platform or broker change, not just at initial setup. Set a reconciliation SLA your team actually checks, hourly for active scalping books, end-of-day at minimum for anything slower. Keep a written incident playbook for drift events so the response doesn’t get improvised under pressure at 2 p.m. on a fast market day.
— KennyTrades
Try Trading Floor on Your Own Multi-Account Setup
If you’re managing more than one funded or evaluation account, the alternative to babysitting each one manually is a copier built specifically for that job. Tradingfloor mirrors your leader’s net position in real time across every connected account, runs auto-reconciliation in the background, and publishes live latency numbers so you’re not guessing whether a fill delay is your infrastructure or the exchange’s.

For a quick pilot, spend 48 to 72 hours running the four partial-fill test scenarios above against a live demo or small evaluation account, watch the reconciliation diff report for false positives, and confirm your per-account risk controls trigger correctly before scaling size. Tradingfloor connects to platforms including Tradovate and supports contract multipliers and slippage caps out of the box. Plans start with the Starter tier at $25 per month or $250 per year, with a Pro tier at $50 per month or $500 per year, and a 30-day free trial covers your entire pilot window.
Sources
- Order Types for Futures and Options - CME Group Client Systems Wiki - Confluence
- Copy Trading 101: Everything You Need to Know About Trade Replication Tools - QuantVPS blog
- Jim Morris v. Joel S. Robbins and Robbins Futures, Inc. dba Robbins Trading Company - CFTC filing
FAQ
What Does “Partially Filled” Mean in a Trading Account?
A partially filled order means only part of the requested quantity has executed so far, with the remainder still working in the market. A 5-lot order showing as partially filled might have 2 lots executed and 3 still pending against the order book.
Can a Market Order Be Partially Filled?
Yes, a market order can partially fill if available liquidity at the current price doesn’t cover the full requested size. The remainder typically continues filling at the next available price levels almost immediately, since market orders don’t rest waiting for a specific price.
What Is the Difference Between a Partial Fill and a Partial Trade?
The terms are generally used interchangeably to describe the same event: an order executing in more than one piece rather than all at once. Each piece generates its own execution report with a distinct fill quantity and price, even though they all belong to the same parent order.
What Is the Best Way to Copy Trade Across Multiple Accounts?
The most reliable approach mirrors the leader’s actual net position rather than replaying raw signals, combined with ticket-level state tracking and scheduled auto-reconciliation. Tradingfloor is built around exactly this model, pairing net-position mirroring with per-account risk controls and published latency data so operators can verify execution quality rather than assume it.
How Do I Manage Partial Fills When Copying Trades?
Track OrderID, ExecID, and cumulative filled quantity for every execution report so repeated partials on the same order don’t get treated as separate signals. Pair that with lot-scaling rules for different contract multipliers and a scheduled reconciliation check to catch any drift between leader and follower positions.
Recommended
- Trades Copied Right: Real-Time Mirroring for Prop Traders
- Prop Traders: Audit Proof Entry Only Copying Across 5 Funded Accounts
- P99 Trade Copying Latency: 60ms Tails That Kill Prop Traders
- Types of Trade Copying Strategies: 2026 Guide
Trading Floor mirrors every trade across your Tradovate, TopstepX & Rithmic accounts in real time, from $25/mo.
Start copying →