Skip to main content

ForeignAdapter

Struct ForeignAdapter 

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

A Rust Adapter backed by a ForeignDispatcher.

Implementations§

Source§

impl ForeignAdapter

Source

pub fn new( exchange: Exchange, features: impl IntoIterator<Item = Feature>, dispatcher: Arc<dyn ForeignDispatcher>, ) -> Self

Creates an adapter with binding-owned exchange and feature metadata.

Source

pub fn features(&self) -> &HashSet<Feature>

The configured features without duplicates.

Source

pub fn dispatcher(&self) -> &dyn ForeignDispatcher

The binding-specific dispatcher.

Trait Implementations§

Source§

impl Adapter for ForeignAdapter

Source§

fn exchange(&self) -> Exchange

Which exchange this adapter talks to.
Source§

fn supports(&self, feature: Feature) -> bool

Whether this configured adapter can use a feature. Read more
Source§

fn markets(&self, kind: MarketKind) -> BoxFuture<'_, Result<Vec<MarketInfo>>>

Lists the exchange’s markets of one kind.
Source§

fn trades( &self, market: &Market, limit: Option<u32>, ) -> BoxFuture<'_, Result<Vec<Trade>>>

Reads the most recent trades on a market.
Source§

fn order_book( &self, market: &Market, depth: Option<u32>, ) -> BoxFuture<'_, Result<OrderBook>>

Reads an order book snapshot.
Source§

fn ticker(&self, market: &Market) -> BoxFuture<'_, Result<Ticker>>

Reads a provider ticker summary for one market.
Source§

fn candles(&self, request: &CandleRequest) -> BoxFuture<'_, Result<Vec<Candle>>>

Reads historical candles.
Source§

fn subscribe( &self, subscription: &Subscription, config: &StreamConfig, ) -> BoxFuture<'_, Result<MarketStream>>

Opens a live market-data subscription. Read more
Source§

fn balances(&self) -> BoxFuture<'_, Result<Vec<Balance>>>

Reads the account’s balances.
Source§

fn order_rules(&self, market: &Market) -> BoxFuture<'_, Result<OrderRules>>

Reads current order fees, limits, supported combinations, and balances.
Source§

fn asset_networks( &self, asset: &str, ) -> BoxFuture<'_, Result<Vec<AssetNetwork>>>

Reads live transfer rules for one asset.
Source§

fn deposit_addresses(&self) -> BoxFuture<'_, Result<Vec<DepositAddressEntry>>>

Lists all exchange-issued deposit addresses for this account. Read more
Source§

fn deposit_address( &self, request: &DepositAddressRequest, ) -> BoxFuture<'_, Result<DepositAddress>>

Reads an exchange-issued deposit address.
Source§

fn create_deposit_address( &self, request: &DepositAddressRequest, ) -> BoxFuture<'_, Result<DepositAddress>>

Requests creation of an exchange-issued deposit address. Read more
Source§

fn prepare_withdrawal( &self, request: &WithdrawRequest, ) -> BoxFuture<'_, Result<WithdrawalQuote>>

Performs live source-account checks without submitting a withdrawal.
Source§

fn withdraw( &self, request: &WithdrawRequest, ) -> BoxFuture<'_, Result<Withdrawal>>

Submits one withdrawal without automatic retry.
Source§

fn deposit( &self, request: &TransferLookupRequest, ) -> BoxFuture<'_, Result<Deposit>>

Looks up one deposit by exchange UUID or transaction ID.
Source§

fn withdrawal( &self, request: &TransferLookupRequest, ) -> BoxFuture<'_, Result<Withdrawal>>

Looks up one withdrawal by exchange UUID or transaction ID.
Source§

fn cancel_withdrawal(&self, withdrawal_id: &str) -> BoxFuture<'_, Result<()>>

Cancels a withdrawal that the exchange still permits to be cancelled.
Source§

fn deposits( &self, request: &TransferHistoryRequest, ) -> BoxFuture<'_, Result<Page<Deposit>>>

Reads one page of deposit history.
Source§

fn withdrawals( &self, request: &TransferHistoryRequest, ) -> BoxFuture<'_, Result<Page<Withdrawal>>>

Reads one page of withdrawal history.
Source§

fn open_orders( &self, market: Option<&Market>, ) -> BoxFuture<'_, Result<Vec<Order>>>

Reads the account’s open orders, optionally narrowed to one market.
Source§

fn order(&self, market: &Market, order_id: &str) -> BoxFuture<'_, Result<Order>>

Reads one order by the exchange’s own identifier.
Source§

fn order_by_client_id( &self, market: &Market, client_id: &str, ) -> BoxFuture<'_, Result<Order>>

Reads one order by the caller-assigned identifier supplied at placement.
Source§

fn orders_by_ids( &self, request: &OrderLookupRequest, ) -> BoxFuture<'_, Result<Vec<Order>>>

Looks up up to 100 orders by exchange or caller-assigned identifiers.
Source§

fn order_history( &self, request: &OrderHistoryRequest, ) -> BoxFuture<'_, Result<Page<Order>>>

Reads one newest-first page of completed or cancelled orders.
Source§

fn subscribe_account( &self, config: &StreamConfig, ) -> BoxFuture<'_, Result<AccountStream>>

Opens a live private account subscription. Read more
Source§

fn place_order(&self, request: &OrderRequest) -> BoxFuture<'_, Result<Order>>

Places an order.
Source§

fn cancel_order( &self, market: &Market, order_id: &str, ) -> BoxFuture<'_, Result<()>>

Cancels an order by the exchange’s own identifier.
Source§

fn cancel_order_by_client_id( &self, market: &Market, client_id: &str, ) -> BoxFuture<'_, Result<()>>

Cancels an order by the caller-assigned identifier supplied at placement.
Source§

fn cancel_orders( &self, request: &CancelOrdersRequest, ) -> BoxFuture<'_, Result<CancelOrdersResult>>

Cancels multiple orders and returns every per-order outcome.
Source§

fn positions( &self, market: Option<&Market>, ) -> BoxFuture<'_, Result<Vec<Position>>>

Reads open positions, optionally narrowed to one market.
Source§

fn margin_summary(&self) -> BoxFuture<'_, Result<MarginSummary>>

Reads account-wide margin state.
Source§

fn funding_rates( &self, request: &HistoryRequest, ) -> BoxFuture<'_, Result<Page<FundingRate>>>

Reads a market’s funding rate history.
Source§

fn funding_payments( &self, request: &HistoryRequest, ) -> BoxFuture<'_, Result<Page<FundingPayment>>>

Reads the account’s funding payment history.
Source§

fn set_margin(&self, request: &MarginRequest) -> BoxFuture<'_, Result<()>>

Sets leverage or margin mode on a market.

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