Introduction
Olympus — a validium-style securities exchange with private execution and on-chain verifiability.
Olympus is a high-performance securities exchange built in Rust that implements a validium architecture: the matching engine executes privately at full speed while periodically anchoring cryptographic state commitments on-chain. On-chain batch roots provide an audit trail for regulators and participants.
The system combines a central limit order book (CLOB) matching engine with an embedded reth node for on-chain settlement and verifiability.
Key Features
- Sub-microsecond matching — 208ns p50 order placement, 541ns with trade execution; deterministic engine on a dedicated thread, zero lock contention via ArcSwap snapshots
- Crash recovery — RocksDB-backed tick log with periodic engine snapshots; restart replays from last checkpoint
- On-chain verifiability — Settlement contract commits batch state roots and trade merkle roots to the EVM
- On-chain audit commitments — batch trade roots committed on-chain via settlement contract for regulatory and institutional audit
- WebSocket streaming — real-time order book and mid price data at 100ms via
/ws - Trading frontend — React-based terminal UI with live order book, trade form, and balance monitoring
- Lock-free API reads — ArcSwap publishes engine snapshots atomically; API handlers read without blocking the engine
- Embedded EVM — reth-based block production with EIP-1559 transaction signing
- Bridge — automatic minting and settlement of trades on the EVM layer
- Sequencer — batched transaction ordering with 1ms flush intervals (configurable) and deterministic replay
- EIP-712 authentication — cryptographic request signing for all trading operations
Architecture at a Glance
PRIVATE (off-chain, hot path) PUBLIC (on-chain, reth)
+---------------------------------------+ +---------------------------+
| API > Sequencer > CoreEngine | | |
| | | | Settlement Contract: |
| +-----+------+ | | commitBatch( |
| | | | | stateRoot, |
| TickResult Snapshot | | tradesRoot) |
| | (ArcSwap) | | |
| +-----+------+ | | | Events indexed by |
| | | | v | | Blockscout |
| RocksDB Bridge API reads | | |
| (tick (mint/ | +---------------------------+
| log) unlock) |
| | | |
| +-----+ |
| v |
| Settlement Service -----------------> commitBatch tx
+---------------------------------------+Default Instrument
On startup, the system creates an AAPL-USD instrument with:
- Tick size:
0.01 - Lot size:
1 - Max order size:
10,000
Ports
| Port | Service | Description |
|---|---|---|
| 3000 | API | REST API + WebSocket + Prometheus metrics (dev mode) |
| 5173 | Frontend | Trading UI dev server (proxies to 3000) |
| 8545 | EVM RPC | Ethereum JSON-RPC endpoint |
| 4000 | Grafana | Metrics dashboard |
| 9090 | Prometheus | Metrics collection |
Next Steps
- Philosophy — trust model, design principles, and trade-offs
- Getting Started — prerequisites, setup, and running locally
- Architecture — validium design, component overview, and design decisions
- Bridge & Settlement — EVM settlement pipeline and on-chain state commitments
- API Reference — complete endpoint documentation
- WebSocket API — real-time market data streaming protocol
- Trading Frontend — React-based trading interface