Parrot Finance: Unlocking liquidity on Solana
Unlocking liquidity in DeFi
One of the most underrated joys of the web3 space is that the names of projects are just absolutely delightful…. Today we’re deep diving into Parrot.fi
Let’s start by looking at why it exists and what it says it does, in their own words:
“The Parrot Protocol is a DeFi network built on Solana that will include the stablecoin PAI, a non-custodial lending market, and a margin trading vAMM. These are all use cases designed to solve one single problem: making value locked in DeFi systems accessible."
Before we get into what this means and why it is awesome, let’s take a few steps back to first understand what DeFi is & why it matters. You can skip ahead if you’re already into it.
Evolution of Finance & Web3
All of us were born into the financial system we live in today, and like a lot of things - we tend to just accept it as a given, but it didn’t start off this way. Here’s my overly simplified view of how it has evolved over the past millennia:
Closed Systems: I can only assume people started off by making do with what they had. The kind of food you ate, your occupation, clothing etc. was all determined by where you were born. There was no exchange of goods/services etc.
Specialisation & trade: As people set out on expeditions they realised “far away lands” had some really cool stuff. Instead of figuring out how to make/grow that back home, they started trading (barter) and taking it back home. The concept is simple - if everyone does what they're best at and is able to “exchange” it for what they need, there is more overall value created in the world. Presumably because if you’re best at something - you’re making it cheaper or better or both. The crucial factor is ensuring the cost of exchange is lesser than the cost of the buying party just making it themselves.
Common unit of exchange: The barter system was awesome - people could get things that weren’t possible to grow or make in their land. This allowed them to focus on what they were good at while not having to give up on things that were necessities or luxuries - by trading them in. Like any system, this too had areas of improvement -
Liquidity: If you make great woollen clothing, no one is going to trade for it in the summer. And you can’t stock up on bread from the woollens you sold last winter and eat it next summer.
Price Discovery: It is difficult and tedious to maintain exchange rates for every possible thing in the world.
These problems were solved by ascribing value to coins or paper backed by kings or settlements, i.e. money. It was awesome - you could swap it for anything you wanted, prices were all relative to this one baseline, you could store it and use it later. In his book “Sapiens”, Yuval says that being able to co-operate on abstract concepts is what made humans unique and able to survive and thrive. Money is probably one of the most important tools invented to that end.
Traditional finance: Fast forward to the 20th century and we have our traditional finance systems. Money has further been abstracted out - metal coins -> paper -> plastic (cards)-> netbanking. Financial products are more sophisticated and accessible than ever. You can think about this ecosystem as having three major entities:
Assets: An asset is anything that has value; piece of a business (equity) , a consumable good - oil (commodity) or somebody owing you money (debt)
Derivatives: A derivative is a financial product built on top of an asset with the intention of making it more efficient and accessible (liquid). This can go sideways if poorly done.
Institutions: Institutions enable traditional finance to operate by providing services like banking (storage, lending) & exchanges (custodial, liquidity and trading)
Central banks & regulators: Control monetary policy, i.e. how much money is printed, baseline interest rates, rules for banks and other institutions, forex concerns.
Let’s look at a few common use cases of traditional finance:
Savings & Lending: You deposit rupees/dollars with a bank, the bank lends it out to projects it feels will generate better than baseline return and gives you a share of that. It also assures you that your capital is protected. The bank charges fees for lending & operations. The regulators ensure that the bank always has enough capital to pay back its depositors.
Managing business risk: If you run an airline, you are heavily affected by the price of fuel. Using derivatives you can buy “oil futures” to lock in your future purchase price of oil and get predictability. The exchange requires people who are buying and selling to deposit “collateral” to make sure they come good on their promise. This could be currency or the underlying goods.
Speculation: If you’re convinced something is going to move up or down in price - you can enter a contract to buy (long) or sell (short) it at future price. Exchanges ensure there is enough demand and supply of things people want to trade. If the price moves the way you said when you said it would - you win. Alternatively, you can rant on twitter.
These are huge leaps of progress compared to just a few hundred years ago. Needless to say our lives today would be very different without access to these tools.
But, when you think about money & the financial as a tool to unlock full human potential, you naturally start looking for areas of improvement. Here are a few:
Lack of transparency: The bodies that govern monetary policy basically decide how much money gets printed in the system. The more there is, the more expensive everything becomes & each individual unit loses value. These bodies are often subject to political and other influences.
Censorship: Our access to financial products is controlled by regulators and institutes. Anyone can be excluded from these systems. This could happen with the best of intentions - retail investors not allowed to invest in high risk ventures. But there are also cases of discrimination where certain groups are excluded or less likely to get access to these systems based on their ethnicity or living in a “poor” neighbourhood.
Efficiency & Latency: Institutions charge commissions on every transaction to support their operations. It takes 2-3 days to settle transactions because all accounts need to be verified and reconciled. Lowering the cost & time of ops through tech can lower the transaction cost and settlement times. Big institutions also have an edge here because they can afford direct data lines into exchanges so they’re literally often getting information faster than retail investors.
Points of failure: Because control is centralised with a few entities - incompetency or fraud at these entities has the possibility to impact a lot of individuals who put their trust in them. Advisors who make money from commission on transactions and not performance/returns are incentivised to push low quality products onto unsuspecting investors.
How does DeFi claim to make this better
Open and transparent: All information is on public blockchains for everyone to see. Once deployed it can’t be edited except via the rules publicly declared. Eventually tokens are used to ensure everyone involved can be a part of the decision making process
Permissionless: Anyone with a compatible wallet and tokens can access these systems.
Automated: Because these are powered by computer programs end to end, they cut out intermediaries from discovery and enforcement.
DeFi is a broad term which refers to an ecosystem of applications which enable holders of tokens to get access to more capital, liquidity and earn interest on their holdings.
A base blockchain (L1): This is the system that ensures the defi application is not hacked, lying or taken over. A base chain needs to have a strong user base and robust consensus mechanism (i.e. it must be difficult to take over the network). This acts as the settlement layer for these apps. ETH & Solana are probably the 2 most popular layers on which DeFi Apps are being built.
A Decentralised Exchange (DEX): It is the market where buyers meet sellers. Its core function is to ensure enough supply and demand (liquidity) & minimise counter-party risk (i.e. I should know that the person at the other end of the deal will hold up their end). The way in which a DEX differs from a typical centralised exchange is that it doesn’t need to hold your funds for you to transact - the blockchain enforces transactions once a user initiates it.
An Automated Market Maker (AMM): A DEX enables anyone to transact with anyone without taking control of their assets. The next problem is price discovery - how do I know if I’m paying too much or getting too little. In traditional finance the exchange sets the prices based on demand and supply, an AMM is a protocol that sits on top of a DEX and automates this based on code and math.
Liquidity Pools & Lending: Any entity (institute or protocol) that enables lending and borrowing needs to ensure that those who have lent funds can withdraw their funds based on the agreed terms. For this to happen, those who borrow need to deposit some type of collateral that is valuable and liquid enough that it can be used if they fail to repay their loans. In the DeFi
Stablecoins: Given crypto assets are volatile, stable coins are a valuable type of token whose value is pegged to an asset which is widely accepted as a means of exchange and payment (e.g. USD). To create a stable coin - the issuer promises they hold a dollar for each coin issued. Thus ensuring the value remains at that level. Not all stablecoins are pegged to dollars though, as we’ll find out.
Mechanics - How it Works
Let’s say you believe that SOL or ETH or xyz token will be super valuable 10 years from now. So you buy 100$ worth of it. Now, you can’t spend that 100$ unless you sell your ETH - but you don’t want to sell, you want to HODL.
You can deposit your token as collateral with a protocol and borrow USDC/USDT or any token - which you can spend. Whenever you’re ready to withdraw your token (collateral) you simply repay the amount you borrowed + interest.
The key risk here is that if the price of your collateral drops then you will need to deposit more or it’ll be automatically sold and your debt paid off to prevent the collateral from going insolvent.
To ensure you can borrow there needs to be enough supply (liquidity) - protocols incentivise users to deposit their tokens and lock them in smart contracts for certain periods of time by providing tokens as incentive. These tokens may also give governance rights to holders. This set of tokens deposited and locked in is referred to as “liquidity pools” and the metric TVL (total value locked) refers to the amount staked by users. Higher the amount and duration - more the trust and liquidity in the protocol. Applications have issued tokens to represent ownership in liquidity pools (Stake pool tokens - SPTs) making them fungible, liquid and tradeable. These are backed by collateral deposited into the protocol .
Solana DeFi Ecosystem
Now that we’ve understood the concepts, let's look at products and protocols on Solana that help achieve this,
Serum DEX: this is a decentralised exchange backend which serves as the engine using which anyone can set up a marketplace
AMMs: There are many of these, to name a few: SerumSwap, Raydium, Symmetry Swap. You can exchange any SOL tokens on these. There are also DEX aggregators (e.g. Orca) which work like search engines and help you find the best deals across the many options available
Stake Pools: These are protocols where you can deposit SOL for interest and governance tokens of the protocol. A few that were mentioned on Parrot’s blog: Marinade, Socean, Steaking.
Now that we’re familiar with these apps and what they do, let's go back to our original question - why does parrot exist, how does it make this better.
Concept note - The Parrot Protocol
The goal of the protocol is “making value locked in DeFi systems accessible”. Let’s break this down:
The value locked in DeFi systems is SOL deposited by holders who get interest and a governance token in return
This governance token is not as liquid or usable as other tokens because you need to understand the mechanics of each underlying risk pool before you can trade for it. E.g. Is there enough collateral backing it? What’s the default risk?
Because of this, the money you’ve deposited is not usable across other Solana apps. This makes it capital inefficient. It is this inefficiency that Parrot aims to solve.
There are 2 ways in which you can do this,
If you’ve staked SOL with any existing solana liquidity pools, you can mint pSOL which is more liquid and usable than any individual token
Use BTC, USDC or SOL to mint the stablecoin PAI which is pegged to 1 USD.
Here’s an image from their blog showing the comparison in terms of liquidity benefits
Let’s understand the logic & working behind why pSOL is needed from their blog
If you deposit SOL directly to mint a stablecoin (PAI), you give up the yield you could get from a protocol like Marinade (~7%)
Because of collateral requirements to keep the value of PAI stable you’d need to maintain a collateral ratio of 150% (i.e. to withdraw 100$ worth PAI you’d need to deposit $150 worth SOL)
Thus - you’d need to provide a much higher return (10.5%) to justify the 7% + increased collateral requirements. This is not economically viable.
How does pSOL solve this
Because pSOL is minted using the staking pool tokens (like mSOL) you continue to earn staking rewards from these.
mSOL keeps accruing staking rewards from the Marinade pool, so the collateral against any minted pSOL keeps going up over time - making it an over collateralized token - this ensures your position will never liquidate.
Worth noting that unlike usual SPTs , pSOL does not accrue the staking rewards. The collateral ratio is adjusted to account for this - thus ensuring pSOL is always over collateralised.
(Pre-req: You will need a solana wallet (phantom, sollet etc) with some SOL in it to do this)
Step 1: Deposit SOL into a staking pool, I tried this out on Marinade. You can use any supported staking pool - including the parrot stake pool
Step 2: Connect your wallet and confirm the amount you’d like to deposit. Once you approve the transaction corresponding mSOL will appear in your phantom wallet
Step 3: Deposit mSOL to min pSOL on https://parrot.fi/mint/ . This can never liquidate because mSOL is backed by SOL + staking rewards, making pSOL over-collateralized.
Step 4: pSOL is then deposited to your “vault” & reflects in your phantom wallet too
You can also use the Parrot protocol via the PAI stablecoin.
LP Token Backed Stablecoin
Like we described earlier, a stablecoin has its value pegged to another asset. In this case the aim is to keep 1 PAI ~= 1 USD. However, the PAI is not backed by actual USD. It is backed by a mix of liquidity provider tokens including SOL, BTC, ETH which are inherently volatile. This means that the amount of token you need to deposit to mint PAI (collateral ratio) will vary depending on the value of the underlying token wrt USD.
This is why you’ll need to deposit more of the token than you can withdraw in PAI, so that the system can absorb a certain amount of volatility. If the price exceeds what is accounted for, your debt in PAI will be paid by liquidating your deposited tokens unless you deposit more collateral.
Initial use cases
This post explains the initial thought behind PAI & parrot really well, one of the top use cases seems to be bridging from the ethereum network:
The first boom in DeFi was on ethereum, so a great growth hack is to allow users who have staked ETH/(w)BTC on the ethereum blockchain to bridge it to Solana using wormhole.
You can then mint PAI using that and access the Solana ecosystem while continuing to earn yield on your ETH
Quick sidebar to explain to things:
w(BTC) or w(ETH) refers to “wrapped” or sending a token from one base chain to another (ethereum → solana).
This happens through a protocol called “wormhole” where the ETH on ethereum is “locked” in a smart contract so you can’t spend it there. I’m not going into more detail in this post, but you can read more here
While you can deposit SOL to mint PAI, based on everything you’ve read so far - it would make more sense to stake a SOL SPT for pSOL (as shown in the earlier section)
This is what the screen looks like if you try to mint PAI by depositing SOL, let’s focus on the bottom section of the image below & understand what they mean
Borrow rate: The rate of interest you have to pay for borrowing PAI
Debt: The token you are borrowing
Collateral: What you’re depositing to secure your loan
Collateral Ratio: You can choose to over collateralise your deposit (i.e. borrow lesser than allowed) to ensure your position is not liquidated if the price of SOL wrt $$ drops
Liquidation price: The $ price of SOL, below which your loan will be automatically squared off (unless you deposit more collateral) by selling your SOL for USD to ensure the protocol remains solvent.
Debt ceiling (not in image): There is a max amount of PAI that can be minted at any given time. More on this here
The protocol remains solvent and ensures PAI ~=1 USD by setting a minimum collateral ratio and corresponding liquidation price. If this breaks, the protocol will go insolvent, i.e. people can borrow more and depositors won’t be guaranteed payment.
PRT & gPRT Token
This is a token used to incentivise people to mint PAI, pSOL and generally grow & govern the parrot protocol. Here are the key objectives:
Incentivise mining, staking and contribution, more on this here
To align long term incentives - you are allowed to lock in your PRT token for a time period and get gPRT tokens in exchange. These have governance privileges and extra rewards.
PRT will continuously be bought back using fees generated and may also be used to pay down bad debt if needed
Mercurial x Parrot
This collaboration is a great example of how fast and collaboratively the Solana ecosystem seems to be growing.
Mercurial is a protocol which allows multi-token stake pools, i.e. instead of just depositing a single security - you can deposit a combination of securities into specially designed pools - and earn a yield accordingly. These are built to be more liquid and diversified compared to single token pools - presumably making them less risky and more useful.
In their own words on the collab - “ For the launch of this new pool, Mercurial and Parrot created a co-liquidity mining program that rewards LPs with two tokens instead of one. Rewards are distributed to LPs in the form of Mercurial’s $MER token and Parrot’s $PRT token”
Mercurial benefits by getting increased liquidity to its pools and parrot benefits because users are now even more incentivised to provide liquidity. It looks like this on the mercurial finance website:
This is where you can borrow or re-pay tokens. We’ve already covered most of this earlier in this post. In this section we’ll look at the different types of tokens:
Stablecoins: USDC, USDT
L1 Tokens: SOL, w(BTC)
SPTs from Saber (SBR), Mercurial (MER), Raydium & Marinade (mSOL)
Protocol Reward Tokens (PRT)
For every type of token there will be a specific set of tokens you can borrow (e.g you can only get PAI for PRT)
Vaults are nothing but a record of your holdings organised by token pairs. We’d seen a screenshot earlier of how pSOL showed up in an mSOL-pSOL vault after the deposit was made.
There are two types of vaults
Stablecoin vaults: Unless the underlying stablecoin breaks, this vault can never be liquidated because the amount borrowed is always less than the amount deposited and pegged to stablecoins. Worth noting that any pSOL vaults also aren’t expected to liquidate because like we’ve seen, pSOL is over-collateralized.
Volatile vaults: These are vaults which could liquidate if the value of the collateral (SOL, ETH, BTC) dropped in comparison to the borrowed token (PAI, USDC). We’d covered this while looking at how to mint PAI
Just like Marinade or any other liquidity pools allow you to deposit SOL for interest, parrot does too. Keep in mind you get prtSOL not pSOL or PAI for this. prtSOL is similar to mSOL in the sense that you can convert prtSOL to pSOL via the mint function
You can stake SOL for prtSOL from the stake tab on parrot.fi. Once your wallet is connected you just need to specify the amount of SOL you’d like to stake and approve the transaction. In the image below you can see both the prtSOL i’ve received and the SOL balance after making the transaction.
You can verify the prtSOL received both on the dashboard in the previous screenshot and in your phantom wallet. It currently shows up as “unknown token” because it is yet to be submitted/approved to the Solana token registry.
PrtSOL → pSOL
prtSOL is like any other SPT, so similar to what we did with mSOL - we can now generate pSOL using our prtSOL tokens by using the mint feature. Again, this can never liquidate because it is over-collateralized
After the mint is successful, I can now see my prtSOL-pSOL vault updated
A word of caution
We are really early in DeFi right now and a lot of things are in beta/being figured out. Even with the best of intentions, a lot could go wrong:
If underlying tokens like BTC, ETH, SOL lose value wrt USD - all the derivatives on top of them will quickly drop to 0
Liquidity protocol algorithms/calculations are critical to ensure the right amount of collateral and debt collection (liquidation) is happening. Banks have an army dedicated to this and it feels very exciting to see this being done by code - but if these break, all these derivatives will quickly drop to 0
Networks and protocols can be attacked, if parrot or any of the underlying protocols get taken over your funds are at risk.
Rug pulls: Not everyone has good intentions.
All of this is to say that please do your own research before investing your money. I hope DeFi proves more resilient to bad debt than traditional finance has in the last 15 years, but one of the realities of web3 is that you are responsible for your own money - with that freedom comes responsibility too.
DeFi Overview: https://www.coindesk.com/learn/what-is-defi/
Solana Defi ecosystem:https://thedefiant.io/solana-defi-ecosystem-overview/