pub enum MaxGainsInQuote {
Finite(NonZero<Decimal256>),
PosInfinity,
}
Expand description
The max gains for a position.
Max gains are always specified by the user in terms of the quote currency.
Note that when opening long positions in collateral-is-base markets, infinite max gains is possible. However, this is an error in the case of short positions or collateral-is-quote markets.
Variants§
Implementations§
source§impl MaxGainsInQuote
impl MaxGainsInQuote
sourcepub fn calculate_counter_collateral(
self,
market_type: MarketType,
collateral: NonZero<Collateral>,
notional_size_in_collateral: Signed<Collateral>,
leverage_to_notional: SignedLeverageToNotional,
) -> Result<NonZero<Collateral>>
pub fn calculate_counter_collateral( self, market_type: MarketType, collateral: NonZero<Collateral>, notional_size_in_collateral: Signed<Collateral>, leverage_to_notional: SignedLeverageToNotional, ) -> Result<NonZero<Collateral>>
Calculate the needed counter collateral
Trait Implementations§
source§impl Clone for MaxGainsInQuote
impl Clone for MaxGainsInQuote
source§fn clone(&self) -> MaxGainsInQuote
fn clone(&self) -> MaxGainsInQuote
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 Debug for MaxGainsInQuote
impl Debug for MaxGainsInQuote
source§impl<'de> Deserialize<'de> for MaxGainsInQuote
impl<'de> Deserialize<'de> for MaxGainsInQuote
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Display for MaxGainsInQuote
impl Display for MaxGainsInQuote
source§impl FromStr for MaxGainsInQuote
impl FromStr for MaxGainsInQuote
source§impl JsonSchema for MaxGainsInQuote
impl JsonSchema for MaxGainsInQuote
source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
source§fn json_schema(_gen: &mut SchemaGenerator) -> Schema
fn json_schema(_gen: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref
keyword. Read moresource§impl PartialEq for MaxGainsInQuote
impl PartialEq for MaxGainsInQuote
source§fn eq(&self, other: &MaxGainsInQuote) -> bool
fn eq(&self, other: &MaxGainsInQuote) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl Serialize for MaxGainsInQuote
impl Serialize for MaxGainsInQuote
source§impl TryFrom<&str> for MaxGainsInQuote
impl TryFrom<&str> for MaxGainsInQuote
impl Copy for MaxGainsInQuote
impl Eq for MaxGainsInQuote
impl StructuralPartialEq for MaxGainsInQuote
Auto Trait Implementations§
impl Freeze for MaxGainsInQuote
impl RefUnwindSafe for MaxGainsInQuote
impl Send for MaxGainsInQuote
impl Sync for MaxGainsInQuote
impl Unpin for MaxGainsInQuote
impl UnwindSafe for MaxGainsInQuote
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
Casts
self
to type T
. The semantics of numeric casting with the as
operator are followed, so <T as As>::as_::<U>
can be used in the same way as T as U
for numeric conversions. Read moresource§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
source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> QueryResultExt for Twhere
T: Serialize,
impl<T> QueryResultExt for Twhere
T: Serialize,
source§fn query_result(&self) -> Result<Binary, Error>
fn query_result(&self) -> Result<Binary, Error>
Convert the value to its JSON representation