# Sense Protocol Litepaper

# Abstract

In this litepaper, we introduce a decentralized protocol that enables fixed rates and future yield trading on existing yield-bearing assets. We describe a practical design pattern that escrows tokens ("Target") and issues an arbitrary number of tokens that hold a claim on the Target in the future. Each token type will have their own delivery schedule and are valued by market participants based on their Target cash flows. The Sense Protocol applies this design pattern to yield-bearing assets by allowing users to decompose the principle and yield components and package them behind two maturing assets, a Zero and a Claim. Zeros redeem 1-for-1 for the Target's underlying at maturity, whereas Claims deliver yield accrued on the underlying until maturity. Because the protocol is not issuing debt, the protocol is able to take a permissive approach, allowing its users to add a yield curve to any yield-bearing asset.

# Introduction

DeFi Lending Protocols offer open-term crypto-collateralized borrowing and lending. To offer continuous positions, these protocols – such as Compound and Aave – respond to changes in market forces by adjusting interest rates. These floating interest rates are essential for the health of these lending protocols, as they ensure enough liquidity exists for borrowers and lenders to adjust their positions. However, it leaves out a large segment of potential users that fear interest rate volatility. Therefore, to expand the value proposition of DeFi and serve mainstream users, our industry requires the ability to hedge against interest rate volatility.

Multiple projects are tackling this problem. Zero Coupon Loan Facilities, such as Yield (opens new window), Notional (opens new window), and HiFi (opens new window), accept collateral assets, e.g. ETH, and mint their own zero-coupon tokens, redeemable 1-to-1 at a future date for a target asset, such as DAI, which is either sourced from physical or synthetic settlement, depending on the protocol. Others pursuing a similar design, such as UMA, rely on a cash settlement mechanism, which delivers an amount of collateral proportional to the target asset delivered at maturity. Since ZCLs mint a synthetic asset (its zero-coupon token), backed by some volatile collateral, there is a possibility that their liquidation systems cannot discharge collateral fast enough in a bear market, leading to underwater debt positions. Underwater debt positions can cause a whole host of problems, ranging from a malfunctioning settlement mechanism to the infamous insolvent protocol state, where its total liabilities (zero-coupon tokens) exceed its total assets (collateral).

88mph offers a compelling alternative. Instead of following the ZCL model, it focuses on yield generation systems, such as Compound, Aave, and Harvest, and extends Fixed-Interest Rate Bonds (FIRBs) on fixed-term deposits. The fixed rates are determined by governance-authorized interest rate models. Currently, its only authorized model offers a fixed APY equivalent to 75% of the monthly exponential moving average of the chosen yield-bearing asset. However, if the underlying APY drops after a deposit, 88mph may fail to guarantee its fixed rate. To mitigate this risk, the protocol pools deposits together and enables floating-rate bonds (FRBs), allowing other users to act as fixed-rate guarantors in exchange for excess yield-generated proceeds [ref (opens new window)]. This model has two drawbacks. First, the interest rate models are rudimentary and require governance approval. This leads to suboptimal rates for fixed-rate lenders and slow expansion to more sophisticated models. Second, the design restricts FIRB/FRB holders from exiting prematurely. Because FIRB positions are tokenized as NFTs, they lack liquid markets. Furthermore, FRB holders are second-class citizens and have "temporary or permanent default risk if the FIRB's holder doesn't withdraw the full face value of the FIRB at maturity" [ref (opens new window)]. Although 88mph is working on other mitigation methods, such as a Zero Coupon Bond wrapper for FIRBs, the improvements are still in early stages and yet to be proven at scale

The Sense Protocol introduces a practical design that allows users to decompose a yield-bearing asset into its principal and yield components and package them behind two maturing assets, a Zero and a Claim. With Zeros and Claims, users can safely earn/borrow at a fixed rate and trade against future yields without the risk of liquidation and capital lock-ups. Sense does not issue debt and does not carry a risk of insolvency. Governance has been minimized and the protocol relies on market participants to value its assets. Therefore, the protocol can safely expand into a variety of yield-bearing assets and scale without limits.

