pub struct PoolDelta<T: Unsigned> { /* private fields */ }Expand description
Delta of pool usd values.
Implementations§
Source§impl<T: Unsigned> PoolDelta<T>
impl<T: Unsigned> PoolDelta<T>
Sourcepub fn try_new<P>(
pool: &P,
delta_long_token_usd_value: T::Signed,
delta_short_token_usd_value: T::Signed,
long_token_price: &T,
short_token_price: &T,
) -> Result<Self>where
T: CheckedAdd + CheckedSub + CheckedMul + Clone,
P: Balance<Num = T, Signed = T::Signed> + ?Sized,
pub fn try_new<P>(
pool: &P,
delta_long_token_usd_value: T::Signed,
delta_short_token_usd_value: T::Signed,
long_token_price: &T,
short_token_price: &T,
) -> Result<Self>where
T: CheckedAdd + CheckedSub + CheckedMul + Clone,
P: Balance<Num = T, Signed = T::Signed> + ?Sized,
Create a new PoolDelta.
Sourcepub fn try_from_delta_amounts<P>(
pool: &P,
long_delta_amount: &T::Signed,
short_delta_amount: &T::Signed,
long_token_price: &T,
short_token_price: &T,
) -> Result<Self>where
T: CheckedAdd + CheckedSub + CheckedMul + Clone,
P: Balance<Num = T, Signed = T::Signed> + ?Sized,
pub fn try_from_delta_amounts<P>(
pool: &P,
long_delta_amount: &T::Signed,
short_delta_amount: &T::Signed,
long_token_price: &T,
short_token_price: &T,
) -> Result<Self>where
T: CheckedAdd + CheckedSub + CheckedMul + Clone,
P: Balance<Num = T, Signed = T::Signed> + ?Sized,
Create a new PoolDelta.
Sourcepub fn long_token_price(&self) -> &T
pub fn long_token_price(&self) -> &T
Returns long token price.
Sourcepub fn short_token_price(&self) -> &T
pub fn short_token_price(&self) -> &T
Returns short token price.
Source§impl<T: Unsigned + Clone + Ord> PoolDelta<T>
impl<T: Unsigned + Clone + Ord> PoolDelta<T>
Sourcepub fn initial_diff_value(&self) -> T
pub fn initial_diff_value(&self) -> T
Initial diff usd value.
Sourcepub fn next_diff_value(&self) -> T
pub fn next_diff_value(&self) -> T
Next diff usd value.
Sourcepub fn is_same_side_rebalance(&self) -> bool
pub fn is_same_side_rebalance(&self) -> bool
Returns whether it is a same side rebalance.
Sourcepub fn price_impact<const DECIMALS: u8>(
&self,
params: &PriceImpactParams<T>,
) -> Result<PriceImpact<T::Signed>>where
T: FixedPointOps<DECIMALS>,
pub fn price_impact<const DECIMALS: u8>(
&self,
params: &PriceImpactParams<T>,
) -> Result<PriceImpact<T::Signed>>where
T: FixedPointOps<DECIMALS>,
Calculate price impact.
Auto Trait Implementations§
impl<T> Freeze for PoolDelta<T>
impl<T> RefUnwindSafe for PoolDelta<T>
impl<T> Send for PoolDelta<T>
impl<T> Sync for PoolDelta<T>
impl<T> Unpin for PoolDelta<T>
impl<T> UnwindSafe for PoolDelta<T>
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