nautechsystems / nautilus_trader
Production-grade Rust-native trading engine with deterministic event-driven architecture
github.com/nautechsystems/nautilus_traderIndexed at 8160730Up to date with upstream
What is nautilus_trader?
nautilus_trader is a Rust-native engine for multi-asset, multi-venue trading systems. It supports research, deterministic simulation, and live execution through one event-driven architecture, with Python used for strategy logic, configuration, and orchestration. The main implementation is Rust, with Python bindings provided through PyO3.
Written by a model from the README and the source
5,357 files and 139,028 symbols in 11 modules, led by Rust (2,567 files) and Python (1,378).
Code health
This codebase scores 5.4 out of 10 for code health, which we rate needs work. It also scores maintainability 6.1 and static performance 9.9 out of 10. The three are scored separately and never blended into one number. Risk is concentrated, as it usually is: 766 of 5,357 files are git hotspots, and they average 3.5 — which is where the fixes pay off most.
On the leaderboards:#10 of 13 Rust repos
Use nautechsystems/nautilus_trader in your agent
Point Claude Code, Cursor, Codex or VS Code at this repository. Your agent gets the index this page is built from: cited answers, callers, history and health for any file.
- 1.In Claude, open Customize → Connectors, click +, then Add custom connector. On a Team or Enterprise plan an owner adds it first under Organization settings → Connectors.
- 2.Paste the server URL below as the Remote MCP server URL, then click Add.
- 3.Click Connect. A Repowise sign-in window opens. Approve access.
- 4.Repowise's tools are now available in your Claude chats.
Connect with one click. Sign in with Repowise (OAuth), no API key to copy. Works in Claude on the web, desktop, and mobile.
Docshttps://api.repowise.dev/mcp/nautechsystems/nautilus_trader
This repo is public, so anyone with a Repowise account and an API key can connect.
Try asking
- get_overview()
- get_answer("how is nautilus_trader put together?")
- get_why("why is nautilus_trader structured this way?")
Explore nautilus_trader
- DocumentationModule-by-module documentation, written from the source.
- ArchitectureDependency graph, layers and third-party dependencies.
- Code healthEvery file's score and the findings behind it.
- CommitsEach commit's effect on code health.
- OverviewEverything else the index found: contributors, decisions, what changed this week.
Key features of nautilus_trader
- NautilusTrader supports multi-asset and multi-venue trading systems across research, simulation, and live execution.
- NautilusTrader provides modular adapters for REST APIs and WebSocket feeds.
- NautilusTrader supports backtesting across multiple venues, instruments, and strategies with historical quote tick, trade tick, bar, order book, and custom data.
- NautilusTrader supports advanced order types, conditional triggers, execution instructions, and contingency orders.
- NautilusTrader allows strategies to use identical implementations between research and live deployment.
- NautilusTrader supports user-defined components and system assembly through its cache and message bus.
How nautechsystems/nautilus_trader works
nautilus_trader uses a Rust core to run event-driven trading systems with the same execution semantics and deterministic time model in research and live environments. Python acts as the control plane for strategy logic, configuration, and orchestration, while systems can also be written entirely in Rust. The crates directory holds the Rust implementation, including the matching engine in crates/execution/src/matching_engine/engine.rs. The nautilus_trader directory provides the Python-facing package used to compose and control systems. Adapters translate REST APIs and WebSocket feeds into a unified interface and normalized domain model. The tests directory covers components such as data, execution, and portfolio behavior.
The codebase has 5,357 files and 139,028 symbols in 11 modules, led by Rust, Python and Shell. Code health is 5.4 out of 10, rated needs work.
nautechsystems/nautilus_trader FAQ
What is nautilus_trader?
nautilus_trader is a Rust-native engine for multi-asset, multi-venue trading systems. It supports research, deterministic simulation, and live execution.
How does nautilus_trader work?
nautilus_trader uses a Rust event-driven core and Python as the control plane. Adapters normalize venue and data-provider APIs, while the same execution semantics and time model serve research and live systems.
What language is nautilus_trader written in?
nautilus_trader is primarily written in Rust. Python bindings use PyO3, and examples and components can also use Python, Cython, or Rust.
How is the nautilus_trader code organized?
nautilus_trader organizes its Rust implementation under crates and its Python-facing package under nautilus_trader. Tests, documentation, examples, scripts, and patches are organized in separate top-level directories.
Who is nautilus_trader for?
nautilus_trader is for developing multi-asset, multi-venue trading systems across research, simulation, and live execution. It supports strategy development in Python, Cython, or Rust.
What license does nautilus_trader use?
nautilus_trader uses the LGPL-3.0 license.
The summary, features and answers on this page are written by a model from the README and the source, and refreshed with each index.
About this page
Get a page like this for your own codebase
Repowise built this map of nautechsystems/nautilus_trader from its source and git history. It parses every symbol, draws the dependency graph, scores each file's health from complexity, duplication, coverage and churn, finds hotspots and owners in the history, and writes documentation for every module. Your coding agent reads the same index over MCP, so its answers cite real files.
Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed.
Maintain nautechsystems/nautilus_trader?
Claim this page, add a badge to the README, or re-index it.
Claim this page
Sign in with GitHub and we check that you are an admin or maintainer of nautechsystems/nautilus_trader. Then add a badge to the README that links readers here.
Add a badge to your README
Every badge is public, cached, and updates on its own after every index. Nothing to install.
Repowise badge
Links to this page, with no score on it. Adding it also re-indexes the repo every week.
[](https://repowise.dev/repo/nautechsystems/nautilus_trader?src=badge_wiki)Code health badge
The repo's health score out of 10, from the latest index.
[](https://repowise.dev/repo/nautechsystems/nautilus_trader?src=badge_health)Code health card
A larger card with the score, its change since the last index, and when it was measured. The HTML version follows the reader's light or dark theme.
[](https://repowise.dev/repo/nautechsystems/nautilus_trader?src=badge_card)