An exchange engine.
Built in the open.
Matching, a deterministic money ledger, and market data. Run the core locally, inspect the failure tests, and build on Apache 2.0 source.
Beta software for evaluation. Production readiness requires security review, recovery drills and testing in your deployment.
Live demo → trade.openexchange.devPerformance and resilience
Dated performance runs and a real leader-loss test. Each answers a different question; the limits are part of the result.
- Latency
- 308µs p50
- Committed matching round trip
- 50,000 offers/s, 3 nodes on one host. First status after a successful offer; July 25, 2026.
- Read the source →
- Throughput
- 800kingress offers/s
- Observed in a short baseline run
- 100% ingress acceptance in one July 2 window. Single-host, tuned prod drivers; not sustained capacity.
- Read the source →
- Availability
- Leader losstested
- Orders continue after re-election
- The OMS E2E kills a matching leader under load and checks executions and ledger conservation. No uptime SLO implied.
- Read the source →
These are separate single-host runs, not a combined capacity or uptime guarantee.
From order entry to settlement
Five components cover order entry, matching, money, operations and the reference trading interface. Use them to evaluate the full path, then integrate your product around it.
The matching cluster replicates orders through Raft. The Assets Engine keeps a deterministic ledger, and settlement applies executions to balances. The failure test kills a matching leader under load and checks the resulting executions, balances and positions after a new leader takes over.
Watch an order become a trade
Follow the intended order, update and recovery paths. This diagram illustrates the architecture; animation timing is not a performance measurement. The Quickstart runs three matching nodes and one Assets node on one host.
What we provide vs. what you own
Open Exchange is the infrastructure you build an exchange on. You bring identity, custody, fiat, and compliance; integrate those before you touch real funds.
Open Exchange provides
The infrastructure layer.
- Matching engine & array-backed order book
- Raft-consensus clustering & failover
- OMS pre-trade risk pipeline (7 checks)
- Deterministic money ledger on its own Raft cluster (Assets Engine)
- Real-time market data (WebSocket)
- Admin / ops gateway & runbooks
- Reference trading UI
- Configurable markets (demo ships BTC/ETH/SOL/XRP/DOGE-USD)
You (the integrator) own
Your product & regulatory responsibility.
- KYC / AML & sanctions compliance
- Custody & wallets (hot/cold, key management)
- Fiat on/off ramps & bank/PSP integration
- User identity, login & account opening (IAM)
- Regulatory licensing & compliance
- Real-money settlement (on/off-chain)
- Market surveillance
- Tax & regulatory reporting
Where things stand
We push the system past its limits and publish what we find, corrections included. Every release ships with honest notes.
v0.5.0-beta: the durability release
- Scheduled snapshots and archive bundles support recovery; a restore drill is still needed for each deployment.
- Deterministic snapshot bytes make ledger state comparable across replay histories.
- Commit-addressed binaries make the source revision of a deployed build traceable.
- Committed round-trip latency is reported separately from local ingress publication.
What’s next
- An external security review before anything touches real funds.
- Standard market-access connectors (FIX and richer gRPC).
A small team that publishes its mistakes
We build in public: the benchmarks, the trade-offs, the OOM crash, and the 30x measurement error we caught and corrected. If you're going to trust an engine with money, you should be able to read how it was built.