Unexpected futures fill traced from an order-book price gap into a verified evidence packet
Trading Checklist

Bad Prop-Firm Fill? Save This Evidence Before You Escalate

Classify the order, reconstruct the execution, and preserve a precise support packet before calling an unexpected fill a platform error.

Order ID
Evidence anchor
3 times
Submit, trigger, fill
Bid/ask
Execution side
Every fill
Partial executions
Sep 30
Sources verified

The practical answer: stop trading the affected account, save the order ID and exact fill, and determine whether the result matches the order type and available market liquidity before calling it a platform error. A stop-market order can fill beyond its trigger. A limit order can remain unfilled or fill only part of its quantity. A platform risk liquidation can generate a market order after the account crosses a threshold.

Those outcomes can be painful without being erroneous. The useful question is not “did the fill look bad?” It is “what order reached the matching engine, what market was available at that time, and what evidence contradicts the recorded execution?”

The five-minute evidence freeze

Before refreshing, reconnecting, changing charts, or placing another order, save:

  1. the firm, platform, account name, and account stage;
  2. the order ID, symbol, contract month, side, quantity, and order type;
  3. the submitted price, stop or limit price, and actual fill price;
  4. the submission, trigger, and fill timestamps with the time zone;
  5. the position before and after the fill, including partial fills;
  6. working brackets, OCO links, personal risk controls, and copier state;
  7. the order-history row and downloadable export; and
  8. the first-party firm and platform status at the same time.

Topstep's current support guidance asks for specific order IDs, affected account numbers, trade time, issue description, and screenshots or a recording. It also says to stop trading when an issue occurs because continued trading can prevent an exception review. Preserve one clean sequence instead of creating a second trade that muddies it.

First classify the order that actually filled

Market and stop-market orders prioritize execution

A market order requests the next available price. A stop-market order becomes a market order after the stop is elected. Neither promises the trigger or last-traded price.

Topstep's current order guide describes this as fill certainty without price certainty. Tradeify likewise says a stop order converts to a market order and the fill may differ from the stop because of slippage. CME's market-with-protection and stop-with-protection systems bound how far aggressive orders can execute on Globex, but they do not turn a stop price into a guaranteed fill price.

If the order was a stop-market order, compare the trigger with the actual fill and the available bid or offer after election. A chart candle alone cannot show order-book depth, queue position, or every intermediate execution.

Limit and stop-limit orders prioritize price

A limit order sets the worst price the trader will accept, but it does not guarantee a fill. A stop-limit order becomes a limit order after its trigger, which can leave the position open if the market moves beyond the limit.

Topstep says a limit order may need the market to trade through the price and can receive partial fills. Tradeify warns that a stop-limit can miss entirely when the market moves through its limit. That is the central trade-off: a market-style exit can slip; a limit-style exit can fail to complete.

If a buy limit filled above its limit or a sell limit filled below its limit, preserve the exact order record and escalate. If a limit was merely touched on a chart but did not fill, reconstruct queue and volume before labeling it defective.

Reconstruct the event in the right order

1. Match the symbol and contract month

Confirm the exact contract in the order history, not just the chart title you remember. An old or thin contract can show wider spreads and sparse depth. Tradeify's current contract-selection guidance warns that expired, illiquid, or incorrect contracts can create poor fills, excessive slippage, and execution delays.

Save the full symbol with month and year. Do not write only NQ, ES, or another root.

2. Separate submitted, triggered, and filled times

These are different events. A stop can rest for hours, trigger at one instant, and fill across one or more prices moments later. A platform risk tool may first detect a threshold breach and only then generate a market order.

Topstep says its Personal Daily Loss Limit and other platform risk tools are not exchange-resting stops. The system detects the crossed threshold, sends an order, and receives the available fill. If the account touched its Maximum Loss Limit before the exit completed, a later favorable tick or final balance does not undo the earlier breach.

3. Compare the correct side of the market

