Expand description
Provider-neutral data-feed and notification integration contracts (traits), plus
dependency-free reference implementations.
Provider-neutral integration contracts: a data-feed trait and a notification-sink trait, plus
dependency-free reference implementations (an in-memory feed, a logging sink, and a
transport-agnostic webhook-shaped sink). Tools embedding kestrel-chartkit implement these
traits with their own broker/exchange/webhook specifics; this crate never depends on a
specific provider, and ships no HTTP client — WebhookNotificationSink takes the actual
transport as an injected closure instead.
Structs§
- InMemory
Data Feed - A fully generic, dependency-free
DataFeedAdapter: serves bars from an in-memory table. Useful for backtests, replay, and tests — not tied to any provider. - Logging
Notification Sink - A fully generic, dependency-free
NotificationSink: appends every event to an in-memory log. Useful for tests, or as a base to wrap with a real transport. - Notification
Event - Webhook
Notification Sink - A transport-agnostic webhook-shaped
NotificationSink: holds a destinationurland an injectedsendclosure, so this crate needs no HTTP client dependency — works with any webhook-style endpoint (Slack, Discord, a generic HTTP receiver); the consumer supplies the actual transport.
Enums§
Traits§
- Data
Feed Adapter - Historical/live bar data source contract. Provider clients (broker APIs, exchange WebSockets, vendor SDKs) live in consuming applications, not here.
- Notification
Sink - Notification-channel contract, decoupled from any specific transport (webhook, email, push, broker action). Deterministic chart-kit events (alerts, scenario transitions, fills) are the producer; the transport is entirely the consumer’s concern.