# EdgeMarketSignal: Edge-Native Market Data Plane This repository provides a compact, production-oriented starting point for an edge-native market data plane that extracts privacy-preserving signals from venue feeds, enables delta-sync for offline modes, and offers a clean pathway to central risk/strategy engines. - Edge-first signal extraction: lightweight per-venue summaries (top-of-book changes, mid-price, last-trade prices, liquidity metrics). - Local summarization and aggregation: per-venue metrics with compact representations. - Privacy-preserving sharing: secure aggregation and optional privacy budgets. - Delta-sync: deterministic reconciliation on reconnects with auditability. - Transport-agnostic adapters: pluggable interfaces for FIX/WebSocket/MQTT (future work). - Security: basic governance metadata scaffolding (AuditLog placeholders). - MVP roadmap: end-to-end toy demonstration with 2 venues, 2 central analyzers. ## EnergiBridge Interop (IR) - This repo now includes a lightweight EnergiBridge-compatible intermediate representation (IR) to map edge primitives to a common cross-venue interface. - Key primitives: - LocalMarketContext: per-venue local state snapshot. - SharedSignalsIR: IR payload carrying core metrics plus optional privacy budgets and version metadata. - Converter: EdgeSignalProcessor.to_ir(signals, context, privacy_budget, version) converts SharedSignals into SharedSignalsIR. Usage sketch: - Compute signals via EdgeSignalProcessor.extract_signals(feed). - Optionally attach a LocalMarketContext for venue context. - Convert to IR via EdgeSignalProcessor.to_ir(signals, context, privacy_budget=0.25, version=1). This addition enables pluggable adapters to interoperate with a canonical IR without altering existing consumers of SharedSignals. This project is designed to be production-friendly, with a real packaging setup, tests, and a clear readme that explains how to extend the system. See pyproject.toml for packaging configuration and the src/edgemarketsignal package for the implementation details.