Probability estimates from market event data
Store price and signal events, compute calibrated probability views, and query those results through dashboards, APIs, or an AI client.
Architecture
Client Layer
- Web App (React)
- Python SDK
- AI Query Engine
API Layer
- REST API
- WebSocket Streaming
- Analytics Endpoints
Processing Layer
- Rust Core (469K/s)
- Elixir Query Service
- Go Control Plane
Storage Layer
- Parquet Columnar
- WAL Durability
- Point-in-Time Snapshots
Technical capabilities
Where does the data live?
32 partitionsAccepted events are recoverable from a CRC32-checked write-ahead log and Snappy-compressed Parquet files. Entity IDs map to 32 partitions by default; the partition count is configurable.
- By Symbol: entity_id = 'NQ' or 'BTC'
- By Session: event_type tags for RTH/ETH
- By Date: Microsecond timestamp precision
How fast is time slicing?
11.9μs p99The published Core reference benchmark measured 11.9μs p99 indexed reads. Bar generation and range slicing scan or aggregate more data, so benchmark them with your event shape and hardware.
- Indexed-read reference: 11.9μs p99
- Batch-ingestion reference: 469K events/sec
- No published end-to-end bar benchmark
How are corrections handled?
Append-only correctionsImmutable append-only event sourcing with correction events. Full audit trails with as_of temporal queries.
- Original events are never modified
- Corrections appended with references
- as_of queries show pre-correction state
Can past analysis be reproduced?
Replayable inputsAllSource preserves the ordered inputs needed for replay and point-in-time reconstruction. Reproducible analysis also requires deterministic projection code, versioned models, and captured configuration.
- Snapshots: Every 100 events or 1 hour
- as_of queries: Point-in-time state
- Event Replay: Full deterministic replay
How easy is Python integration?
Multi-platformUse the HTTP API from any Python client or the Python SDK in the AllSource repository. JSON responses can be loaded into pandas; WebSocket streaming supports live updates.
- REST API: GET /api/v1/events/query
- WebSocket: WS /api/v1/events/stream
- Python client source in sdks/python-client
Does it support concurrent users?
Measure your routeCore uses a sharded concurrent map for hot reads. Capacity depends on filters, payload size, API hops, cache state, and hardware; load-test your end-to-end route before setting an SLO.
- Concurrent in-memory read path
- Prometheus latency and throughput metrics
- No universal hosted QPS claim
Available analytics API
Product boundary
Available now
Event ingestion, time-range queries, replay, snapshots, WebSocket streams, and three analytics endpoints.
You provide
Market-data licensing, bar construction, feature definitions, probability models, calibration, and validation.
Not claimed here
No built-in trading strategy, return guarantee, or shipped natural-language quant endpoint is implied.
Build on durable market events
Use AllSource for ordered history, replay, and current analytics endpoints. Keep your probability model explicit and independently validated.
