Skip to content

v0.1.0-alpha — First Alpha

Pre-release
Pre-release

Choose a tag to compare

@emrebulutlar emrebulutlar released this 08 May 08:22
7c8a946

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 price
  • DirectMatchingEngine — 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.