Skip to main content

NanoARB

Nanosecond-level high-frequency trading framework for CME futures markets

Build production-grade trading strategies in Rust with sub-microsecond inference latency, ML-powered signals, and realistic backtesting.

Sub-microsecond latency

Achieve <800ns tick-to-trade latency with production Rust codebase and zero Python at runtime.

ML-powered strategies

Mamba State Space Models 10-50x faster than Transformers with RL-based market making.

Realistic backtesting

Event-driven engine with latency simulation, queue position modeling, and adverse selection.

Get started

Follow these steps to build and run your first trading strategy with NanoARB.

1

Install Rust and dependencies

NanoARB requires Rust 1.75+ and optionally Node.js for the dashboard UI.
# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# Clone the repository
git clone https://github.com/dhir1007/nanoARB.git
cd nanoARB
2

Build and run the engine

Use the provided start script to build the Rust engine and launch the dashboard.
# Build and start everything
./start.sh
This starts the trading engine at http://localhost:9090 and the dashboard at http://localhost:3000.
3

Run your first backtest

Execute a backtest with synthetic market data to validate your setup.
# Run backtest via CLI
cargo run --release --bin nanoarb -- --backtest

# Or via API
curl -X POST http://localhost:9090/api/backtest \
  -H "Content-Type: application/json" \
  -d '{"symbol":"ES","initialCapital":1000000,"useML":true}'
{
  "total_pnl": 42850.75,
  "sharpe_ratio": 4.8,
  "max_drawdown_pct": 5.2,
  "win_rate": 0.543,
  "total_trades": 48231
}

Ready to build?

Start developing high-frequency trading strategies with NanoARB’s production-grade framework.

Get started now