Trait lfest::prelude::MarketUpdate

source ·
pub trait MarketUpdate<Q, UserOrderId>: Debug
where Q: Currency, UserOrderId: Clone,
{ // Required methods fn limit_order_filled( &self, limit_order: &LimitOrder<Q, UserOrderId, Pending<Q>>, ) -> Option<Q>; fn validate_market_update(&self, price_filter: &PriceFilter) -> Result<()>; fn update_market_state(&self, market_state: &mut MarketState); }
Expand description

The interface of what a market update must be able to do.

Required Methods§

source

fn limit_order_filled( &self, limit_order: &LimitOrder<Q, UserOrderId, Pending<Q>>, ) -> Option<Q>

Checks if this market update triggered a specific limit order, and if so, then how much.

source

fn validate_market_update(&self, price_filter: &PriceFilter) -> Result<()>

Checks if the market update satisfies the PriceFilter.

source

fn update_market_state(&self, market_state: &mut MarketState)

Update the MarketState with new information.

Implementors§

source§

impl<Q, UserOrderId> MarketUpdate<Q, UserOrderId> for Bba
where Q: Currency, UserOrderId: Clone,

source§

impl<Q, UserOrderId> MarketUpdate<Q, UserOrderId> for Candle
where Q: Currency, UserOrderId: Clone,

source§

impl<Q, UserOrderId> MarketUpdate<Q, UserOrderId> for Trade<Q>
where Q: Currency, UserOrderId: Clone,