v0.1.0-alpha — First Alpha
Pre-release
Pre-release
First alpha release of the Open Exchange matching engine.
⚠️ Alpha software. The project is under active development. Internals, APIs, and tuning parameters may change. This tag exists primarily as a stable snapshot for the Medium post describing the system's low-latency design — the file references and line counts in that article match this release.
What's in this release
- Aeron Cluster (Raft-replicated, 3 nodes) hosting the matching engine state machine
DirectIndexOrderBook— O(1) order book with direct array indexing on priceDirectMatchingEngine— zero-allocation match loop with pre-allocated result arrays- SBE wire format for ingress and egress (
order-schema.xml) - LMAX Disruptor per-market event publishing with
BusySpinWaitStrategy - HTTP order gateway (port 8080) and WebSocket market gateway (port 8081)
- Go-based admin gateway (port 8082) for cluster control, snapshots, and rolling updates
- Load test harness with quick / baseline / stress / endurance / progressive scenarios
Measured latency (10k orders/sec, 60s sustained)
| Percentile | End-to-end |
|---|---|
| p50 | ~12 µs |
| p99 | ~45 µs |
| p99.9 | ~85 µs |
Core match step in isolation: 300–800 ns.
Companion repo
Pair this with openexch/oms@v0.1.0-alpha for the full risk + ledger layer in front of the matcher.
Status
Alpha — expect rough edges. Issues and contributions welcome.