diff --git a/bittensor_cli/src/bittensor/subtensor_interface.py b/bittensor_cli/src/bittensor/subtensor_interface.py index 4ae3861a1..f5c9768ae 100644 --- a/bittensor_cli/src/bittensor/subtensor_interface.py +++ b/bittensor_cli/src/bittensor/subtensor_interface.py @@ -36,6 +36,7 @@ decode_hex_identity_dict, validate_chain_endpoint, u16_normalized_float, + U16_MAX, ) SubstrateClass = ( @@ -1526,29 +1527,14 @@ async def get_stake_fee( 5. Moving between coldkeys """ - origin = None - if origin_hotkey_ss58 is not None and origin_netuid is not None: - origin = (origin_hotkey_ss58, origin_netuid) + if origin_netuid is None: + origin_netuid = 0 - destination = None - if destination_hotkey_ss58 is not None and destination_netuid is not None: - destination = (destination_hotkey_ss58, destination_netuid) + fee_rate = await self.query("Swap", "FeeRate", [origin_netuid]) + fee = amount * (fee_rate / U16_MAX) - result_ = await self.query_runtime_api( - runtime_api="StakeInfoRuntimeApi", - method="get_stake_fee", - params=[ - origin, - origin_coldkey_ss58, - destination, - destination_coldkey_ss58, - amount, - ], - block_hash=block_hash, - ) - result = Balance.from_rao(result_) - if isinstance(origin_netuid, int): - result.set_unit(origin_netuid) + result = Balance.from_tao(fee) + result.set_unit(origin_netuid) return result