In a month, Iron Finance has gone from being the darling of yield farmers to one of the biggest crashes in DeFi history.
The partially collateralized stablecoin project expanded to the Polygon network on May 18 and quickly became the go-to protocol for earning insane yields –– it even received praise from Mark Cuban. The intoxicating combination of truly degen yields soaring into the billions (yes, billions with a B) and cheap transaction fees resulted in an ape frenzy for the ages:
- Total Value Locked (TVL) peaked at over $3 billion on June 15
- TITAN, the protocol’s collateral token, rose over 100x since its launch to $64
At its peak, the protocol was paying out more than $45 million in TITAN rewards per day!
But the party didn’t last long. On June 16, a few large sales kicked off a stampede for the exits, sending TITAN from $62 to nearly zero in just 16 hours.
So how did things go so wrong so quickly?
Bear with me. In order to understand what happened, let’s look at how the system functions.
Iron Finance uses a two-token mechanism ̶ the IRON stablecoin intended to be pegged to $1 and the TITAN collateral token, which is supposed to absorb market volatility caused by shifts in the supply and demand for IRON. One IRON token is always redeemable for $1 worth of collateral, which on IRON is a mixture of TITAN and the Circle and Coinbase-created stablecoin USDC.
This model was pioneered by FRAX Finance on Ethereum and uses a floating Collateral Ratio (CR), which indicates the percentage of the stablecoin supply secured by more proven stable assets like USDC, in an attempt to maximise capital efficiency.
IRON (the stablecoin) is collateralized by a combination of USDC and TITAN and the ratio of USDC to the total IRON supply is called the Collateral Ratio.
When demand for IRON exceeds supply and it trades above $1 on the open market, users can mint IRON by supplying $1 worth of USDC and TITAN. They would then sell IRON above $1 for a profit and this action drives the price of IRON back towards its $1 peg. The TITAN tokens used for minting are burned, thereby reducing the supply.
Conversely, when IRON trades under $1, users can buy IRON at a discount and redeem their tokens for $1 worth of USDC and TITAN. The protocol mints fresh TITAN for redemptions and users can sell their newly acquired TITAN for a profit.
Now let’s look at how the Collateral Ratio factored into the Iron Finance bank run.
What’s a Bank Run?
Imagine that you’re starting a bank in the burgeoning town of Cryptoville.
Before you can start making loans, you would first need to attract capital from depositors and the easiest way to do this is by offering attractive interest rates on deposits. So, you put up a sign offering 10% APR and manage to raise $1,000 in deposits.
You can now start lending out that money at, say, 15% APR and start earning the difference of 5%. But how much can you lend? If you lend out the entire $1,000, you’ll have nothing remaining to pay depositors who could show up at any time and ask for their money back. So instead you decide to lend out $800, assuming that it’s unlikely that more than 20% of your depositors will ask to withdraw their funds at the same time.
The next week, a competitor opens across the street and offers 20% APR on deposits. Half your customers show up and ask to move their money, and your bank is suddenly insolvent.
Every bank needs to strike a balance between maximising profits and keeping idle reserves because at the end of the day, banking is based on confidence. If one depositor is unable to get their money out, the news spreads quickly – especially in crypto – and it isn’t long before the entire customer base shows up asking for their funds. This usually ends in the collapse of said bank or in this case DeFi protocol. In traditional finance, this is precisely why we have institutions like the FDIC to serve as a lender of last resort to protect depositors.
The Feedback Loop
This brings us back to IRON.
Partially-collateralized stablecoins operate in a similar manner by adjusting their Collateral Ratios based on supply and demand. At launch, the IRON CR was set to 100%, meaning that every IRON token was backed by 1 USDC. As demand increased and fresh capital flowed in, the protocol reduced the CR over time, thereby increasing the proportion of TITAN held as collateral (and reducing the amount of USDC required). This is analogous to our bank example above, as the protocol assumes that 100% of users will not withdraw their funds at the same time.
Reducing the CR creates a feedback loop as more TITAN is required to mint each new IRON token.
At the peak, with TVL above $3 billion, nearly all the USDC available on Polygon was deployed in this single dapp and the CR reached 0.75. This means that every new $1 of IRON minted required 25 cents of TITAN to be bought on the market. A higher TITAN price meant higher yields for farmers, which led to more demand, and so on and so on.
How It Played Out
TITAN rocketed to an all time high of $64 and some investors took profits. That caused the price to drop to $60, where it remained for a while.
But when TITAN dropped below $60, it triggered a wave of new selling by large investors, also known as whales, pushing the price down to $30. The drop in the TITAN price caused the IRON stablecoin to lose its peg and drop to $0.90. This is where the real problems began.
Since the price oracle, which is a smart contract that derives token prices from liquidity pools, uses a 10 minute Time Weighted Average Price (TWAP) to determine the CR, it simply couldn’t keep up with the volatility. Users were able to buy IRON tokens at $0.90 and instantly redeem them for $0.75 of USDC and $0.25 of TITAN, which they sold immediately for a risk-free profit.
Investors were then quick to buy the dips in IRON and TITAN, allowing IRON to regain its peg temporarily and pushing the TITAN price back up to $50.
That spurred another wave of selling as more large traders started to capitalize on the arbitrage opportunity, flooding the market with newly minted TITAN, eventually dumping it as the price went to nearly zero. With this, IRON continued to drop, hitting a low of $0.58 before rebounding to $0.74 at the time of writing.
Adding to the chaos, the TITAN supply that was supposed to be capped at 1 billion tokens expanded without limit and now stands at 33 trillion.
Soon after, but too late, IRON redemptions were disabled as the team worked to analyze the situation, and users were asked to withdraw their funds from the platform.
The Iron Finance team has since released a post-mortem indicating that IRON redemptions for the remaining USDC collateral will resume at 5pm UTC on June 17. This is welcome news for investors who have undoubtedly been shaken by the experience and will now be able to redeem their IRON for 0.74 USDC apiece if they so choose.
It should be noted that FRAX Finance, which pioneered the model, implemented a design change after it launched that replaced the TWAP with a ‘Growth Ratio’ that determines the Collateral Factor. This was done with the express intent of addressing the potential of a bank run.
This situation highlights the need for DeFi users to do research and stay informed as projects increase in scope and complexity.
And doing your research means more than just checking for audits and following the praise of influencers. It was agonizing to see the number of IRON investors on Discord/Telegram who had no idea what was going on, thinking they had purchased a ‘stablecoin’ that would always be pegged to $1 like USDC or DAI.
Some investors have been further compounding their losses by selling IRON down at $0.58, while it continues to be backed by $0.74 worth of USDC. On the other hand, astute investors were buying IRON, expecting redemptions to resume at some point, which the team announced today.
Always know what you own! Happy farming!
Disclaimer: The author holds IRON and TITAN tokens.