The Adoption of Liquidity Pools?
Decentralised Finance (DeFi) is growing rapidly these days with innovations happening daily. While the list of applications of DeFi technology is endless, one common implementation that is driving the current growth of DeFi is Decentralised Exchanges (DEX), and in the hearts of every DEX lies a mechanism known as Liquidity Pools.
What are Liquidity Pools?
Introduced by Bancor and popularized by Uniswap, Liquidity Pools (LPs), in essence, are pools of token that are locked in a smart contract. The main purpose of Liquidity Pools is to facilitate trading by providing liquidity, similar to market markers in a centralised exchange.
To understand why LPs are needed, let us look at how the traditional centralised exchanges and decentralised exchanges work.
Centralised and Decentralised Exchanges
In a centralised exchange (Coinbase, Binance, Huobi, etc), trading is based on the order book model. In this model, the buyers and sellers come together to place their orders. The buyer tries to buy the asset as low as possible, while the seller tries to sell as high as possible. When the price between a buyer and seller converges, the order gets executed.
But there are a few problems with this model. What if there is no fair pricing (that is no one buying/selling at the current price)? Or there are not enough assets to execute an order? That’s when Market Makers (MM) come into the picture.
Market Makers are special types of buyers and sellers who are always willing to buy/sell assets at a particular price. This way a trader gets instant liquidity for their assets. The order book model of centralised exchanges rely heavily on market markers to provide liquidity for their traders.
But for decentralised exchanges that do not work on an LP model, things get complicated. While it is theoretically possible to implement an order book model using smart contracts (IDEX, EtherDelta) , the huge cost of transactions combined with a generally slow system makes it practically impossible to implement.
Here’s an example of why it’s not practical to implement an order book model. Every interaction on Ethereum costs gas fees. An order book model requires constant updates including, the number of open orders, price updates, number of closed orders etc. All these interactions would incur further fees. At scale, the fees would increase to such levels that it is not viable for market making. Moreover, the Ethereum network can only do 10–12 transactions per second. In contrast, centralised exchange can handle around 10,000 transactions per second.
This is where LPs come into the picture of decentralised finance.
How Liquidity Pools Work?
So now we know the problems of implementing an order book model for DeFi, let us understand how LPs work and how they solve the liquidity problem in decentralised finance.
In its basic form, a liquidity pool contains a pair of tokens (two tokens) and each pool provides liquidity towards a particular pair of tokens. In a liquidity pool, a person locks-in both token in an agreed upon equivalent value. For eg: In Uniswap, for a person to participate in the DAI/ETH liquidity pool, they must contribute both DAI & ETH of equivalent USD value.
When a trader places a trade, the order is sent to the smart contract containing the liquidity pool and the contract executes the order by taking the requested assets from the pool in exchange for the second asset. The price of the asset is dictated by the ratio of the tokens in the pool.
For eg: if someone, buys ETH from a DAI/ETH pool they reduce the supply of ETH and add the supply of DAI. This causes an increase in the price of ETH and a decrease in the price of DAI. How much the price changes depend on the size/depth of the pool.
But there is a major problem with current liquidity pools. The current LPs are limited to a particular blockchain only and there is no interoperability between blockchains. For eg: a trader cannot exchange ETH for TRX, as both are using a different blockchain.
SlowPoke Liquidity Pool
In the above example, the LPs are deployed on both ETH and TRX. When User A stakes 1 ETH into the ETH LP, the native oracles on the Centaur Chain records that transaction. When User A wants to execute a trade to buy Tron on the Tron LP, this transaction will be sent via oracle to the Centaur chain and settlement will happen there.
Users will only need to put up liquidity for a single token and asset prices are derived from off-chain market data using price oracles, hence allowing for minimal deviation of internal price from external price. An incentive structure will also encourage people to contribute to LPs where there is lower liquidity to further reduce deviations from the external price.