Struct lfest::prelude::LimitOrder
source · pub struct LimitOrder<Q, UserOrderId, OrderStatus>{ /* private fields */ }
Expand description
Defines a limit order.
Is generic over:
S
: The order size aka quantity which is denoted in either base or quote currency.
UserOrderId
: The type of user order id to use. Set to ()
if you don’t need one.
Implementations§
source§impl<Q, UserOrderId, OrderStatus> LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> LimitOrder<Q, UserOrderId, OrderStatus>
sourcepub fn user_order_id(&self) -> &UserOrderId
pub fn user_order_id(&self) -> &UserOrderId
Order Id provided by the user, can be any type really.
sourcepub fn state(&self) -> &OrderStatus
pub fn state(&self) -> &OrderStatus
Depending on the status, different information is available.
source§impl<Q, UserOrderId, OrderStatus> LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> LimitOrder<Q, UserOrderId, OrderStatus>
sourcepub fn limit_price(&self) -> QuoteCurrency
pub fn limit_price(&self) -> QuoteCurrency
The limit order price, where it will sit in the orderbook.
source§impl<Q> LimitOrder<Q, (), NewOrder>
impl<Q> LimitOrder<Q, (), NewOrder>
sourcepub fn new(
side: Side,
limit_price: QuoteCurrency,
quantity: Q
) -> Result<Self, OrderError>
pub fn new( side: Side, limit_price: QuoteCurrency, quantity: Q ) -> Result<Self, OrderError>
Create a new limit order without a user_order_id.
§Arguments:
side
: either buy or selllimit_price
: price to execute at or betterquantity
: A positive nonzero quantity of the amount of contracts this order is for.
§Returns:
Either a successfully created order or an OrderError
source§impl<Q, UserOrderId> LimitOrder<Q, UserOrderId, NewOrder>
impl<Q, UserOrderId> LimitOrder<Q, UserOrderId, NewOrder>
sourcepub fn new_with_user_order_id(
side: Side,
limit_price: QuoteCurrency,
quantity: Q,
user_order_id: UserOrderId
) -> Result<Self, OrderError>
pub fn new_with_user_order_id( side: Side, limit_price: QuoteCurrency, quantity: Q, user_order_id: UserOrderId ) -> Result<Self, OrderError>
Create a new limit order
§Arguments:
side
: either buy or selllimit_price
: price to execute at or betterquantity
: How many contracts should be tradeduser_order_id
: The user provided id. This value is ignored by the exchange.
§Returns:
Either a successfully created order or an OrderError
Trait Implementations§
source§impl<Q, UserOrderId, OrderStatus> Clone for LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> Clone for LimitOrder<Q, UserOrderId, OrderStatus>
source§fn clone(&self) -> LimitOrder<Q, UserOrderId, OrderStatus>
fn clone(&self) -> LimitOrder<Q, UserOrderId, OrderStatus>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<Q, UserOrderId, OrderStatus> Debug for LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> Debug for LimitOrder<Q, UserOrderId, OrderStatus>
source§impl<Q, UserOrderId, OrderStatus> PartialEq for LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> PartialEq for LimitOrder<Q, UserOrderId, OrderStatus>
source§fn eq(&self, other: &LimitOrder<Q, UserOrderId, OrderStatus>) -> bool
fn eq(&self, other: &LimitOrder<Q, UserOrderId, OrderStatus>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl<Q, UserOrderId, OrderStatus> Eq for LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> StructuralPartialEq for LimitOrder<Q, UserOrderId, OrderStatus>
Auto Trait Implementations§
impl<Q, UserOrderId, OrderStatus> Freeze for LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> RefUnwindSafe for LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> Send for LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> Sync for LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> Unpin for LimitOrder<Q, UserOrderId, OrderStatus>
impl<Q, UserOrderId, OrderStatus> UnwindSafe for LimitOrder<Q, UserOrderId, OrderStatus>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more