From d115291784693b17fb36acec5323500f16f4b2b2 Mon Sep 17 00:00:00 2001 From: Aliaksandr Tsurko Date: Wed, 2 Apr 2025 18:08:37 +0200 Subject: [PATCH] Setup default fee rate --- pallets/swap/src/pallet/impls.rs | 2 +- pallets/swap/src/pallet/mod.rs | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/pallets/swap/src/pallet/impls.rs b/pallets/swap/src/pallet/impls.rs index 7df902f4ff..72d4b6be88 100644 --- a/pallets/swap/src/pallet/impls.rs +++ b/pallets/swap/src/pallet/impls.rs @@ -1345,7 +1345,7 @@ mod tests { // Expected fee amount let fee_rate = FeeRate::::get(netuid) as f64 / u16::MAX as f64; - let expected_fee = output_amount * fee_rate as u64; + let expected_fee = (output_amount as f64 * fee_rate) as u64; // Global fees should be updated let actual_global_fee = match order_type { diff --git a/pallets/swap/src/pallet/mod.rs b/pallets/swap/src/pallet/mod.rs index 2a6b3e2ebf..d4cbcbefc6 100644 --- a/pallets/swap/src/pallet/mod.rs +++ b/pallets/swap/src/pallet/mod.rs @@ -59,11 +59,15 @@ mod pallet { type MaxSqrtPrice: Get; } + /// Default fee rate if not set + #[pallet::type_value] + pub fn DefaultFeeRate() -> u16 { + 196 // 0.3 % + } + /// The fee rate applied to swaps per subnet, normalized value between 0 and u16::MAX - /// - /// For example, 0.3% is approximately 196 #[pallet::storage] - pub type FeeRate = StorageMap<_, Twox64Concat, NetUid, u16, ValueQuery>; + pub type FeeRate = StorageMap<_, Twox64Concat, NetUid, u16, ValueQuery, DefaultFeeRate>; // Global accrued fees in tao per subnet #[pallet::storage]