Event-sourced options/equities intelligence stack: ingests live or synthetic market data, reconstructs parent flow events, classifies participant-style signals (smart money, hedging, vol/arbitrage), and serves real-time + replay APIs to a terminal-style web UI. https://flow.deltaisland.io
Find a file
2025-12-27 23:02:11 -05:00
.github/workflows Add Discord notification workflow 2025-12-27 19:06:54 -05:00
apps Harden dev startup and web typecheck 2025-12-27 21:20:22 -05:00
packages Add flow packet clustering 2025-12-27 20:25:32 -05:00
scripts Scaffold monorepo dev setup 2025-12-27 18:45:26 -05:00
services Add ingest adapter seam and IBKR stub 2025-12-27 23:02:11 -05:00
.gitignore Fix web dev startup 2025-12-27 19:51:43 -05:00
bun.lock Harden dev startup and web typecheck 2025-12-27 21:20:22 -05:00
docker-compose.yml Add equity prints ingestion 2025-12-27 19:21:01 -05:00
package.json Scaffold monorepo dev setup 2025-12-27 18:45:26 -05:00
README.md Add ingest adapter seam and IBKR stub 2025-12-27 23:02:11 -05:00
tsconfig.base.json Scaffold monorepo dev setup 2025-12-27 18:45:26 -05:00

Real-Time Options Flow & Off-Exchange Analysis

This repository contains a real-time market-flow analysis platform focused on options flow, off-exchange equity trades, and inferred institutional behavior, built for low-latency, explainable analysis rather than black-box signals.

The system ingests real-time options trades/quotes and equity prints, clusters raw activity into higher-level flow events (sweeps, spreads, rolls, ladders), applies rule-first classifiers, and visualizes the results through a high-performance, TradingView-smooth interface with full replay and backtesting support.

CURRENT STATE (Plan Progress)

Plan progress (rough): [####------]

Done now (in repo):

  • Bun monorepo + infra docker compose (ClickHouse, Redis, NATS JetStream)
  • Shared event schemas + logging + config helpers
  • Synthetic options/equity prints published to NATS and persisted to ClickHouse
  • Deterministic option FlowPacket clustering (time window) + persistence
  • API: REST for prints/flow packets, WS for live options/equities/flow, replay endpoints
  • UI: live tapes for options/equities/flow + replay toggle + pause controls

In progress / blocked:

  • Real data adapters (requires licensed data source)
  • Rolling stats and advanced clustering

Not started:

  • Classifiers + alert scoring
  • Dark pool inference
  • Candle service and chart overlays
  • Auth / secure deployment

Core Principles

  • Explainability first — every alert and signal is backed by observable data and explicit logic.
  • Event-sourced architecture — all raw and derived events are persisted and replayable.
  • Market microstructure correctness — conservative handling of aggressor inference, OI, and off-exchange prints.
  • Low-latency, tangible UX — smooth real-time interaction that feels like an instrument panel, not a spreadsheet.

Current Capabilities

  • Synthetic options/equity prints with deterministic sequencing
  • Ingest adapter seam (env-selected, default synthetic) for options and equities
  • Raw event persistence in ClickHouse + streaming via NATS JetStream
  • Deterministic option FlowPacket clustering (time-window)
  • API gateway with REST, WS, and replay endpoints
  • UI tapes for options/equities/flow packets with live/replay toggle and pause controls

Planned Capabilities (from PLAN.md)

  • Real-time licensed market data ingestors (options + equities)
  • Rule-first classifiers and alert scoring
  • Dark pool inference and evidence linking
  • Candle aggregation + chart overlays
  • Replay/backtesting metrics and calibration

Tech Stack

  • Runtime & tooling: Bun
  • Language: TypeScript
  • Frontend: Next.js + React
  • Realtime: WebSockets
  • Event streaming: NATS JetStream or Redpanda
  • Storage: ClickHouse, Redis
  • Charting: TradingView Lightweight Charts + custom canvas/WebGL overlays

Repository Structure

apps/ web/ services/ ingest-options/ ingest-equities/ compute/ api/ packages/ types/ ui/ chart/

Build and Run

Install dependencies:

  • bun install

Start infra:

  • docker compose up -d

Start everything (infra + services + web):

  • bun run dev

Run just the web app (auto-picks a free port in 3001-3005):

  • bun --cwd apps/web run dev

Run just the API:

  • bun --cwd services/api run dev

Run tests:

  • bun test

Status

Active build for personal, non-delayed analytical use. Multi-user access and redistribution are intentionally out of scope.

Non-Goals

  • No black-box AI predictions
  • No profit guarantees
  • No real-time data redistribution
  • No guessing at intent without evidence

License / Usage

For research and personal analytical use.
Market data usage is subject to the terms of the data providers.