To place Claims among the yield token instruments from other stripping protocols, Sense utilizes the Collect Yield Token (YT) design (opens new window).

# Divider

Fundamentally, Sense is designed to receive and escrow ERC20 tokens (“Target”) and issue an arbitrary number of tokens that hold a future claim to a portion of the Target.

The Divider segments and delivers portions of Target to a set of tokens as a function of some predefined condition. Each token type can have its own delivery schedule. Some tokens could receive a fixed value of Target, acting like vanilla zero-coupon bonds, whereas other tokens could receive a floating value of Target, acting like floating zero-coupon bonds and trading at a discount (opens new window) to their expected redemption value. More exotic token types could receive Target continuously up to a future date instead of in a single future cash flow.

For every Divider application, the separation logic is arbitrary, unique to each Target, and can include multiple types of tokens.

The Divider offers powerful scaffolding for custom logic and case-specific conditions, ranging from historical interest rates to AMM pool fees.

The Sense lifecycle is simple and split into three stages.

  1. Issuance

    Issuance begins with a user specifying a maturity date and depositing the Target into Sense. In the same call, the Sense mints various tokens, per the Divider, and transfers them to the message sender.

  2. Escrow until maturity

    Depending on their use case, the user can either hold their tokens until maturity or sell them after issuance. If the user holds all tokens until maturity, they are effectively holding the Target. At any point, a user can combine and burn all tokens and withdraw some Target before maturity — this is called Early Redemption.

    As mentioned above, some token types could deliver Target before maturity, but other types will wait until maturity before making Target redeemable to its holders.

  3. Redemption

    On or after the maturity date, some token types may be burned to redeem a proportional amount of the Target.

# Application: Yield Bearing Assets

In this litepaper and first releases of the Sense Protocol, we demonstrate an application of the Divider with Ethereum-based yield-bearing assets. A yield-bearing asset is defined as any token that is inherently accruing yield on some underlying asset at some interest rate. In DeFi, Yield is generated from lending, exchange, protocol dividends, staking and arbitrage. Examples of yield-bearing assets include cTokens, aTokens, Yearn Vaults/iEarn tokens, Dai in the DSR (CHAI), stETH, and AMM LP tokens.

# Rate Accumulator

The assets mentioned above all utilize a Rate Accumulator Design Pattern to apply an interest rate to an on-chain balance efficiently. Whether the goal is to distribute yield to all USDC Yearn Vault owners or apply stability fees (opens new window) on all ETH-A Maker Vaults, the fundamental operation distributes assets or liabilities across an arbitrary number of owners with the update of a single global variable.

The design pattern can be generally defined as:


  • = balance of an asset / liability
  • = normalized balance
  • = scaling factor

Here are several examples:

In Maker, Vault owners hold a normalized balanced, called art, rather than their DAI debt since their debt continuously accumulates at some stability fee rate. To determine the amount of debt they owe at any given time, Vault owners multiply their art balance by the collateral type's current scaling factor, called rate.

In Compound, cTokens' ERC20 token balance represents the normalized balance, rather than the total value of their lending position, since their balance is always accumulating at the floating cToken supply interest rate. The scaling factor, in this case, is the cToken's exchangeRate between the cToken and the underlying token.

Similarly, the norm is the ERC20 token balance, and the scale is pricePerShare in Yearn Vaults.

# Zeros and Claims

For this application, we present a Divider design that escrows yield-bearing assets (Targets) until some maturity and creates two tokens: a Zero and Claim. A Target is a yield token that accrues interest on some Underlying asset. Zeros are like vanilla zero-coupon bonds, redeeming 1-for-1 for the Target's underlying at maturity, whereas Claims are a new type of yield-only instrument, continuously delivering yield accrued on the underlying until maturity. Delivery occurs at the time of transfer or redemption, where the former Claim holder is sent some Target before losing custody. Therefore, it adopts the Collect YT design, as described in Designing Yield Tokens (opens new window). With Zeros and Claims, the following user stories emerge:


