Skip to main content

DatabentoDataClient

Struct DatabentoDataClient 

Source
pub struct DatabentoDataClient { /* private fields */ }
Expand description

A Databento data client that combines live streaming and historical data functionality.

This client uses the existing DatabentoFeedHandler for live data subscriptions and DatabentoHistoricalClient for historical data requests. It supports multiple datasets simultaneously, with separate feed handlers per dataset.

Implementations§

Source§

impl DatabentoDataClient

Source

pub fn new( client_id: ClientId, config: DatabentoDataClientConfig, clock: &'static AtomicTime, ) -> Result<Self>

Creates a new DatabentoDataClient instance.

§Errors

Returns an error if client creation or publisher configuration loading fails.

Trait Implementations§

Source§

impl DataClient for DatabentoDataClient

Source§

fn client_id(&self) -> ClientId

Returns the client identifier.

Source§

fn venue(&self) -> Option<Venue>

Returns the venue associated with this client (None for multi-venue clients).

Source§

fn start(&mut self) -> Result<()>

Starts the data client.

§Errors

Returns an error if the client fails to start.

Source§

fn stop(&mut self) -> Result<()>

Stops the data client and cancels all active subscriptions.

§Errors

Returns an error if the client fails to stop cleanly.

Source§

fn is_connected(&self) -> bool

Returns whether the client is currently connected.

Source§

fn subscribe_instrument(&mut self, cmd: SubscribeInstrument) -> Result<()>

Subscribes to instrument definition data for the specified instrument.

§Errors

Returns an error if the subscription request fails.

Source§

fn subscribe_quotes(&mut self, cmd: SubscribeQuotes) -> Result<()>

Subscribes to quote tick data for the specified instruments.

§Errors

Returns an error if the subscription request fails.

Source§

fn subscribe_trades(&mut self, cmd: SubscribeTrades) -> Result<()>

Subscribes to trade tick data for the specified instruments.

§Errors

Returns an error if the subscription request fails.

Source§

fn subscribe_book_deltas(&mut self, cmd: SubscribeBookDeltas) -> Result<()>

Subscribes to order book delta updates for the specified instruments.

§Errors

Returns an error if the subscription request fails.

Source§

fn subscribe_instrument_status( &mut self, cmd: SubscribeInstrumentStatus, ) -> Result<()>

Subscribes to instrument status updates for the specified instruments.

§Errors

Returns an error if the subscription request fails.

Source§

fn reset(&mut self) -> Result<()>

Resets the data client to its initial state. Read more
Source§

fn dispose(&mut self) -> Result<()>

Disposes of client resources and cleans up. Read more
Source§

fn connect<'life0, 'async_trait>( &'life0 mut self, ) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Connects the client to the data provider. Read more
Source§

fn disconnect<'life0, 'async_trait>( &'life0 mut self, ) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Disconnects the client from the data provider. Read more
Source§

fn is_disconnected(&self) -> bool

Returns true if the client is currently disconnected.
Source§

fn unsubscribe_quotes(&mut self, cmd: &UnsubscribeQuotes) -> Result<()>

Unsubscribes from quote updates for the specified instrument. Read more
Source§

fn unsubscribe_trades(&mut self, cmd: &UnsubscribeTrades) -> Result<()>

Unsubscribes from trade updates for the specified instrument. Read more
Source§

fn unsubscribe_book_deltas(&mut self, cmd: &UnsubscribeBookDeltas) -> Result<()>

Unsubscribes from order book delta updates for the specified instrument. Read more
Source§

fn unsubscribe_instrument_status( &mut self, cmd: &UnsubscribeInstrumentStatus, ) -> Result<()>

Unsubscribes from instrument status updates for the specified instrument. Read more
Source§

fn request_instruments(&self, request: RequestInstruments) -> Result<()>

Requests a list of instruments from the provider for a given venue. Read more
Source§

fn request_instrument(&self, request: RequestInstrument) -> Result<()>

Requests detailed data for a single instrument. Read more
Source§

fn request_quotes(&self, request: RequestQuotes) -> Result<()>

Requests historical or streaming quote data for a specified instrument. Read more
Source§

fn request_trades(&self, request: RequestTrades) -> Result<()>

Requests historical or streaming trade data for a specified instrument. Read more
Source§

fn request_bars(&self, request: RequestBars) -> Result<()>

Requests historical or streaming bar data for a specified instrument and bar type. Read more
Source§

fn request_book_depth(&self, request: RequestBookDepth) -> Result<()>

Requests historical order book depth data for a specified instrument. Read more
Source§

fn request_book_deltas(&self, request: RequestBookDeltas) -> Result<()>

Requests historical order book delta data for a specified instrument. Read more
Source§

fn subscribe(&mut self, cmd: SubscribeCustomData) -> Result<(), Error>

Subscribes to custom data types according to the command. Read more
Source§

fn subscribe_instruments( &mut self, cmd: SubscribeInstruments, ) -> Result<(), Error>

Subscribes to instruments list for the specified venue. Read more
Source§

fn subscribe_book_depth10( &mut self, cmd: SubscribeBookDepth10, ) -> Result<(), Error>

Subscribes to top 10 order book depth updates for the specified instrument. Read more
Source§

fn subscribe_mark_prices( &mut self, cmd: SubscribeMarkPrices, ) -> Result<(), Error>

Subscribes to mark price updates for the specified instrument. Read more
Source§

fn subscribe_index_prices( &mut self, cmd: SubscribeIndexPrices, ) -> Result<(), Error>

Subscribes to index price updates for the specified instrument. Read more
Source§

fn subscribe_funding_rates( &mut self, cmd: SubscribeFundingRates, ) -> Result<(), Error>

Subscribes to funding rate updates for the specified instrument. Read more
Source§

fn subscribe_bars(&mut self, cmd: SubscribeBars) -> Result<(), Error>

Subscribes to bar updates of the specified bar type. Read more
Source§

fn subscribe_instrument_close( &mut self, cmd: SubscribeInstrumentClose, ) -> Result<(), Error>

Subscribes to instrument close events for the specified instrument. Read more
Source§

fn subscribe_option_greeks( &mut self, cmd: SubscribeOptionGreeks, ) -> Result<(), Error>

Subscribes to exchange-provided option greeks for the specified instrument. Read more
Source§

fn unsubscribe(&mut self, cmd: &UnsubscribeCustomData) -> Result<(), Error>

Unsubscribes from custom data types according to the command. Read more
Source§

fn unsubscribe_instruments( &mut self, cmd: &UnsubscribeInstruments, ) -> Result<(), Error>

Unsubscribes from instruments list for the specified venue. Read more
Source§

fn unsubscribe_instrument( &mut self, cmd: &UnsubscribeInstrument, ) -> Result<(), Error>

Unsubscribes from data for the specified instrument. Read more
Source§

fn unsubscribe_book_depth10( &mut self, cmd: &UnsubscribeBookDepth10, ) -> Result<(), Error>

Unsubscribes from top 10 order book depth updates for the specified instrument. Read more
Source§

fn unsubscribe_mark_prices( &mut self, cmd: &UnsubscribeMarkPrices, ) -> Result<(), Error>

Unsubscribes from mark price updates for the specified instrument. Read more
Source§

fn unsubscribe_index_prices( &mut self, cmd: &UnsubscribeIndexPrices, ) -> Result<(), Error>

Unsubscribes from index price updates for the specified instrument. Read more
Source§

fn unsubscribe_funding_rates( &mut self, cmd: &UnsubscribeFundingRates, ) -> Result<(), Error>

Unsubscribes from funding rate updates for the specified instrument. Read more
Source§

fn unsubscribe_bars(&mut self, cmd: &UnsubscribeBars) -> Result<(), Error>

Unsubscribes from bar updates of the specified bar type. Read more
Source§

fn unsubscribe_instrument_close( &mut self, cmd: &UnsubscribeInstrumentClose, ) -> Result<(), Error>

Unsubscribes from instrument close events for the specified instrument. Read more
Source§

fn unsubscribe_option_greeks( &mut self, cmd: &UnsubscribeOptionGreeks, ) -> Result<(), Error>

Unsubscribes from exchange-provided option greeks for the specified instrument. Read more
Source§

fn request_data(&self, request: RequestCustomData) -> Result<(), Error>

Sends a custom data request to the provider. Read more
Source§

fn request_book_snapshot( &self, request: RequestBookSnapshot, ) -> Result<(), Error>

Requests a snapshot of the order book for a specified instrument. Read more
Source§

fn request_funding_rates( &self, request: RequestFundingRates, ) -> Result<(), Error>

Requests historical or streaming funding rate data for a specified instrument. Read more
Source§

fn request_forward_prices( &self, request: RequestForwardPrices, ) -> Result<(), Error>

Requests forward/underlying prices for derivatives instruments. Read more
Source§

impl Debug for DatabentoDataClient

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more