Skip to main content
nexustrader Logo

NexusTrader

Make every trade deterministic.


License Python Version Stars


NexusTrader is built for one thing: making live trading execution reliable.

And now, with NexusTrader MCP, AI agents can trade through the same execution-safe stack.

If you care about reliable trading, a star helps others discover the project.

The Problem

If you trade live, you have probably seen at least one of these failures:

  • An order was sent, but you were not sure whether it was actually confirmed.
  • Network jitter, retries, or replayed signals created duplicate trades.
  • A WebSocket disconnect left balances, positions, or open orders out of sync.
  • A fast market exposed race conditions that looked fine in backtests.
  • Debugging execution failures turned into guesswork.

What Is NexusTrader?

NexusTrader is an execution reliability layer for live trading systems.

It is designed to help a strategy remain correct under delayed ACKs, reconnects, retries, and exchange-side uncertainty.

It is not just an exchange connector. It is the layer that keeps execution correct when markets, networks, and APIs behave badly.

AI-Native Trading With MCP

NexusTrader MCP exposes NexusTrader through the Model Context Protocol so AI systems can trade through the same deterministic execution layer.

What this means in practice:

  • Trade from AI agents
  • Trigger trades from natural language workflows
  • Connect the same trading backend to multiple MCP-compatible tools

Works with:

  • OpenClaw
  • Cursor
  • Codex
  • Claude Code

Example intent:

"Buy BTC if funding rate < 0 and log it."

With MCP in the loop, AI can analyze the condition, generate the signal, submit the order through NexusTrader, and log the result through one connected workflow.

Core Capabilities

  • Deterministic Order Execution: WebSocket orders are tracked until ACK, and ACK timeout triggers REST confirmation before the system decides the request failed.
  • Idempotent Orders: client_oid and idempotency_key help suppress duplicate creates and make retries safe.
  • Auto-Recovery After Disconnect: Private WS reconnect can automatically resync balances, positions, and open orders, then emit a diff to the strategy layer.
  • Safer Failure Handling: WS send failure, ACK timeout, and explicit rejection are surfaced as different failure paths instead of being mixed together.
  • Observable Execution State: Failed orders carry a reason, WS lifecycle events are published, and pending ACK state is tracked explicitly.
  • MCP-Friendly AI Integration: The NexusTrader MCP layer lets you connect the trading stack to MCP-compatible assistants such as Codex, Claude Code, Cursor, and OpenClaw without building a separate adapter for each tool.

Why Not Other Tools?

Capability CCXT Hummingbot NexusTrader
Order confirmation path ❌ ❌ ✅
Duplicate order protection ❌ ❌ ✅
Reconnect reconciliation ❌ ⚠️ ✅
WS ACK timeout recovery ❌ ❌ ✅
AI trading support via MCP ❌ ❌ ✅
Natural language trading workflows ❌ ❌ ✅
Multi-exchange live trading ⚠️ ✅ ✅

One-Liner

Others let you trade. NexusTrader helps ensure the trade is correct, even when AI is part of the loop.

Architecture

Strategy
   ↓
NexusTrader
   ↓
Exchange APIs

Use Cases

  • Cross-exchange arbitrage
  • Market making
  • High-frequency trading
  • Multi-symbol strategies
  • Fully automated live trading systems
  • TradFi workflows via Bybit TradFi (MT5)

Performance Highlights

  • uvloop for a faster event loop on non-Windows systems
  • picows for low-latency WebSocket handling
  • msgspec for fast serialization and structured models
  • Batched subscriptions and inflight tracking for high-symbol-count strategies
  • Lightweight pure-Python runtime plus loguru (zero build requirements, built-in time-based log rotation)

Installation

pip install nexustrader

TradFi support on Windows:

pip install "nexustrader[tradfi]"

Quick Start

Inside a strategy, submit orders with deterministic identifiers:

from decimal import Decimal
from nexustrader.constants import OrderSide, OrderType