# User Types

# Yield Traders

Yield Traders predict a rise or fall in the expected Target Interest Rate. They purchase Claims to go long and purchase Zeros to go short.

# Liquidity Providers

Liquidity Providers are already holding the Target and would like to earn trading fees, so they issue new Zeros & Claims, add liquidity to the respective markets, and redeem Zeros & Claims for the Target or rolls over to the next maturity.

# Savers (Fixed-rate Earners)

Savers are looking for a fixed yield over a fixed term, so they buy Zeros and hold until maturity to lock in a fixed interest rate in underlying terms.

# Borrowers (Fixed-rate Borrowers)

Borrowers have an existing on-chain loan on Maker, Compound, Aave, etc, and would like to fix part of their loan's interest rate, so they buy and hold Claims to hedge their borrowing rate volatility for a fixed term.

# Arbitrageurs

Arbitrageurs mint, burn, and trade Zeros & Claims when their aggregate value drifts from one unit of their underlying asset. For more information, visit the Zero/Claim Arbitrage section below.

# Series Actors

Discussed further in the next section, Series Actors are incentivized to maintain the Target's term structure within Sense. They include Series Sponsors, Series Settlers, and Series Rollers.

# Series & Settlement

A Series defines a type of Zero & Claim with a unique maturity. Both Zeros and Claims are fungible with other Zeros and Claims of the same Target and Series.

Claims are streaming Target to their holders before maturity, whereas Zeros redeem for Target after maturity. To determine how much Target to distribute to Zero & Claim holders, Sense needs only the Target's scale value at issuance and maturity, which is captured when the Series is initialized and settled, respectively. To initialize a Series, one sets a new maturity date and deploys token contracts for Zeros and Claims. On the other hand, to settle a Series, one passes in the Target's scale value into Sense at or around maturity.

Series Sponsors are actors who initialize new Series. They put up a stablecoin stake that becomes part of the Settlement Reward and are given exclusive access to settle their series for a short, grace period before Sense opens the privilege up to the public, where it becomes MEV.

If a series is not settled within the grace period, Series Settlers are actors who settle the Series and harvest the reward. They are incentivized by the Settlement Reward which is composed of the sponsor's stablecoin stake and the accumulated issuance fee of the Series.

A Target's term structure (opens new window) within Sense is composed of all active series for a given Target, and its form is defined by parameters configurable by Sense Governance. In an ideal world where infinite liquidity exists, a term structure need not be constrained, and users will have the liberty to interact with any market along the yield curve. However, we don't have the luxury of ideal liquidity conditions, so to mitigate liquidity segmentation in the absence of that luxury, Sense V1 will be launched with the following constraints:

  • Three (3) active Series per Target
  • Maturity dates must land on top of the month, 00:00 UTC

The following diagram shows the evolution of the Target's term structure. Excluding the tops of months, where Series mature and initialize, there should be three active Series at any point in time.

Target's term structure

# Valuation Framework

Valuation models help to price assets. Below are simple, educational models for Zeros & Claims that market participants can modify. Both models rely on the law of one number [ref], or a method for finding the Present Value (PV) of future cash flows. Because of the time value of money, future cash flows are worth less in today's terms, so they need to be discounted back to the present day.

Assuming the buyers hold these assets until maturity, the following valuation models assist with pricing the initial sale, and subsequent trades of Zeros & Claims anytime before maturity. Note that these models are considered rudimentary and should not be relied on for investment decisions.

# Zeros Valuation

Zeros redeem 1-for 1 for the Target's underlying on or after its maturity. As discussed in the Architecture section, Zeros that are not redeemed at maturity will automatically accrue yield at the Target's interest rate thereafter, but the following valuation will assume redemption occurs at maturity. As a result, a Zero will trade at a discount to its redemption value. It’s similar to a zero-coupon bond, where there are zero coupon payments made before maturity, and the discount implies the yield. Thus, it is appropriate to adopt the valuation model used to value a single future cash flow. For this, we use the following equation to determine the present value of Zeros before maturity [ref]:

