Join Delphi Research today and immediately get access to our full Member Portal!
Join Delphi Research today and immediately get access to our full Member Portal!

Out From Chaos Comes THORSynths

Jul 21, 2021 · 21 min read

By Can Gurel, and Yan Liberman, CFA, CAIA

Our initial research piece on THORChain dates back to the end of December 2019. Since then, RUNE’s market cap has grown considerably to $1B today. The project migrated from a single chain DEX into a one-of-a-kind cross-chain liquidity network. More specifically it recently transitioned from Single Chain Chaosnet (SCCN) to Multi Chain Chaos Net (MCCN). We’re excited to provide a large update on THORChain, which we present in 3 parts. First, we will share our brief assessment on the recent unfortunate exploit. Next, we will analyze on-chain historical figures from THORChain MCCN and share our insights. Finally, we dive deep into the implications of two novel assets that will shape up THORChain’s future; Synths & iRune.

Expecting Chaos

As we were getting closer to publish our report, THORChain recently experienced an unfortunate exploit. The exploit was pulled by taking advantage of a recent feature that was added to enhance THORChain’s smart contract composability capabilities. The attacker tricked THOR Nodes into believing that he deposited ETH whereas instead, he was able to recycle the deposit amount back to his wallet using a wrapped contract. As a result, vaults thought they had way more ETH than they actually have and allowed ETH to trade at a very cheap price of around 350 USD. The exploit was followed by arbs who took advantage of the situation by purchasing cheap ETH. Prices on various pools diverged from those on external markets. This incident surely had undesirable consequences including a halt on the network, a hit on reputation, 4,240 ETH worth of insolvency, and a decline in Rune price.

On the other hand, the THORChain community also experienced many positives following the exploit. For one, THOR Nodes were quick to react to the exploit by halting the network, which proved the consensus mechanism was able to protect the network autonomously, purely driven by their financial motives. The team publicly announced that LPs will be made whole and encouraged participation from the community. Following this, the THORChain community quickly came together presenting numerous in-depth proposals on how to address the situation, both from a security and financial standpoint. Despite the depressed Rune price, the Treasury is flush with more than $60M worth of funds, ~$30M of those being Non-Rune Assets. Therefore the treasury is in a position to comfortably cover the loss without having to sell Rune. From a security perspective, even though the bug leads to a major exploit, devs agreed that it was an easy fix and already addressed it. In addition, the team hired two different security audit firms (Halborn and ToB) to perform technical due diligence on new updates planned to be released. One of the following software releases will also include an auto solvency checker, which was already so close to being merged and would have halted the network in a matter of minutes if it had been already activated. Trading is expected to resume shortly on all chains besides Ethereum. The community is currently going through a decision process on how to address the Ethereum chain.  Node Operators, devs, LPs, investors, and users are adding their perspective by listing cons & pros for each proposal, indicative of a community moving towards being a truly self-governing decentralized network.

Exploits are part of crypto. As the leading cross-chain network, THORChain is paving the way for inter-blockchain communication without having the luxury to re-deploy battle-tested code. As a member of the THORChain community, we believe lessons will be learned, THORChain will grow stronger and move onward towards Mainnet.

THORChain’s Multi-Chain ChaosNet

First things first. As a refresher, we start off by visualizing the value flow on THORChain.

The value flow obviously starts with Swaps. Swaps generate 3 kinds of fees; Liquidity Fees, Network Fees & Outbound Fees. Liquidity Fees are the slip-based swap fees. Network Fees consist of the gas users pay to make transactions on the THORChain blockchain itself (= 0.02 Rune/tx). Outbound Fees are the gas fees collected so THORChain can make outbound transactions on external chains, meaning they are only charged when non-rune assets are taken out of pools (withdraw to asset and/or swap to asset).

Liquidity Fees become part of System Income and immediately benefit Bonders & LPs. Network & Outbound Fees are added to the Reserve alongside all other revenue streams that exist today and will exist in the future. All funds in the Reserve blend into the unreleased Rune supply that already exists in the Reserve, and altogether get slowly emitted out as Block Rewards based on the emission schedule. Every year, the Reserve emits 1/6th of its remaining funds. Furthermore, the Reserve can occasionally payout individual LPs as part of its duty to backstop Impermanent Loss (IL).

