IMarketDataSubscriber
IMarketDataSubscriber
is a unified interface for components that consume real-time market data events. It supports optional handling of order book updates, trades, and candles.
class IMarketDataSubscriber : public ISubscriber {
public:
virtual ~IMarketDataSubscriber() = default;
virtual void onBookUpdate(const BookUpdateEvent& ev) {}
virtual void onTrade(const TradeEvent& ev) {}
virtual void onCandle(const CandleEvent& ev) {}
};
Purpose
- Serve as a polymorphic listener for all market-facing event types across the system.
Responsibilities
Method | Description |
---|---|
onBookUpdate | Receives BookUpdateEvent from BookUpdateBus . |
onTrade | Receives TradeEvent from TradeBus . |
onCandle | Receives CandleEvent from CandleBus . |
Notes
- Default implementations are no-ops — subscribers override only what they care about.
- Always used in conjunction with
EventBus<T>
and itsPolicy
(sync or async). - Inherits from
ISubscriber
, which providesid()
andmode()
for routing.