Refresh README to reflect current capabilities

This commit is contained in:
dirtydishes 2026-01-06 15:12:00 -05:00
parent 8fc8361390
commit 62ad71a7a7
3 changed files with 12 additions and 8 deletions

View file

@ -4,7 +4,7 @@ CLICKHOUSE_DATABASE=default
REDIS_URL=redis://localhost:6379 REDIS_URL=redis://localhost:6379
# Options ingest # Options ingest
OPTIONS_INGEST_ADAPTER=alpaca OPTIONS_INGEST_ADAPTER=synthetic
ALPACA_KEY_ID= ALPACA_KEY_ID=
ALPACA_SECRET_KEY= ALPACA_SECRET_KEY=
ALPACA_REST_URL=https://data.alpaca.markets ALPACA_REST_URL=https://data.alpaca.markets

View file

@ -22,15 +22,17 @@ Done now (in repo):
- UI: alerts + classifier hits panels, ticker filter, evidence drawer, severity strip - UI: alerts + classifier hits panels, ticker filter, evidence drawer, severity strip
- Databento historical replay adapter (options) with symbol mapping - Databento historical replay adapter (options) with symbol mapping
- Alpaca options adapter (dev-only, bounded contract list) - Alpaca options adapter (dev-only, bounded contract list)
- IBKR options adapter (single-underlying bridge via `ib_insync`)
- Dark-pool-style inference (absorbed blocks, stealth accumulation, distribution) with WS/REST surfaces and UI list
- Testing-mode throttling for ingest to reduce CPU during local dev - Testing-mode throttling for ingest to reduce CPU during local dev
In progress / blocked: In progress / blocked:
- Live data adapters beyond dev-only feeds (requires licensed data source) - Production-grade licensed live data feeds (beyond current dev/test bridges)
- Advanced clustering (spreads/rolls beyond basic structure tags) - Advanced clustering (spreads/rolls beyond basic structure tags)
- Candles/overlays service (scaffolded, not yet emitting data)
Not started: Not started:
- Dark pool inference - Reference data/corporate action enrichment
- Candle service and chart overlays
- Auth / secure deployment - Auth / secure deployment
## Core Principles ## Core Principles
@ -43,7 +45,7 @@ Not started:
## Current Capabilities ## Current Capabilities
- Synthetic options/equity prints with deterministic sequencing across the S&P 500 - Synthetic options/equity prints with deterministic sequencing across the S&P 500
- Ingest adapter seam (env-selected; options default `alpaca`, equities default `synthetic`) - Ingest adapter seam (env-selected; options default `synthetic`, equities default `synthetic`)
- Raw event persistence in ClickHouse + streaming via NATS JetStream - Raw event persistence in ClickHouse + streaming via NATS JetStream
- Deterministic option FlowPacket clustering (time-window) - Deterministic option FlowPacket clustering (time-window)
- Rolling stats baselines in Redis with z-score features on FlowPackets - Rolling stats baselines in Redis with z-score features on FlowPackets
@ -53,14 +55,16 @@ Not started:
- API gateway with REST, WS, and replay endpoints - API gateway with REST, WS, and replay endpoints
- UI tapes for options/equities/flow packets + alerts/hits with live/replay toggle and pause controls - UI tapes for options/equities/flow packets + alerts/hits with live/replay toggle and pause controls
- Alpaca options adapter (dev-only) with bounded contract selection - Alpaca options adapter (dev-only) with bounded contract selection
- IBKR options adapter (single-underlying bridge via Python sidecar)
- Databento historical replay adapter (options, Python sidecar) - Databento historical replay adapter (options, Python sidecar)
- Dark-pool-style inference (absorbed blocks, stealth accumulation, distribution) with evidence links and replay
## Planned Capabilities (from PLAN.md) ## Planned Capabilities (from PLAN.md)
- Real-time licensed market data ingestors (options + equities) - Real-time licensed market data ingestors (options + equities)
- Dark pool inference and evidence linking
- Candle aggregation + chart overlays - Candle aggregation + chart overlays
- Replay/backtesting metrics and calibration - Replay/backtesting metrics and calibration
- Reference data, symbology, and corporate-action handling
## Tech Stack ## Tech Stack
@ -107,7 +111,7 @@ Run just the API:
- `bun --cwd services/api run dev` - `bun --cwd services/api run dev`
Adapter selection (env): Adapter selection (env):
- Options: `OPTIONS_INGEST_ADAPTER` (defaults to `alpaca`) - Options: `OPTIONS_INGEST_ADAPTER` (defaults to `synthetic`; supported: `synthetic`, `alpaca`, `ibkr`, `databento`)
- Equities: `EQUITIES_INGEST_ADAPTER` (defaults to `synthetic`) - Equities: `EQUITIES_INGEST_ADAPTER` (defaults to `synthetic`)
- Compute: `COMPUTE_DELIVER_POLICY` (`new` default), `COMPUTE_CONSUMER_RESET` (force skip backlog) - Compute: `COMPUTE_DELIVER_POLICY` (`new` default), `COMPUTE_CONSUMER_RESET` (force skip backlog)
- Rolling stats: `REDIS_URL`, `ROLLING_WINDOW_SIZE`, `ROLLING_TTL_SEC` - Rolling stats: `REDIS_URL`, `ROLLING_WINDOW_SIZE`, `ROLLING_TTL_SEC`

View file

@ -31,7 +31,7 @@ const envSchema = z.object({
NATS_URL: z.string().default("nats://localhost:4222"), NATS_URL: z.string().default("nats://localhost:4222"),
CLICKHOUSE_URL: z.string().default("http://localhost:8123"), CLICKHOUSE_URL: z.string().default("http://localhost:8123"),
CLICKHOUSE_DATABASE: z.string().default("default"), CLICKHOUSE_DATABASE: z.string().default("default"),
OPTIONS_INGEST_ADAPTER: z.string().min(1).default("alpaca"), OPTIONS_INGEST_ADAPTER: z.string().min(1).default("synthetic"),
ALPACA_KEY_ID: z.string().default(""), ALPACA_KEY_ID: z.string().default(""),
ALPACA_SECRET_KEY: z.string().default(""), ALPACA_SECRET_KEY: z.string().default(""),
ALPACA_REST_URL: z.string().default("https://data.alpaca.markets"), ALPACA_REST_URL: z.string().default("https://data.alpaca.markets"),