Now that we have set the stage let’s get into numbers. Liquidity providers are the 1st class citizens of THORChain. In order for THORChain to become the liquidity black hole it set out to be, LPs should always be handsomely compensated for their contributions. In this respect, we first look at historical APYs for LPs.

Collectively, LP’s have been receiving 35% overall APY. A majority of this revenue currently originates from block rewards, as illustrated in the chart below.

Block rewards have been making up a larger portion of block rewards over time. The catalyst for this has been the MCCN Reserve balance. THORChain currently has 200M+ unreleased Rune supply held across 4 different Reserves (2 Standy, 1 SCCN, 1MCCN). Standy & SCCN Reserves are slowly migrating over to MCCN Reserve in order to reduce the impact of any potential bugs or exploits on MCCN (a wise move in retrospect). Since Block Rewards are a function of the Reserve size, they have been increasing as more Rune migrates over to MCCN Reserve. It’s worth noting that the Block Rewards emission rate is currently overridden to release 1/4th of the remaining Reserve, as opposed to its normally programmed 1/6 distribution, to hit a target APY with less than full reserves. After Chaosnet, the network will transition into Mainnet, at which point the Reserve will reach full capacity ie. 200M + Rune (all of unreleased supply) equaling 720M USD at the current price (post exploit). At that point, the emission curve will be set to follow a healthier emission rate.

At present, THORChain has ~140M USD total liquidity distributed across 26 pools. We evaluate APYs across pools under 5 categories; namely BTC, ETH, BNB, Stablecoins (BUSD & USDT & USDC), and Smaller Pools which hold less than 2.5M USD each. xRUNE is not included in categorization given the lack of sufficient historical data. The breakdown of pool depth by category is given below.

APYs across 5 categories are compared in the interactive diagram below. Overall APY figures have been quite attractive; Stablecoins ~50%, BNB ~40%, BTC & ETH ~30%, Smaller Pools ~25%.


Sticky THORChain Liquidity

One of the most striking finds is how sticky THORChain liquidity has been throughout the entire MCCN lifetime. Liquidity Units are used for accounting purposes and represent a share in the pool that is completely independent of the prices of the pooled assets. Liquidity Units only increase when LPs add liquidity into the pool and decrease when LPs withdraw liquidity. On the other hand, the pool depth changes from additions and removals of capital, fluctuations in the USD price of the paired assets, and as fees accrue to LP positions. Furthermore, because liquidity units generally maintain a comparable value across pools over time, units can be aggregated to represent total inflows & outflows. In the below chart, we notice that total liquidity units across all pools remained somewhat stable during  17-22 May and 16-21 June when overall Depth decreased significantly. They even increased further while Rune’s price was dropping in between 3 June-12 June period. This implies that most of the decrease in depth was a result of price action rather than a net withdrawal of liquidity. This is a very healthy indication that in our opinion carries 3 takeaways:

1. Current demand for LP far exceeds the liquidity cap limits. There is a constant demand from LPs waiting in line to be the first ones to get into the pool once caps are raised. Even though some LPs pulled liquidity during price declines, those outflows were typically either matched or more than offset by inflows, often resulting in positive net inflows.

2. ILP (impermanent loss protection) has been very effective in retaining capital. THORChain offers ILP where LPs are assured by the Reserve never be worse off relative to holding 50% Rune and 50% Asset, as long as they remained in the pool for >100 days. The protection increases 1% every day until maxing out on day 100. We will evaluate historical IL and assess the sustainability of IL coverage in later sections.

3. LPing on THORChain is different than LPing on a single chain AMM. It comes with a learning curve that we believe builds conviction and helps LPs appreciate the long-term value of the network.

Thorchain currently limits the amount of LP capital the network can support as part of its progression through MCCN. This is where the ‘raise the caps’ element comes into play. As a quick refresher, the network targets a 2/1 ratio of rune bonded in nodes vs rune in liquidity pools. The current circulating supply is roughly 270m Rune while current Rune bonded across active nodes is 24m. If the existing limits on the number of Rune that can sit in LP pools were removed, there would be a rush of liquidity added to the pools. The concern is that bonded Rune would not be able to increase at nearly the same rate because there’s a churning process, making the network more susceptible to an attack. The capital at risk would be much larger than the capital being used to protect the network, creating an economically viable attack vector.

