BIP-0008: Balancing Curves Update & Parameters Setup

Description

This proposal focuses on setting up the parameters for the Balancing Curves in the BabelFish protocol. Building upon the acceptance of BIP-0007, we now have the opportunity to activate the Balancing Curves and make them an integral part of the BabelFish Aggregator. The objective of this proposal is to define the parameters that will bring the Balancing Curves to life and enable them to have a tangible impact on stablecoin swaps.

Motivation

Currently, the Balancing Curves are in a neutral state and do not influence stablecoin swaps within the BabelFish Aggregator. To unlock the full potential of this mechanism, we need to determine the appropriate parameters that will shape the behavior of the Balancing Curves and optimize the allocation of stablecoins. Our proposal aims to establish a more efficient, balanced, and responsive ecosystem for all users.

Currently, more than 99% of the aggregated stablecoins are ZUSD. In order to achieve a diversified stablecoin allocation, we propose targeting 50% of Rootstock native stablecoins and 50% of imported stablecoins. This approach aims to reduce excessive exposure to Rootstock native stablecoins and stimulate inflows for the imported stablecoins. Given the significant demand for BNB Smart Chain (BSC) stablecoins, we propose allocating 30% of stablecoins to BSC, with USDT being the most popular external stablecoin and therefore assigned the highest allocation of 15%.

In addition, we propose setting the rebalancing rewards to 2.5% and imbalancing fees to 10%. These values represent the maximum factors that will influence deposits and withdrawals. As described in the BIP-0007 Balancing Curves proposal, a factor, constant number seen in one of the formulas as C. It is used to determine the steepness of the Balancing Curves. The value of this factor influences the rewards and penalties (imbalance fee). We propose an initial setup of C with a value of 2,000,000, which would make the Balancing Curve moderate. The rebalancing rewards incentivize users to provide stablecoins to the pools which are out of balance, while the imbalancing fees encourage a more balanced inflow of stablecoins into the aggregator.

Considering the dynamic nature of the BabelFish aggregator and the possibility of multiple concurrent users, we added a slippage tolerance parameter for rewards and penalties. This parameter ensures needed flexibility, and if the difference in rewards or penalties exceeds 2.5%, the transaction will not proceed.

It is important to note that these parameters can be readjusted in the future to adapt to changing market conditions and ensure optimal functionality.

We firmly believe that implementing these proposed parameters will establish a more efficient and balanced ecosystem within the BabelFish Aggregator, ensuring smoother stablecoin flow and increased liquidity.

Proposed parameters:

  • Native Rootstock stablecoins:

    • ZUSD: 49%
    • DOC: 0.5%
    • RDOC: 0.5%
  • Stablecoin bridged and used in Rootstock ecosystem:

    • rUSDT: 5%
  • BNB Smart Chain aggregated stablecoins:

    • USDTbs: 15%
    • BUSDbs: 5%
    • DAIbs: 5%
    • USDCbs: 5%
  • Ethereum aggregated stablecoins:

    • USDTes: 5%
    • DAIes: 5%
    • USDCes: 5%
  • Rewards and penalties:

    • Max Reward: 2.5%
    • Max Penalty: 10%
    • Reward and Penalty slippage: 2.5%
    • Factor C = 2000000

Code updates:

  • easier management of the Reward Manager funds by BabelFish Multisig signers
  • improvement of the consistency of small and large rewards and imbalance fees
  • optimisation of gas - preventing 0 value rewards to be sent
  • slippage on the rewards and imbalance fees
  • adding two events onGlobalMaxRewardChanged and onGlobalMaxPenaltyChanged to reflect changes of max reward and max penalty.

Github: