SWIVEL FINANCE: Protocol for Tokenizing and Trading Cashflows
On the back of a solid 2021 that was only outshined by NFTs, there are a number of DeFi narratives to look forward to in 2022 including structured products, protocol revenues, DeFi governance, real world DeFi and innovative primitives like tokenized cashflows. In this article, I’ll cover the implementation of tokenized cashflows in Swivel Finance, a new project launching on Ethereum mainnet.
What are tokenized cashflows?
Tokenized cashflows extend the savings possibilities for individuals and large organizations alike through the introduction of fixed rates across a basket of assets. To achieve this, protocols operating between users and interest earning protocols such as Compound and Aave, tokenize user deposits in an innovative way to afford users more control. Usually this involves tokenization of the capital and expected return separately and deploying the capital into a lending protocol to earn interest. The two tokens with their baked-in expected yields and other nuances, can be traded on secondary markets at a small cost to exit positions, amplify yields or even allow new users to enter positions without using the base protocol directly.
While adding more flexibility to users, these protocols are vulnerable to smart contract lego risk as well as the inherent economic risk of more complex financial products. Swivel Finance is a new protocol for fixed rate markets set to launch soon after similar projects such as Pendle Finance and Element Finance.
Vault Tokens or LP Tokens
A standard DeFi vault, Yearn Finance and Compound for example, works this way. A user receives vault tokens/shares(yTokens and cTokens respectively) that act as a receipt representing the share of a user’s deposits in a vault. Since vault assets grow as the vaults generate income through interest or other strategies, users receive additional assets when they redeem their vault tokens which now equate to more assets than they initially deposited. Yield on these protocols is variable depending on the fluctuating borrowing interest.
The assets can be locked until maturity or redeemed any time with their earned interest depending on vault design.
In addition, these assets are tradeable on AMMs like Uniswap, Balancer and Sushiswap.
How Swivel’s yield and principal tokens work
Under the hood, Swivel mints the user’s deposit into two tokens:
-zcTokens(ERC20) representing the deposit, redeemable at maturity
-nTokens, yield-generating token representing the interest. They have inbuilt time decay that depreciate towards maturity date. nTokens track interest that users can redeem upon maturity.
To realize the maximum yield for the fixed-rate chosen, user deposits remain locked(but the tokens can be exchanged between multiple users at a small cost) until maturity date.
Swivel supports trading of these two token types in their inbuilt off-chain orderbook: Swivel Exchange.
The main users of the Swivel exchange are:
- Users who want to trade their yield tokens thus locking in a fixed yield immediately.
- Users could also increase their exposure to future yields without minting principal and yield tokens on Swivel directly.
- Lastly, market makers are able to provide liquidity for yield tokens and manage their positions effectively earning transaction fees.
Factors influencing design of Swivel exchange
Swivel exchange’s orderbook improves the limitations of AMM architecture through the following ways:
· Enhanced capital efficiency
· Yield tokens attributes are hard to build into the single constant product/formula AMM. You would require more than one AMM which is expensive.
While Uniswap V3’s concentrated liquidity models could support more unique markets, the high transaction fees hinder adoption.
Swivel’s off-chain orderbook brings several design benefits including:
· Supporting limit orders
· Reduced slippage
· Reduced transaction costs
· Efficient pricing
More info here: https://swivel.substack.com/p/so-why-an-orderbook
Market-making in yield assets
The orderbook architecture of Swivel exchange supports exchange of yield tokens(both nTokens and zcTokens) and makes it easy for market makers to manage yield orders. Also, the protocol incentivizes market making by rewarding filled orders with token rewards/fees. This makes it more efficient to trade yield assets on it over any other AMM out there as currently built. More info here(https://swivel.substack.com/p/market-making-in-yield-markets )
Yield Token qualities
Yield tokens have unique inherent qualities. Design around these factors differentiate one fixed-rate protocol from the next:
· Time decay
· Underlying asset rate variance — fluctuation of USD lending rate on Compound for example needs to be reflected on the traded yield tokens
· Rate sensitivity — volatility of underlying asset’s price. Having an AMM that automatically adjusts would be the best design.
Swivel testnet is running on Rinkeby https://swivel.exchange/
Guarded mainnet is currently live.( https://swivel.substack.com/p/swivels-guarded-mainnet-launch )
More than $5m raised from the following investors: Multicoin Capital, Electric Capital, IOSG Ventures, CMTDigital, CMS, GSR, Divergence, Defiance Capital, Fenbushi Capital, Defi Alliance, OKEx Blockdream Ventures, SevenX Ventures, Ryan Selkis(Messari), Alex Pack(Huobi Global), Ash Egan(Acrylic), Stani Kulechov(Aave), Ajit Tripathi(Aave), Matt Batsinelas(Flow Traders)
Code4rena code review completed (https://swivel.substack.com/p/code4rena-audit-competition-post )
Important links for more information