The churning process is designed to gradually scale the security of the network. Every 3 days, a few of the oldest nodes are churned out and a slightly larger amount of the biggest nodes on standby are churned in, gradually increasing the amount of nodes in the network. This also gradually increases the quantity of Rune securing it, and that’s what enables the caps to be raised. The cap is measured in quantity of Rune. When the bonded Rune total gets a few million above 2x the LP-ed Rune total, caps are raised to close that gap. Capacity fills up fairly quickly as people race to provide before capacity fills up.  The plan is to gradually grow liquidity this way until bonded rune is large enough to appropriately secure all the liquidity that would get quickly added afterwards. Caps would then be removed and the incentive pendulum will be the main guiding force between Bonded and LPed Rune.

Despite caps artificially slowing down liquidity growth, Pools have reached 100m USD which was enough to start reducing swapper costs. As pools got deeper, the same amount of value transfer became cheaper. This is due to the slip-based fee model, where the fee charged on a transaction is based on its size relative to the depth of the pool. Average swap sizes across the network grew roughly 2.5x while slip-fees as % of swap size reduced significantly. Deeper pools render larger value transfers practical.

The benefit is more evident below where we notice that average swap fees have been ranging below 0.3% since June; a figure that can be taken as an industry-wide benchmark.

Earlier we looked at total volume and volume across different pools/categories. Now we’ll visualize volume across chains while also taking into account their direction. It’s important to note that any swap that doesn’t include THORChain (user is specifically buying or selling Rune) is technically a double-swap since it has to go through two pools, but we don’t double count the volume.  For sake clarity, 100 USD worth of transfer from Binance to TC is treated the same as 100 USD worth of transfer from Binance to Ethereum.

Binance had an undeniable dominance on volumes as Binance<>Binance accounts for approximately half of the double swap volume that has been generated so far on MCCN. Furthermore, the volume from Thorchain to Binance is more than the combined volume from Thorchain to Bitcoin & Ethereum. Litecoin & Bitcoin Cash’s contribution to overall volume has been quite low.

To better understand the dynamics in play we zoom in on fees. We believe aggregate fees paid by swappers, as opposed to just looking at volume, is a better proxy for demand.

In every THORChain tx, there’s a time gap between when swappers pay for gas and when THOR Nodes actually spend the gas for payouts from pools at the destination chain. As such, THORChain does not know how much gas it will need to pay the network to send funds until Nodes actually spend it. As a precaution to fluctuations in gas costs, users are charged 3 times the average gas of the destination chain as an outbound fee (presented as blue in the chart below). Assuming no change in gas prices, 1/3 of the outbound fee is spent on gas at the destination, 1/3 gets added to pools and 1/3 is captured by the Protocol Reserve.

In the chart below we notice that users have paid significantly more fees for swaps to Ethereum (buy ETH or buy ERC20) than swaps to Binance with much less volume. A not-so-evident highlight of the below chart is that the outbound fees (blue) reward the Reserve and don’t immediately impact LPs APYs. On the other hand slip-based fees directly benefit LPs&Bonders which is reflected in their historical APYs. As we will study in the final section, swaps with Synthetic versions of ETH & Bitcoin will significantly reduce user costs as they will consume negligible outbound fees. This will drive more users which will drive more Volume and result in more slip-based fees directly and immediately contributing to APYs experienced by LPs.

The relationship between swapper behavior and gas fees is even more clear below, where we notice the average size of swaps to Ethereum becomes bigger as gas on Ethereum gets more expensive. This shows the intention of swappers trying to keep their overall expense per swaps below a target range.

Synths

THORChain’s future is THORSynths. Synths will inarguably be the biggest upgrade to the project and will drastically change dynamics in play. THORSynth’s are designed to significantly increase volume on the network. Wonder how they work? Buckle up because there is a lot to unpack here.