We perform algebraic manipulation to solve for :


  • = Present value = market price of Zeros [Underlying]
  • = Future value = redemption value of on Zero [Underlying]
  • = annual discount rate
  • = number of years until maturity (can be fractional)

The discount rate is in an annualized form and is driven by the market. Price equilibrium is bound to surface as Fixed-Rate Lenders, Liquidity Providers, and Arbitrageurs participate in interest rate discovery. The current Target interest rate will ostensibly be used as a reference, but signals from the markets and Target ecosystem will likely influence the market price; for example, if Compound Governance is expected to increase the COMP rewards on cDAI, the open market will likely expect supply rates to increase as the cDAI market utilization increases and price the Zeros accordingly.

For example, if a series of cDAI Zeros matures in three months and has a price of 0.972 DAI, the implied yield to maturity is 12.03%.

# Claims Valuation

Claims follow the Collect Yield Token (YT) design. Claims will price as the discounted expected future yield. A rudimentary pricing model can be found here (opens new window).

# Zero/Claim Arbitrage

Without limits, a user can issue and burn Zeros & Claims to either increase or decrease the token supplies before their maturity. Issuance and burning begins and ends with the Target, respectively, and is typically performed by arbitrageurs. The following operation is called Zero/Claim Arbitrage and can be used to earn risk-free profit in Target terms.

Whenever there's a premium on Zero & Claims such that their aggregate value is greater than a unit of Underlying required for issuance, arbitrageurs will perform delta neutral arbitrage, earning a profit in Target by issuing new Zeros & Claims to sell on the market premiums. The same incentive occurs in market discounts. Arbitrageurs will purchase discounted Zeros & Claims and combine them to early redeem some Underlying worth of Target before maturity. Moreover, only the aggregate value of the Zeros and Claims are assessed, so there need not be a premium/discount in both markets - in other words, a comparable market condition is one where Zeros are trading at a steep discount and Claims well behaved.

The existence and size of the arbitrage profit is a function of many factors, including:

  • Zero & Claim price
  • Exchange slippage
  • Gas costs with issuance/early redemption & exchange swaps
  • Exchange trading fees

Arbitrageurs will continue to trade with mis-priced markets until the aggregate value of Zeros and Claims are within proximity to their Underlying value. The profit threshold creates a spread around the Underlying value where the combined value of Zeros and Claims are free to float within, similar to DAI's soft peg to USD. Assuming efficient markets, zero exchange fees, and perfect arbitrage, the following relationship holds in a common denomination:

# Liquidity

Liquidity is one of the most important measures of any capital market. In the Sense ecosystem, more liquidity benefits both buyers & sellers of Zeros & Claims, as it reduces the slippage when entering/exiting a position, and enables larger position sizes, more volume, and greater fees [ref (opens new window)]. Therefore, Liquidity Providers play a crucial role in Sense’s usability, so ensuring a smooth user experience for providing liquidity is of utmost concern in the protocol's design.

AMMs are a particularly interesting method of bootstrapping liquidity. In essence, AMMs offer LPs an out-of-the-box market-making operation that requires only basic infrastructure. Everyday users can now support markets with their liquidity and earn a fee in the process. Most AMMs act as passive investment vehicles that profit from volatility in the value of their reserve assets relative to each other. The most popular AMMs are simple (Uniswap V2), flexible (Balancer), or specialized (Curve), and can be more accurately classified as Constant Function Market Makers (CFMM), a subset of AMMs [ref (opens new window)]. One disadvantage that all CFMMs share is their lack of “awareness” of the true market price of the assets they pool. Without knowledge of asset prices, as queried from on-chain oracles, these AMMs suffer from impermanent loss as arbitrageurs swap in the less valuable asset for the more valuable asset, thereby directly removing value from the pool and additionally reducing the pool’s exposure to the more valuable asset [ref (opens new window)].

