Skip to main content

ExecutionClientAdapter

Struct ExecutionClientAdapter 

Source
pub struct ExecutionClientAdapter {
    pub client_id: ClientId,
    pub venue: Venue,
    pub account_id: AccountId,
    pub oms_type: OmsType,
    /* private fields */
}
Expand description

Wraps an [ExecutionClient], managing its lifecycle and providing access to the client.

Fields§

§client_id: ClientId§venue: Venue§account_id: AccountId§oms_type: OmsType

Implementations§

Source§

impl ExecutionClientAdapter

Source

pub fn new(client: Box<dyn ExecutionClient>) -> Self

Creates a new ExecutionClientAdapter with the given client.

Source

pub async fn connect(&mut self) -> Result<()>

Connects the execution client to the venue.

§Errors

Returns an error if connection fails.

Source

pub async fn disconnect(&mut self) -> Result<()>

Disconnects the execution client from the venue.

§Errors

Returns an error if disconnection fails.

Source

pub async fn generate_order_status_report( &self, cmd: &GenerateOrderStatusReport, ) -> Result<Option<OrderStatusReport>>

Generates a single order status report.

§Errors

Returns an error if report generation fails.

Source

pub async fn generate_order_status_reports( &self, cmd: &GenerateOrderStatusReports, ) -> Result<Vec<OrderStatusReport>>

Generates multiple order status reports.

§Errors

Returns an error if report generation fails.

Source

pub async fn generate_fill_reports( &self, cmd: GenerateFillReports, ) -> Result<Vec<FillReport>>

Generates fill reports based on execution results.

§Errors

Returns an error if fill report generation fails.

Source

pub async fn generate_position_status_reports( &self, cmd: &GeneratePositionStatusReports, ) -> Result<Vec<PositionStatusReport>>

Generates position status reports.

§Errors

Returns an error if generation fails.

Source

pub async fn generate_mass_status( &self, lookback_mins: Option<u64>, ) -> Result<Option<ExecutionMassStatus>>

Generates mass status for executions.

§Errors

Returns an error if status generation fails.

Source

pub fn register_external_order( &self, client_order_id: ClientOrderId, venue_order_id: VenueOrderId, instrument_id: InstrumentId, strategy_id: StrategyId, ts_init: UnixNanos, )

Registers an external order for tracking by the execution client.

This is called after reconciliation creates an external order, allowing the execution client to track it for subsequent events (e.g., cancellations).

Trait Implementations§

Source§

impl Debug for ExecutionClientAdapter

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Deref for ExecutionClientAdapter

Source§

type Target = Box<dyn ExecutionClient>

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl DerefMut for ExecutionClientAdapter

Source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.

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<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

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

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

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
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.
§

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

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