ADT
Architecture & technology

How ADT
is built.

A native interface. A session orchestrator. Independent position lifecycles with a recorded research boundary. Expand each component to see its responsibility.

Operator environmentLocal application + background service
Desktop interfaceThe operator’s control surface

A native PySide6/QML client displays service snapshots and submits explicit commands over local authenticated IPC. Closing the window does not stop the trading service.

Research & qualificationPersisted intent and candidate pool

Research receives the session envelope before ranking candidates. Qualified reserves are retained without relaxing selection criteria. Current broker and market checks run before each entry.

Deterministic engineOne session, independent lifecycles

A single writer serializes aggregate reservations and order decisions. Each position has independent order IDs, high-water mark, protection and exit state. Intent is recorded before submission.

IB Gateway / TWSThe connection to Interactive Brokers

The official TWS API sends orders and receives broker events. Login stays in the broker’s software. A disconnect triggers reconnect and reconciliation.

SQLite & event recordsLocal memory of the session

Decisions, orders, executions and state transitions persist locally. Broker positions and fills are reconciled against that record. Logs and reports support inspection.

Envelope → ranked pool → position lifecycles → brokerBroker events → reconciliation → local state
Client

Native desktop

Python and PySide6/QML render service snapshots. A local IPC boundary separates the interface from execution and keeps commands explicit.

Service

Event-driven engine

Worker threads handle blocking research and broker calls. Their results feed one engine thread that owns aggregate entry admission and independent position state. Broker requests are paced, with capacity reserved for safety actions.

Persistence

SQLite records

Immutable session intent, ranked candidate records and per-lifecycle orders, fills, high-water marks and exit state support restart reconciliation across multiple positions.

Data boundaries

Where data is stored
and which services connect

The trading database and diagnostic records stay on your machine. Broker requests go through your gateway. Research requests go to the provider and search services you configure.

Research keys use the operating system’s credential storage. Broker authentication remains in the broker application. The public website has no connection to your trading service.

Observability

Dashboard, logs and reports

The operator can inspect the current state, broker connection, order lifecycle, protection authority, session schedule, alerts and timestamps. Local JSON logs and session reports provide a record for investigation.

Read the recovery guide

Research and execution boundaries

Read how AI research feeds deterministic execution and how broker evidence restores account state.

A closer look

Ask about ADT
and your setup.

Explore the package, review your requirements and request guided access to ADT.

View pricing