Since Zeros & Claims are new assets in the world of DeFi, we’ve given special attention to their valuations, potential market dynamics, and interactions with on-chain trading venues. Through our initial research, it's become clear that assets with a maturing characteristic cannot be quoted against the Target's underlying asset (eg Dai for a cDai Target) on CFMMs. An LP in such a pool will consistently sell Zeros and Claims at a discount as Traders make purchases over time, thereby exposing themselves to time-dependent impermanent loss.

We’ve explored potential mitigation strategies, such as custom AMM curves, Dynamic AMMs, and Target-quoted pools. Let us address each solution.

The low-cost marketability of maturing assets, such as zero-coupon tokens, has seen a lot of attention since 2020. Custom AMM curves, such as YieldSpace and NotionalAMM were some of the first experimental AMM protocols to have been deployed on mainnet. Both types are quoted against the zero's underlying but adjust as a function of time to maturity before reaching parity with the underlying at maturity. For example, as derived in the YieldSpace Paper, the constant power sum product invariant transforms a constant product curve to a constant sum curve as time to maturity approaches zero [ref (opens new window)]. This invariant crystalizes with the passage of time, reducing the effect of market forces as maturity is reached. Unfortunately, YieldSpace is not generalized for easy integration, but projects are making strides to emulate the constant power sum product invariant with Balancer V2 smart pools [ref (opens new window)]. Other projects, such as Pendle Finance, have developed a new custom AMM invariant that reduces impermanent loss for tokens with time decay, such as their native yield tokens [ref (opens new window)]. We have forgone the development of custom AMM curves in the short term but will reconsider their value after early versions are tested in the market.

A compelling alternative is to utilize a Dynamic AMM (DAMM). A simple implementation of a DAMM would be controlled by a Balancer smart pool and contain logic to dynamically adjust reserve weights and trading fees as a function of asset valuation and time to maturity, such that there is not an arbitrage opportunity as a function of the assets' prices. On the surface, this configuration looks admirable, but it assumes that price discovery is occurring on an exchange external to the AMM pool. This is not the case with the Sense markets, which will carry the bulk of the trading and therefore price discovery of Zeros and Claims. Any attempt to adjust prices will indirectly presuppose a view that may not be aligned with the free market, thereby going against the purpose of the DAMM.

Target quoted pools are one of the simplest solutions, requiring minimal configuration to bootstrap liquidity. In this setup, both the Zero and Claim markets would be quoted against their respective Target assets; for example, zcDAI / cDAI for Zero Compound Dai and ccDAI / cDAI for Claim Compound Dai. For series about to mature, the market-driven implied APY will likely be close to the Target's current APY, allowing the market to price Zeros and Claims at constant prices to the quoted asset. For series with longer terms, the free market could discover an implied APY which may not be consistent with the Target's current APY. Because the price of the Target is increasing value at a rate comparable to the rate implied by Zeros and Claims, impermanent loss is reduced in these pools. For the first release, Sense assets will be marketed against their respective Targets, allowing LPs to gain exposure to the Sense markets while capturing returns from the Target APY.

Next, we recommend and describe the Target quoted pool configuration, and introduce utilities for liquidity provision.

# AMM Configuration

Liquidity Providers are free to market their freshly issued Zeros & Claims on the trading venue of their choosing, but we recommend utilizing the below configuration, as it limits impermanent loss and will likely be the exchange of choice for traders in the short term.

The AMM configuration for the first release of Sense will utilize Uniswap V3. Two passive LP strategies will be deployed for each series of a particular Target, one for the Zero / Target pool and another for the Claim / Target pool. Both LP strategies will enforce price ranges that are not only conservative but also practical for the Target in question. Using price ranges on Uniswap V3, LPs leverage the capital efficiency of concentrated liquidity [ref (opens new window)], thereby deepening markets for higher volumes and increasing their returns from trading fees. The strategies will be prewritten to allow the community to deploy new instances and those with modified price ranges.