At their core Synths are IOUs for Assets, designed to maintain 100% price exposure to Assets while contributing to pools. 1 sAsset is always backed by 50% Asset and 50% Asset Worth of Rune. Synths can be minted by depositing Rune into the pool and redeemed by withdrawing Rune out of the pool. Synth holders don’t accrue earnings (liquidity fees + block rewards) but instead maintain one-sided price exposure to the underlying Non-Rune Asset. This means, unlike LP tokens THORSynths don’t suffer IL. The primary purpose of Synths is to increase volume by enabling cheap and fast swaps. Importantly, while Synth holders are free to use them for fast & cheap arbs, they can also lock them up in a Vault (Savings Account) and earn fixed interest, supplied directly from the Reserve. In the future, Synths will be used on other THORFi applications such as collateral for borrowing or mint an index composite.

Without further ado, in the below diagram we walk through the process of minting and redeeming Synths. To build up our understanding, in a step-by-step process, we first visualize the flow without taking into account relative price fluctuations between Rune and Asset.

 

As we saw earlier, gas on external chains greatly impacts trades and limits volumes. It’s only natural to expect Synths to materially drive volume up simply from reduced fees. Synths also increase pool depth, reducing the cost of value transfer, making THORChain a more attractive venue for trades. However, besides low fees and deeper pools, Synths carry other magical benefits that may not be immediately evident.

While both Synths and Assets share the same side in a pool, they live on a different heartbeat; ie. block times. We’ll use the BTC pool to help show why this is important. Without Synths, Native BTC to Rune swaps can, at the very best, update BTC pool price at ~10 mins intervals. sBTC (synthetic version of BTC) reduces this interval to 5 seconds, carrying 2 major implications.

  • It gives THORChain pools the ability to react upon new information, even during the time period between 2 subsequent blocks on the related external chain. This means every bit of “interblock price fluctuation” can be reflected on THORChain, significantly increasing the overall volume on the network. Given the same UX, we expect swapping Synth to other Synths, Rune or Assets to become a norm.
  • Related to point 1, Synths can be used to capture value through front-running and arbitrage. In THORChain, all swaps are put in order by the Swap Queue. However, to get into the queue, first, transactions need to be observed by THOR Nodes on external blockchains. Thanks to their fast settlements, Synths allow their holders to get in front of incoming native swaps. For example, an sBTC holder can redeem his sBTC immediately after observing a large incoming BTC tx, extracting value up to the native swap’s max slip target.

The unmatched features of Synths however don’t come without costs. Despite their magical powers, Synths don’t accrue any earnings. Furthermore, they are entitled to slippage at redemptions & minting, potentially losing some of their value to LPs in the form of slip fees. We now take a look at how Synths maintain their price exposure and what implications Synths have on LPs in more detail.

 

 

Users add Rune to pools to mint Synths. The arbitrage that takes place immediately following the deposit transforms the Synth collateral (deposited Rune) into 50% Asset and 50% Asset worth of Rune. While Synth holders and LPs share the same pool, their units in the pool are accounted for separately. Synths’ share in the pool is accounted by Synths Units while LP’s share in the pool is accounted by Liquidity Units. Unlike Liquidity Units which are fixed (and only change at withdrawal & deposit), Synth Units dynamically adjust based on the relative price of assets in the pool. If Rune outperforms Asset, Synth Units share in the pool drops, benefiting LPs with a surplus of Rune. On the other hand, if Rune underperforms Asset, Synth’s share in the pool increases, extracting additional Rune from LPs. In short, Synths cause LPs to experience a leveraged long position on Rune. Synth minting is planned to be capped at 33% of Asset depth.

LPing On Steroids

The impact of Synths on LPs can be quantified below, where we compare LP’s losses/gains due to price movements across 2 pools where one pool is 33% loaded (%33 of Asset) with Synths and the other is fully owned by LPs. The white curve represents IL as currently experienced by LPs. For example, based on this, a 500% price change on paired assets causes LPs to lose 25% of their liquidity value. Notice that in the case of 0% Synths the losses are symmetrical; the same change in price results in the same loss regardless of the direction of the price change. However, with a synthetically loaded pool (blue curve), LPs gains and losses depend on the direction of the price change. More precisely, LPs lose less when Rune outperforms Asset and lose more when Rune underperforms Asset. In fact, LPs see their LP value increase when Rune outperforms the asset by less than 2.27x (%44).