self.create_order_ws(
    symbol="BTCUSDT-PERP.OKX",
    side=OrderSide.BUY,
    type=OrderType.LIMIT,
    amount=Decimal("0.001"),
    price=Decimal("90000"),
    client_oid="entry_001",
    idempotency_key="signal:btc:entry",
)

Why this matters:

  • The strategy makes the decision.
  • NexusTrader makes execution safer.
  • MCP lets AI systems access the same trading workflow.

Start Here

Supported Exchanges

  • Binance
  • Bybit
  • OKX
  • Bitget
  • HyperLiquid
  • Bybit TradFi (MT5)

Bybit TradFi

NexusTrader also supports traditional financial markets through Bybit TradFi with MetaTrader 5 as the execution backend.

  • Windows only; base installs on Linux/macOS do not install MetaTrader5
  • Supports Forex, Gold, Indices, and Stocks
  • Symbol mapping is normalized into NexusTrader format such as XAUUSD_s.BYBIT_TRADFI

See the docs for installation, credentials, and runnable examples.

Contributing

Contributions are welcome.

  • Open an issue first if you are planning a feature or non-trivial change.
  • Read CONTRIBUTING.md before opening a pull request.
  • Target the main branch for pull requests.

Social

X (Twitter) Discord Telegram

License

NexusTrader is released under the MIT License. See LICENSE for details.

Star History

Star History Chart

Release files for nexustrader 0.3.38

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nexustrader 0.3.38
File Size Uploaded
nexustrader-0.3.38.tar.gz 257.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nexustrader 0.3.38
File Interpreter ABI Platform
nexustrader-0.3.38-py3-none-any.whl Python 3 none any Details

Total release size: 568.3 kB

Release files / nexustrader-0.3.38.tar.gz

Download URL nexustrader-0.3.38.tar.gz
Size 257.6 kB
Tags Source
SHA-256 checksum
How to use checksums
74488476f50eb382f87d1533fd9e13f9244c2f2f08f3d928b2ef5c8a9e981455
BLAKE2b-256 checksum
How to use checksums
c13e5642062cc77e4a53fb53cd09a4d658cb0de080ad45a863f6cc781cc38c79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / nexustrader-0.3.38-py3-none-any.whl

Download URL nexustrader-0.3.38-py3-none-any.whl
Size 310.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
41a7f785d0e15b6b76ee53546c62ea2e638db0c9713764ede5fe770a4fa60865
BLAKE2b-256 checksum
How to use checksums
bc33327ed398f16b419e7c05f315b6fa25360b8be464e15a79cee062c0127469
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release history Release notifications | RSS feed

This release

0.3.38 This release

2 release files

0.3.37

2 release files

0.3.26

2 release files

0.3.25

2 release files

0.3.24

2 release files

0.3.23

2 release files

0.3.19

2 release files

0.3.18

2 release files

0.3.17

2 release files

0.3.16

2 release files

0.3.15

2 release files

0.3.13

2 release files

0.3.12

2 release files

0.3.11

2 release files

0.3.10

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.2.52

2 release files

0.2.51

2 release files

0.2.50

2 release files

0.2.49

2 release files

0.2.45

2 release files

0.2.44

2 release files

0.2.43

2 release files

0.2.42

2 release files

0.2.41

2 release files

0.2.40

2 release files

0.2.39

2 release files

0.2.38

2 release files

0.2.33

2 release files

0.2.30

2 release files

0.2.29

2 release files

0.2.28

2 release files

0.2.10

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.43

2 release files

0.1.42

2 release files

0.1.41

2 release files

0.1.40

2 release files

0.1.36

2 release files

0.1.34

2 release files

0.1.33

2 release files

0.1.32

2 release files

0.1.31

2 release files

0.1.28

2 release files

0.1.27

2 release files

0.1.26

2 release files

0.1.25

2 release files

0.1.24

2 release files

0.1.21

2 release files

0.1.20

2 release files

0.1.17

2 release files

0.1.16

2 release files

0.1.15

2 release files

0.1.14

2 release files

0.1.13

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page