Trait FeeCalculator

Source
pub trait FeeCalculator {
    // Required methods
    fn admin_trade_fee(&self, fee_amount: u64) -> Option<u64>;
    fn admin_withdraw_fee(&self, fee_amount: u64) -> Option<u64>;
    fn trade_fee(&self, trade_amount: u64) -> Option<u64>;
    fn withdraw_fee(&self, withdraw_amount: u64) -> Option<u64>;
    fn normalized_trade_fee(&self, n_coins: u8, amount: u64) -> Option<u64>;
}
Expand description

Calculates fees.

Required Methods§

Source

fn admin_trade_fee(&self, fee_amount: u64) -> Option<u64>

Applies the admin trade fee.

Source

fn admin_withdraw_fee(&self, fee_amount: u64) -> Option<u64>

Applies the admin withdraw fee.

Source

fn trade_fee(&self, trade_amount: u64) -> Option<u64>

Applies the trade fee.

Source

fn withdraw_fee(&self, withdraw_amount: u64) -> Option<u64>

Applies the withdraw fee.

Source

fn normalized_trade_fee(&self, n_coins: u8, amount: u64) -> Option<u64>

Applies the normalized trade fee.

Implementations on Foreign Types§

Source§

impl FeeCalculator for Fees

Source§

fn admin_trade_fee(&self, fee_amount: u64) -> Option<u64>

Apply admin trade fee

Source§

fn admin_withdraw_fee(&self, fee_amount: u64) -> Option<u64>

Apply admin withdraw fee

Source§

fn trade_fee(&self, trade_amount: u64) -> Option<u64>

Compute trade fee from amount

Source§

fn withdraw_fee(&self, withdraw_amount: u64) -> Option<u64>

Compute withdraw fee from amount

Source§

fn normalized_trade_fee(&self, n_coins: u8, amount: u64) -> Option<u64>

Compute normalized fee for symmetric/asymmetric deposits/withdraws

Implementors§