# Liquidity Utilities

This section introduces a couple utilities for liquidity providers that will lie adjacent to the Sense Protocol. The first is Grounded Claims, an AMM interface for Claims, and the second is Balanced LP shares, a single share representing a combined Zero & Claim LP position.

Without modification, Claims cannot trade on uninformed AMMs, such as Uniswap, Balancer, or Curve. Because Claims follow the Collect YT design (opens new window), some past yield (in the form of Target) is sent to the Claim sender on every transfer. This ensures fungibility across all Claims with the same maturity, but Uniswap V3 does not support token airdrops into its pools. To solve this incompatibility, we introduce Grounded Claims (gClaims). Like wrapped tokens, gClaims wrap Collect Claims and abstract away the collection of past yield behind a single contract, such that the Drag design is emulated through a single gClaim balance. With gClaims, LPs can efficiently provide liquidity to uninformed AMMs, such as Uniswap V3.

A Balanced LP share will exist to wrap Zero and Claim LP shares in appropriate proportions, such that LPs can ensure impermanent loss is reduced across the entire rate spectrum. LPs that are marginally short or long the implied APY will have the liberty to consolidate their liquidity in the Zero or Claim markets.

# Governance

Later versions of the Sense Protocol will be governed by the SenseDAO which consists of Sense token holders and on/off chain governance structures. Although the Sense Protocol is designed to be minimally intrusive and simple in construction, there will be system parameters and future development that need adjustment and direction, respectively. Including all types of users and reaching stakeholder alignment is a critical part in ensuring the long-term sustainability of the SenseDAO and surrounding ecosystem.

We believe the most impactful organizations are those that have a diverse array of stakeholders as well as an organizational resilience to paradigm shifts in technology and finance. Building this resilience embraces the DAO structure and its advantages in scalability and stakeholder reach. Our goal is to create an unstoppable DAO which accelerates the world's transition to open finance through efficient, equitable fixed-term products.

The Sense founding team will bootstrap the initial release of the Sense Protocol. Using the Progressive Decentralization playbook, we will take an incremental approach to introducing Sense Governance and will hand-off control over time as product-market fit forms and when the team can sufficiently decentralize operations, eliminating dependency and information asymmetry [ref (opens new window)].

Once the project has been decentralized, the SenseDAO will have the tools needed to continue operations and future development through the following protocol fees:

  • Issuance Fee - variable fee charged at the time of issuance
  • Yield Fee - variable fee charged on yield distribution of Claims
  • Flash Fee - variable fee charged during Sense provisioned flash loans

Although the implementation will be present, Sense will be launched with zero fees. Only the SenseDAO has the privilege to enable protocol fees.


# What are Keepers?

A Keeper is an independent actor that is incentivized by profit opportunities to interact with DeFi applications in various capacities [ref (opens new window)]. Ranging from maintenance duties to arbitrage performances, the role of a keeper is multifaceted and is leveraged by decentralized protocols to the betterment of the application's operation, which include but are not limited to important system adjustments and market cohesion. For example, keepers help both the Maker Protocol remain solvent by kicking off Vault liquidations [ref (opens new window)] as well as the Fei Protocol in reweighing the FEI-USD peg [ref (opens new window)]. In both cases, there are on-chain incentives that are simultaneously distributed to the keepers for their service.

# Disclaimer

This paper is for general information purposes only. It does not constitute investment advice or a recommendation or solicitation to buy or sell any investment and should not be used in the evaluation of the merits of making any investment decision. It should not be relied upon for accounting, legal or tax advice or investment recommendations. This post reflects the current opinions of the authors and is not made on behalf of Sense Finance or its affiliates and does not necessarily reflect the opinions of Sense Finance, its affiliates or individuals associated with Sense Finance. The opinions reflected herein are subject to change without being updated.

Last Updated: 8/5/2021, 5:04:08 AM