The gain is maxed when Rune outperforms Asset by 1.5x. It’s important to note that the below chart only studies changes in LP value based on relative price changes of paired tokens in the pool. It doesn’t include earnings (liquidity fees + block rewards) which can be imagined as a force pushing the curve up along the Y-axis. In a pool with 33% Synths and APY 35%, LPs will be effectively earning (= 0.35/(1- 0.33/2)) %42 as they retain earnings waived by Synth holders. This corresponds to a 20% increase in earnings. Notice that we haven’t taken into account the increase in Volume which we expect to potentially multiply by a few factors with the introduction of Synths.

The other side of the coin, as may be inferred from the below chart, is that LPs experience a bigger IL when Rune underperforms. However, this can always be backstopped by the Reserve if LPs are being patient. Any net loss LPs may suffer (IL-earnings) is always fully covered by the Reserve after 100 days as per the ILP Coverage.

The question then becomes whether Reserve can sustain its ability to offer ILP. Our short answer is yes. The best way to judge this is to zoom in on historical values.

For sake of clarity, the outbound fee shown in the above chart represents the average portion retained by the Reserve (1/3 of network fee paid by user)

Historically we notice that Outbound Fees accrued on Reserve have been more than enough to cover all ILP expenses Reserve had to spend. In fact, the net effect of Outbound Fees and ILP has resulted in a net inflow of 8k RUNE on Reserve. We further notice that for the most part, during periods of high ILP expenditure, Outbound Fees have also increased as a result of increased user activity. That said, we expect Outbound Fees topping up the Reserve to drop immediately after the introduction of Synths. This will however be offset by amplified LP earnings, which still alleviates IL liability of the Reserve to the extent that it reduces the number of LPs with net losses. Regardless of the math in play, ILP has been a negligible part of Reserve which will own 200m+ Rune at full capacity and be supported with the introduction of new THORfi use cases in the mid-term.

Savings Account

An alternative use of sAssets is to lock them up in a vault, known as a Savings Account. While locked, Synths can’t be used for arbitrage but instead, holders can earn “low” fixed interest (~10%) paid directly from Reserve. This causes a deficit to the Reserve which then charges a tax (~10%) on earnings of Bonders & LPs until the deficit is paid down. The tax can comfortably cover the deficit because it’s effectively sourced from the portion of high variable earnings that Synth Savers have waived in the first place. As we have seen earlier, historically the aggregate earnings of pools have been fluctuating between ~20-47%. Essentially Synth holders waive their right to high variable earnings (~20-47%) and in turn earn low, fixed interest (~10%) on assets while maintaining their one-sided price exposure to Asset.

The Holy Grail of Synths: iRune

This is where Synth design gets really interesting. Just like Assets will have their synthetic versions, Rune will have its own as well, known as iRune.

iRune minting is counterintuitive because, unlike Assets, Rune exists in every pool. Therefore iRune is not minted by adding Rune to a specific pool. Instead, to mint iRune, Rune is swapped against Total Pooled Rune, and the resulting iRune gets virtually added to all pools in proportion to the pool size. The virtual Rune depth (iRune) is then subject to dynamically change based on Rune’s price against Asset increasing when Rune outperforms and decreasing when Rune underperforms. This offsets the asymmetrical PnL LPs experience due to Synths. As such in the future, iRune/sAsset ratio can be calculated for each pool to be used to safely lift off 33% Synth caps. That said, iRune will be still subject to Liquidity Caps. In fact, under Synth & iRune design, the new liquidity cap formula will be; Total Bonded Rune > Total Pooled Rune (= Rune being LPed + all iRune Collateral + all Synth Collateral).

Just like sAssets, iRune (interest-bearing Rune) can be locked into a savings account to earn fixed yield on Rune. This is a big leap on THORChain value flow as it presents an option to earn a yield without losing price exposure to Rune.  Furthermore, iRune contributes to pools, greatly aligning the incentives of holders with that of the network. Once launched, we expect demand for iRune to create a significant additional demand to raise the liquidity caps. We furthermore expect this to heat up the Bonder competition and accelerate the cap limit raises.

Wrap Up

Synth & iRune design will introduce new stakeholders who differ from each other in terms of the roles they play, risks they take on, and the earnings they accrue. We sum these up on the following chart.