With the explosion of interest in decentralized finance (DeFi) that started in late 2019, decentralized exchange (DEX) platforms have become increasingly popular as a way to exchange crypto assets and earn a passive income.
With the rise of DeFi, many famous DeFi protocols like Uniswap or Curve came into existence. They are all are Automated Market Makers (AMMs) that use algorithms to define rules for matching buyers and sellers to facilitate trades.
An automated market maker (AMM) is essentially a platform that uses an algorithm for managing orders, rather than the bid/ask system that most centralized exchanges like Binance or Coinbase use.
In 2019, a team at a blockchain consulting firm known as BlockScience sat down to create a new AMM platform on Ethereum.
The result of their work is Balancer Finance that acts as an automated portfolio manager, liquidity provider, and price sensor. So, what is it?
What is Balancer Finance?
Balancer Finance or Balancer Protocol is an AMM, DEX, and liquidity pool protocol that can be used for swapping ERC-20 assets without the need for a centralized entity like an exchange.
Balancer Labs, the tea, behind the development of Balancer Protocol, published Balancer whitepaper in September of 2019. The Protocol went live on mainnet on March 31, 2020.
The Balancer website describes it as a protocol for programmable liquidity. Balancer does not use orderbooks when settling trades. Instead, it introduces a concept known as “Balancer pools”, which are essentially pools of between two to eight different cryptocurrencies that provide the liquidity required by traders. A Balancer Pool is an automated market maker with certain key properties that cause it to function as a self-balancing weighted portfolio and price sensor.
According to its Whitepaper, Balancer is a kind of index fund where users create funds based on the cryptocurrencies in their portfolios.
These index funds are called Balancer Pools on this project. Just as an index fund can be composed of different stocks, Balancer pools are composed of up to eight different cryptocurrencies and anyone can provide liquidity to a pool by simply depositing an asset in them.
The token available in these Balancer Pools are used to facilitate trades. The ratio of the tokens in the pools is set when creating a pool. For example, a Balancer pool can be comprised of 25% ETH, 25% of Tether (USDT), and 50% WBTC.
As each Balancer pool is an AMM, it functions as a self-balancing weighted portfolio and price sensor. On Balancer, instead of paying fees to portfolio managers to rebalance their portfolio, users collect fees from traders, who rebalance their portfolio by following arbitrage opportunities.
What is Inside Balancer Protocol?
Two categories of users can benefit from the Balancer Protocol: liquidity providers, users who own Balancer Pools or participate in shared pools, and Traders, users who buy or sell the underlying pool assets on the open market.
This means that Balancer Pools and Balancer Exchange are two main parts of Balancer Finance.
Liquidity providers use Balancer pools to provide liquidity to the protocol. There can be two types of liquidity providers:
Portfolio managers, who want to have controlled exposure to different assets without complicated and expensive rebalancing, and investors, who have ERC20 tokens sitting idly in a wallet, and would like to put them to work earning passive income from fees.
There are three types of Pools on Balancer Protocol: Shared, Private and Smart Pools.
Public pools allow any user to provide liquidity by adding or withdrawing assets. The parameters like swap fee, weightings, and the types of assets, of public pools, are set before the launch and can not be changed once launched.
Shared pools hold the largest market cap of liquidity on Balancer Protocol. They are useful for users with smaller holdings seeking to earn fees from the most popular and most liquid pools.
As the name suggests, only the pool creator can add or withdraw assets to these pools. The user can also adjust all the other parameters of the pool at any time. Private Pools are useful for users with large portfolios seeking to earn fees on their specific assets.
One very powerful feature of Balancer is the concept of Smart Pools. Smart pools are a type of private pool owned by smart contracts. According to the documentation provided by Balancer:
“A smart contract controlled pool can fully emulate a finalized pool, while also allowing complex logic to readjust balances, weights, and fees.”
Fernando Martinelli, the founder and CEO of Balancer, describes smart pools as “Uber for liquidity pools.” Various kinds of smart pools can be created on Balancer.
Balancer Exchange allows users to swap ERC20 tokens just by connecting any Ethereum wallet like Metamask. Traders also earn BAL tokens when swapping between eligible tokens.
Trades are processed through a smart order router (SOR), an off-chain linear optimization of routing orders across pools for best price execution.
SOR takes as input the desired amount of any token to be traded for another token and returns a list of pools/amounts that should be traded such that the amount of returned tokens is maximized.
How Does Balancer Work?
Users wishing to create a Balancer pool or investors looking to add liquidity to a shared pool can simply visit the Balancer Pool Management dashboard. Traders looking to swap ERC 20 tokens can go to Balancer Exchange.
When a user initiates a swap on Balancer Exchange, the Balancer system will automatically figure out the best available price from the range of available pools. This is done through smart order router (SOR) that ensures that those trades achieve the highest yield, taking into account the amount traded, fees, and gas costs.
After the trade, the pool is rebalanced automatically hence called self-balancing. The AMM algorithm of Balancer is similar to Uniswap’s x * y = k formula but slightly more complex as Balancer pools support up to 2 to 8 assets. The documentation reads:
“Pools are efficiently rebalanced through a multi-dimensional invariant function used to continuously define swap prices between any two tokens in a pool. Essentially, it is an n-dimensional generalization of Uniswap’s x * y = k formula.”
But what happens when the price of token changes. When this happens, the pool as a whole is continuously rebalanced to maintain each token’s proportion of the total value. For example, a Balancer pool might start with 50% WETH, 25% MKR, and 25% DAI. Let’s assume that the price of WETH has doubled.
At this moment, the pool automatically reduces the amount of LEND it holds so that it can retain 50% of the pool’s value. The Balancer smart contracts will make this excessive WETH available to traders looking to buy WETH as prices go up. Hence, pool managers do nothing but collect the fees.
The special thing about Balancer is that users do not need to create an account to use the platform, nor complete any verification steps. They just need Ethereum to start with. Unlike many other AMMs, pool operators can set their own swap fees that must be between 0.0001% and 10%.
This means liquidity providers earn in two ways on Balancer: swap fees and pool rebalancing fees. Conversely, traders benefit in two ways: high liquidity allows low slippage on trades, and arbitrageurs can directly profit from swings in external market prices.
Balancer (BAL) Token
BAL, the native ERC20 token of the Balancer Protocol, is a governance token that can be used to vote on proposals and steer the direction of the protocol. There will be 100 million BAL tokens.
Out of these 100 million tokens, 15 million BAL were distributed or saved during Balancer’s inception, the remaining 65 million tokens are distributed to Balancer users providing liquidity to the protocol.
Every week 145,000 BALs, or approximately 7.5M per year, are distributed to liquidity providers. This means that the total supply will have been distributed by 2028.
Balancer Labs introduced the second version, Balancer V2, of Balancer Protocol in February of 2021. Balancer V2 is expected to be launched in March of 2021
Balancer V2 will feature a Protocol Vault, a single vault that holds and manages all the assets added by all Balancer pools. This will separate the AMM logic from token management and accounting. Token management/accounting is done by the vault while the AMM logic is individual to each pool.
Further highlights of Balancer V2 includes improved gas efficiency, customizable AMM logic, the addition of “instant and resilient” oracles, and community-governed protocol fees. According to the team, Balancer V2 will implement three different types of protocol level fees that are controlled by governance: trading fees, withdrawal fees, and flash loan fees.