Error messages

TWS error 103: duplicate order ID

Quick answer

Error 103 points to an invalid reused or outdated order ID in the API client. Stop repeated retries and check the broker record first. The app must manage its order-ID sequence correctly after startup and reconnects.

Educational software guidance. Trading involves risk. Read the financial and information disclaimers.

Step by step

  1. 1 Pause the alert source that is repeatedly producing the rejection.
  2. 2 Find the first rejected ID in the app log and compare it with TWS orders and fills.
  3. 3 Check whether another instance of the same app is running.
  4. 4 Send support the ID sequence and reconnect timeline, with secrets removed. The client may need a sequencing fix.
  5. 5 Resume only after the app has synchronized its order state and support has found the cause.

A practical example

An app has used order ID 50, reconnects, and tries to start again at 20. The broker may reject that sequence. A user should not keep pressing Retry to find a number that works. Preserve the log that shows the reconnect and let the app provider check how it chooses the next ID. Meanwhile, read the broker’s order list so you know what already exists.

Illustrative scenario, not a record of a trade placed during this review.

Screen reference

Empty TWS Activity Orders panel and Trades tab
Use Orders to inspect order state and Trades to inspect executions. This empty paper view shows the location; it does not reproduce a rejection or prove a fill. Captured in TWS paper mode on 3 October 2026. Open the image for full size.
How to confirm the result New requests should use valid identifiers and match one intended order per signal.

Mistake to avoid

Restarting repeatedly can hide the original sequence. Preserve the earliest useful log before doing more retries.

Common questions

Is this the same as client ID 326?

No. A client ID shows a connection; an order ID shows an order in that client’s workflow.

Should I reset order IDs manually?

Do not use an ID reset as a routine fix for a running app.

Financial and information disclaimers

Financial disclaimer

These guides explain software. They are for education, not financial, investment, tax, or legal advice. No example is a suggestion to buy or sell a product or use a trading strategy. Trading can lose money, including all funds you put at risk. With margin, futures, short sales, or some options, losses can exceed your starting funds. Automation can fail, send duplicate orders, or act late. Stops do not guarantee a fill or a price. Review your orders and positions, and seek advice from a qualified professional for your own needs. Paper trades, examples, and past results do not predict live results or promise a profit.

Information disclaimer

This is general help based on the sources and check date shown on the page. Screens, settings, fees, data access, and product support can change or differ by app version, account, country, and broker. The content may contain errors or become out of date; accuracy, completeness, and continuous service are not guaranteed. Check current broker and app instructions before acting. Screenshots show where controls are; they do not prove that an order test passed. This guide does not replace broker terms or risk notices. References to IBKR and TradingView identify their products and do not imply their endorsement of this guide.

IBKR risk disclosures · IBKR paper-trading limits · SEC guidance on automated investment tools

PickMyTrade help · Independent guidance for Trader Workstation and the desktop integration. TWS images show paper trading. Other applications are named in the image captions. Settings and availability can vary by version and account.

Automate TradingView alerts to Interactive Brokers

See the IBKR integration