A buy market order executes against available offers. A sell market order executes against available bids. Comparing a fill with the chart's last price, candle close, or midpoint can produce a false discrepancy.

Record bid, ask, last trade, spread, and visible depth when available. During a fast market, those values can change before a screenshot is taken, which is why the order and exchange timestamps matter more than a later static chart.

4. Account for size and partial fills

One contract and ten contracts do not consume the same book. The order may fill across multiple prices when there is not enough size at the best level. Save every execution row, not only the average price.

TradingView's current order-history documentation records placed, filled, canceled, and rejected orders. Its account manager can export trading data and display filled-order time, entry and exit details, and account history. TopstepX also supports an Orders or Trades export by date range. Keep the original file unchanged and share only the specific information the firm's support process requests.

5. Check volatility, liquidity, and market safeguards

Topstep identifies economic releases, session opens and closes, thin markets, swing extremes, and gaps as common slippage conditions. CME can also apply market and stop protection or brief market safeguards when price outruns available liquidity.

The presence of a safeguard does not prove a bad platform fill. It describes how the exchange controls aggressive orders during stressed conditions. Save the relevant CME notice or market-state record if the event coincided with a pause, price-limit state, or unusual liquidity condition.

Evidence test by symptom

SymptomWhat may explain itEvidence that mattersSafe next action
Stop filled beyond triggerStop became a market order; gap or thin depthOrder type, trigger time, executions, bid/ask and depthStop trading and compare actual executions with market data
Limit touched but did not fillQueue position, insufficient traded volume, wrong side of marketLimit price, size, time and sales, remaining quantityPreserve the working-order history; do not assume a chart touch guaranteed execution
One order has several pricesPartial fills across book levelsEvery execution row and average fill calculationReconcile total quantity before escalating
Risk liquidation filled past the thresholdThreshold crossed before generated market order completedThreshold record, unrealized P&L, trigger and fill timesReview the rule and leave more room from the account floor
Fill contradicts the order constraintPossible record, routing, or platform issueOriginal order ID, order type, limit, executions, account and status stateSubmit one complete official support packet

What does not prove a bad fill

  • A stop price and fill price being different.
  • A limit price appearing inside a candle that also traded many other prices.
  • The chart's last price differing from the bid or ask used for execution.
  • A large order receiving an average price across several executions.
  • A risk liquidation completing after the monitored threshold was crossed.
  • A later screenshot showing calmer conditions than existed at the fill time.

None of those automatically proves the fill was correct either. They identify the evidence gap that must be closed.

Build a support-ready packet

Use a short chronological note:

  1. account name, account stage, and affected order ID;
  2. exact contract, side, quantity, and order type;
  3. submitted price, trigger or limit, and each execution price;
  4. local time plus platform or exchange time zone;
  5. screenshot of the order row and account state;
  6. original order-history export for your records;
  7. first-party platform status and any relevant incident link; and
  8. one sentence stating the apparent contradiction.

Good: “Sell-stop order 12345 on MNQZ6 triggered at 20,000.00 at 8:30:00 CT and filled in two executions; the second execution appears outside the market data shown for that second.”

Weak: “The platform stole ten points.”

Send account identifiers only through the firm's official private support channel. Do not publish an account number, full export, or personal information in a public community post.

Bottom line

An unexpected fill is a reconstruction problem. Freeze the order record, identify whether the order promised execution or price, compare the right market side, reconcile every partial fill, and save the market and account state at the event time. Escalate only after the packet states a precise contradiction support can investigate.

If the order never executed, use the rejected-order troubleshooting checklist. If multiple accounts or services were affected, use the platform-outage evidence guide. Before the next session, run the platform-status pre-trade checklist.

Current Firm Offers and Direct Links

Open the firm in a new tab with the recorded ComparePropFirms commercial link. Use the displayed code when applicable, and confirm the final price and terms before paying.

Official sources