Building Scalpel
Notes from building a trading cockpit on the Interactive Brokers API: what the TWS API can do, how Level 2 and the scanner work through it, and the design decisions behind Scalpel.
Scalping through the IBKR API: what the TWS API can and cannot doIBKR API scalping, from building a trading app on the TWS API: market data lines, Level 2 and tick-by-tick caps, pacing, scanner limits, pre-market stops.September 23, 2026, 12 min read
Tape sound trading: how to read the tape by earTape sound trading turns each print into sound, so you hear pace, side and size while you watch Level 2. The research, our design, and how to avoid noise.August 26, 2026, 8 min read
Client-side stop loss: why Scalpel's stops live in the appA client-side stop loss lives in your trading app, not at the broker. Why Scalpel works this way, how exits are priced, and every failure mode, plainly.August 3, 2026, 9 min read
Building a Rust trading app: the architecture behind ScalpelHow we built Scalpel, a Rust trading app for Interactive Brokers: the crates, threads, event bus, GPU interface, money types, tests and honest trade-offs.July 9, 2026, 10 min read
IBKR API scanner: reqScannerSubscription in practiceIBKR API scanner in practice: scan codes from reqScannerParameters, filters, 50 rows and 10 scans, errors 165, 322 and 10360, and a live pre-market run.June 5, 2026, 9 min read
TWS API market depth: reqMktDepth and SMART depth in practiceTWS API market depth explained: reqMktDepth, SMART depth, keeping a Level 2 book from updateMktDepthL2, error 317 and 309, with Python code.May 14, 2026, 10 min read
IBKR API with Python: a working starter for tradersIBKR API Python starter: ibapi vs ib_async, connecting to TWS, a quote stream and a guarded paper order, with code tested against TWS API 10.51.April 22, 2026, 9 min read