THORChain Q3 ’23 Ecosystem Report
1 July 2023–30 September 2023
Summary
THORChain has completed the trifecta of Swap, Save, and Borrow with the delivery of the long-awaited Lending protocol with no liquidations, no interest, and no expiration. Streaming Swaps were added, making THORChain a strong competitor to centralised exchanges and seeing a massive lift in daily volume. Savers for Sables was added along with enabling Streaming Swaps for Savers and Lending, and BNB Smart Chain was added. Tweaks to the network, savers, and lending have occurred, Planned Obsolescence mostly completed and major integrations landed. It has been a massive three months for THORChain.
A look at Q3 Network Statistics
Dashboard | More Stats | Even More Stats
- Total USD Volume: $2.38b (+114.4%)
- Highest 24h Volume: $101.12m (+365%)
- Change in Total Liquidity: $99.41m to 128.37m (+29.1%)
- Change in Savers: $29.35m to $26.74m (-8.9%)
- Liquidity Fees Collected: $3.38m
- LP Earnings Breakdown: 48.3% Liquidity Fees — 51.7% Block Rewards
Top 5 Swap Routes by USD Volume:
- BTC <> RUNE — $531,380,914
- BTC <> ETH — $427,133,340
- ETH <> RUNE — $318,131,414
- ETH.USDC <> RUNE — $87,812,675
- BNB <> RUNE — $81,637,191
Top 5 Swap Pairs by Liquidity Fees Generated:
- BTC <> ETH — $1,234,624
- BTC <> ETH.USDT — $345,432
- ETH <> RUNE — $297,334
- BTC <> RUNE — $291,907
- BNB <> BTC — $144,102
Top 5 Affiliates by USD Volume:
- Trust Wallet — $121,306,102 in 104,303 swaps
- THORSwap — $43,514,578 in 15,856 swaps
- Rango Exchange — $4,527,327 in 1,858 swaps
- ShapeShift — $3,325,454 in 1,980 swaps
- THORWallet — $3,026,133 in 2,869 swaps
Total affiliate fees paid out: $140.58k
What’s New to THORChain in Q3 2023?
Lending
The long awaited Lending protocol is live on THORChain. Users can deposit native BTC or ETH as collateral and receive TOR (USD)-denominated debt in the asset of their choosing. Lending on THORChain has no liquidations, no interest, and no expiration. From its release on 20 August to 30 September 2023, 455 loans have been opened and over 1 million RUNE has been burned.
Release Announcement — Medium | Documentation | Video | ADR-11
Lending Dashboard by Nine Realms
Lending Dashboard by Banbannard
Streaming Swaps
Streaming Swaps allows large swaps to automatically be broken up into multiple-sub swaps executed over time. Streaming Swaps allow liquidity fees for even the largest trades to go as low as 5 basis points, depending on arbitrage between sub-swaps. By allowing liquidity demands to be met over time rather than all at one, much better price execution is achieved. With Streaming Swaps, THORChain is now both faster and cheaper than using a centralised exchange.
Release Announcement — Medium | Documentation | Video | ADR-10
Streaming Swaps Dashboard by Spot Wiggum
Streaming Swaps Dashboard by Banbannard
BNB Smart Chain
BNB Smart Chain support has been added to THORChain. BNB and BEP-20 assets are now available for Swaps, LP, and Savers. Savers is now available for BNB on BNB Smart Chain.
TOR Accounting
TOR (THOR.TOR ) is a non-transferable unit of account within THORChain, designed to match the value of $1 USD. It has been in use since ADR-003, which occurred 14 months ago. TOR cannot be exported to other platforms or networks and always maintains a market cap of $0.
Current TOR Anchor pools are:
- ETH.USDC
- ETH.USDT
- BNB.BUSD
- AVAX.USDC
RUNE’s canonical on-chain price measured in TOR is now available at the Network Endpoint
TOR serves several essential functions within the THORChain ecosystem:
- Network Fees: As a result of ADR-009, network fees are now denominated in a specific TOR amount, rather than RUNE. This means the RUNE network fee that users are required to pay when conducting transactions within THORChain, will fluctuate depending on RUNE price.
- Debt Accounting: TOR is used to account for debt within Lending. This means that any outstanding debts are measured and recorded in TOR units.
- Only TOR Anchor Pools can be used for Stablecoin Savers.
Streaming Savers
*Feature is merged on Mainnet, but yet to be enabled via Mimir
Streaming Swaps are available for Savers*. Savers deposits and withdrawals will automatically use the Streaming Swaps feature to deposit and withdraw, with no additional input from the user. The swaps will use a sub-swap interval of 1.
Streaming Loans
*Feature is merged on Mainnet, but yet to be enabled via Mimir
Loans can be entered and exited using the Streaming Swaps feature*. The amount of swaps in a stream that can be performed for a loan open or close is dictated by the respective virtual pool depth. As the virtual pool depth shrinks, less streams can be performed. Below a virtual pool depth of 50% the parent pool, a streaming swap cannot be performed.
Virtual pool depths and Maximum # of Sub-Swaps:
Virtual Pool depth is 99.99% Parent Pool Depth = 10,000 maximum Sub-Swaps
99.9% = 1,000
99% = 100
98% = 50
95% = 20 (20 streams means a $1m loan is 50BPS)
90% = 10
80% = 5
70% = 3
60% = 2
50% = 2
10–40% = 1 (e.g., no streaming)
Lending Documentation | Gitlab MR
Savers for Stablecoins
Savers has been enabled for stablecoins that underpin TOR Pools. Any stablecoin pool that receives the TOR Anchor designation (“TORANCHOR” — configurable via Mimir) will immediately become available for Savers deposits.
Savers Yield Scaling Changes
Savers yield decreases as the Synth Utilisation (the liability a pool has for its synthetic assets) for a pool increases. MaxSynthsForSaversYield mimir has been decreased from 100% to 60% — meaning saver yield scales to zero at 60% synth utilization for a pool (which is also the current synthetic asset cap), further reducing incentive for savers to continue depositing when undesirable.
SynthYieldBasisPoints’ has been increased from 50% to 80%. Meaning pools with 36% synths per pool will maintain yield parity vs the previous flat 50% yield; and pools with lower synth utilization will see increased yield.
Details in the Developer Discord
Dynamic MaxAnchorSlip Calculation
The behavior of MaxAnchorSlip for lending has been changed to adjust dynamically, based on the previous volume of the network. The mechanism looks at the past two weeks of volatility and adjusts the MaxAnchorSlip accordingly. The MaxAnchorSlip dictates the sensitivity of the virtual pools constricting during times of volatility for the network. The number was static, but now will change dynamically.
Generic Data Passing Between Chains
This extends the usage for memos in THORChain to be used for arbitrary purposes, including being able to send arbitrary data between two smart contracts on two chains, or for generic messaging between two supported chains. This increases the aggregation possibilities using THORChain.
Gitlab MR | Developer Documentation
Preferred Assets Payouts for Affiliates
Affiliates can now register a preferred payout asset to their THORName. When a preferred asset is set, affiliate fees will be collected in the “Affiliate Collector Module”. When the accrued fees for an affiliate reach 200x the outbound fee for that asset, a swap is initiated and the affiliate is paid. This allows THORChain to pay each affiliate in the asset of their choice, including Bitcoin, ETH, and Stablecoins, and is no longer limited to be paid in RUNE only.
Developer Documentation | Gitlab MR
Nine Realms Transaction Tracker
Nine Realms has developed an open source transaction tracker for the community to make use of. The app tracks the lifecycle of the transaction from observation, confirmations, swapping, outbound delays, and outbound confirmations. Transactions can be tracked by adding the relevant transaction hash to the URL.
General Network Updates
Generic UTXO Client Refactor
The UTXO client has been reconfigured for increased efficiency. The changes have already been rolled out for DOGE and BCH. The refactor will be used for LTC and BTC in the future after further validation.
Asset Short Codes
Short codes have been added to make memos shorter. For example “b” can be used in place of “BTC.BTC” for native Bitcoin, “e” for “ETH.ETH”, “r” for “THOR.RUNE”, etc.
A full list of short codes and memo reduction techniques can be found in the Developer Documentation | Gitlab MR
Midgard Performance Improvements
Midgard version 2.17.0 underwent upgrades that delivered major performance improvements. Users of the Midgard API should update to the latest version to use these enhancements.
Details in the Developer Discord
Changes for Multi-Node Operators
Single operators with multiple nodes, have their nodes spread out as much as possible among the Asgard vaults based on their node operator address.
This increases the difficulty for any node operator to gain a controlling share of an Asgard vault and makes it significantly more difficult for a malicious actor to acquire a controlling share of an Asgard vault.
Pending Liquidity Removal
Pending liquidity from incomplete symmetrical additions were committed to their respective pools via a mimir change (PENDINGLIQUIDITYAGELIMIT) reducing the commit cycle time. Symmetrical were changed to Asymmetrical additions allowing their owners to still have claim the liquidity at a later stage.
Pending add liquidity auto-commit record
Planned Obsolescence Almost Complete
- ETH.RUNE and BNB.RUNE deprecation was completed with the Killswitch on block 11,756,000, along with all vesting. The migration period was over 2 years with a 12 month killswitch duration enacted by nodes upon the announcement of Mainnet.
- Control of social media accounts (Twitter, Telegram, Discord), code base (GitLab, GitHub), and the Treasury has been distributed among the community.
- THORSec retains limited Admin Mimir control to fulfill its responsibilities for Network Operations and Security. Admin Mimir will be deprecated in favor of Mimir V2 — separating economic constants from operational constants and accessible to all validators.
- Active Node Operators retain full control over the network, including the ability to modify any Admin Mimir settings, which are already limited by a denylist.
- After Mimir V2 is implemented, Admin Mimir is removed and Planned obsolescence is complete.
In the Pipeline
Memoless Transactions
Memoless transactions will allow transaction intents (memos) to be registered and executed by transactions that don’t contain a memo. To achieve this, a registered memo is given a 5 digit reference number. To correlate a transaction without a memo to a registered memo, the last 5 digits of the amount must match the reference number.
For example, if a registered memo has a reference number of “12345” and the user wants to swap 1 BTC, the user would send 1.00012345 to a THORChain vault address and the transaction will be executed for that intent.
Memoless transactions will make interacting with THORChain completely agnostic to the wallet that is used. An interface can register a memo for a user based on their intent — make a swap, take out a loan, etc — and display an exact amount to send along with the address to send coins to. As long as the instructions are followed exactly, this can be achieved with any wallet. Users can take out a loan with Bitcoin Core or swap with a CLI wallet.
Memoless also makes long memos possible on chains that don’t have enough space for long memos — such as using THORChain’s DEX aggregator from Bitcoin, which has an 80 byte memo limit.
Order Books
Order Books are planned to sit on top of THORChain’s AMM with a unique design, diverging from a traditional orderbook. Orders are created as synthetic assets with a trade target that automatically execute when the AMM can guarantee execution. Orders do not execute against other asks/bids, they execute against THORChain’s AMM.
For example, a user wishes to place a sell order of 1 BTC to USDT when BTC goes above $100k. 1 BTC can be stream swapped into ~1 synthetic BTC, and an order will be placed. When the BTC price reaches above $100k, the swap is automatically executed and the user receives the requisite amount of USDT. If the user wishes to cancel the order, they can at any time and stream swap back to L1 BTC or place another order.
Perpetual Contracts
Perpetual Contracts (perps) are in the consideration / early design phase and are still a work in progress. An ADR will be required to pass the governance process to ratify a design before adoption.
Cold Vaults
Cold Vaults are in the consideration / early design phase and are still a work in progress. An ADR will be required to pass the governance process to ratify a design before adoption.
Mimir V2
Admin Mimir will be deprecated and the current mimir functionality will be replaced by Mimir V2. Mimirs will be separated into “economic” and “operational” constants with different consensus requirements. Operational constants like chain pausing will be accessible by any validator so the network can stay nimble and respond to threats in real time, while economic constants will continue to require a supermajority consensus to change. This is the last remaining step for the completion of Planned Obsolescence.
Custom Refund Addresses (EVM Only)
Custom refund addresses will be enabled, which will make it so that refunds will be sent to the specified address, rather than the sender — opening up possibilities for smart contracts to make swaps with thorchain without introducing the possibility of loss of funds for the user
Integrations Updates
Ledger
- THORSwap app has been released in Ledger Live
Trust Wallet
- Added support for ERC-20 and BEP-2 assets
Edge Wallet
- Added support for Streaming Swaps
Lends
- Added support for Lending
ThorWallet
- Added support for BNB Smart Chain
THORSwap
- Added support for Lending
- Added support for BNB Smart Chain
- Added DEX aggregation with Pancake Swap for BNB Smart Chain
Rango Exchange
- Added support for BNB Smart Chain
Shapeshift
- Launched a MetaMask Snap, enabling MetaMask users to access THORChain cross-chain functionality via ShapeShift interface
AsgardEx
- Added support for Synthetic Assets
- Added Savers support
- Added Streaming Swaps
Other Ecosystem Projects:
- THORMon — thorchain.network
- Thornode Network — thornode.network
- THOR Infobot — x.com/thor_infobot and t.me/thor_infobot
- THORCharts — thorcharts.org
- THORChain.org — thorchain.org
- THORChain.net — thorchain.net
- Viewblock — viewblock.com/thorchain
Where to get more information?
- Twitter Spaces — held most weeks
- LPU University — monthly posts
- GrassRoots Crypto — monthly update videos
Community
To keep up to date, please monitor community channels, particularly Telegram and Twitter:
Website | Documentation | Twitter | Telegram Community | Telegram Alerts | Community Discord | Developer Discord | Explorer | Viewblock | Reddit | Github | Gitlab | Medium | Linktree | Thorcharts