Skip to main content

How to Debug a NinjaTrader Trade Copier with AI

The CrossTrade trade copier moves orders from a leader to one or more followers. When a follower misses, the broker UI usually shows nothing. The CrossTrade Add-On activity log holds the truth. With CrossTrade MCP, an AI agent reads both leader and follower logs in one conversation and points at the gap.

Direct answer

Authenticate with mcp:read. Run this prompt with the leader, follower, and time window:

For leader <leader_account> and follower <follower_account> between <start> and
<end>:
1. GetActivityLog for both accounts.
2. ListOrders and ListExecutions for both in the same window.
3. ListPositions for both.
4. Build a single chronological timeline.
5. Identify the step where the follower path broke.
6. State the verbatim rejection reason if any.
7. Suggest a one-line preventive check.
Do not place, cancel, modify, or flatten anything.

The agent reconstructs the timeline. The rejection reason is usually one line, like "follower rejected: max contracts (existing 4 + routed 2 > limit 5)".

Common copier failures

PatternCause
Leader filled, follower rejectedMax contracts on follower account
Follower late or out of syncRouting delay or follower broker latency
Wrong quantity on followerCopier ratio or per-account override
Follower took the wrong sideConfiguration error in copier mapping
Two accounts diverged silently over timeManual trades on one account, or copier-disabled window

Prerequisites

RequirementDetail
CrossTrade subscriptionElite
CrossTrade Add-Onv1.13.0 or higher
MCP clientAny
Scopemcp:read

Step 1: Confirm the symptom

Before running the agent, note the leader fill time and the follower account that missed. A 5-minute window around the leader fill is usually enough.

Step 2: Run the diagnostic prompt

Paste the prompt above with your specific accounts and window.

Step 3: Read the timeline

Look for the step where the follower path stops. Typical patterns:

14:32:09.812 LEADER order placed
14:32:10.041 LEADER fill confirmed
14:32:10.044 copier leader fill received
14:32:10.047 copier follower routing started
14:32:10.121 copier follower rejected: max contracts (existing 4 + routed 2 > limit 5)
14:32:10.121 FOLLOWER no order placed

The verbatim rejection reason is what you want. It usually tells you exactly which check fired.

Step 4: Fix the underlying issue

CauseFix
Max contracts on followerReduce existing position or raise the per-account limit (if firm rules allow)
Follower disconnectedReconnect the follower account in NT8
Symbol mappingConfirm both accounts subscribe to the same instrument; update copier mapping
Existing position conflictFlatten the conflicting position manually
Copier ratio mismatchUpdate copier configuration in CrossTrade
Bracket/ATM mismatchMake sure both accounts have compatible bracket settings

Step 5: Verify with a test signal

After the fix, fire a controlled leader order on Sim101 (or whatever non-funded environment you use for tests) and re-run the diagnostic prompt. The agent should report the follower path matched.

Funded futures considerations

  • Apex prohibits automation entirely; a copier that routes to an Apex follower may violate firm rules even when CrossTrade can technically perform the route. Verify the firm's automation policy.
  • Some firms prohibit cross-firm copying. Verify before you rely on it.
  • Per-account max contracts on funded accounts usually cannot be raised without firm approval.