Similarly to asset management, interest rate swaps are a multi-trillion industry in TradFi which has failed to achieve success in DeFi, with protocols like Pendle, ApWine and others seeing little PMF thus far. In addition to poor UX, we also believe this failure came from the lack of a stable reference yield in crypto. We believe this has now been provided by ETH, and increasingly other PoS chains, paving the way for interest rate swaps products to generate a ‘crypto yield curve’.

Interest rate swaps are an extremely important primitive in that they allow users to lock in fixed rates. They also allow users to speculate on the direction of interest rates, hedging investments that benefit from lower rates.

There are two classes of mechanisms to implement interest rate swaps on-chain: The first is a model initially proposed by Yield Protocol that uses CDPs to mint expiring derivatives called “fyTokens.” The second approach is to split yield-bearing assets into two tokens representing the principal and yield, called “pTokens” and “yTokens.”

A major problem with the fyToken model is creating deep liquidity for expiring tokens, which Yield does by incentivizing its custom time-parameterized AMM. Liquidity is still quite fragmented, however, as each maturity date needs a separate pool of liquidity.

The fyToken model also requires CDPs and healthy liquidation mechanisms to mint sufficient supply of fyTokens, which makes borrowing at fixed rates more complex (requiring attention to ensure the position remains healthy). An fyToken protocol built on top of Mars risk primitives that integrates with an order book would be a solid foundation for a fixed-yield primitive. To ensure liquidity depth for fyTokens, a yieldspace curve AMM with incentivized deposits could work. However, a more efficient order book model would be an excellent choice, with some additional thought around how to incentivize makers to provide liquidity.

The “pToken/yToken'' yield-split model has been tried with varying degrees of success (Prism, Element, Pendle, etc.). Each has its own drawbacks, and the trickiest part to solve has been maintaining liquidity for tokens with an expiration date. The values of these tokens change nonlinearly with market forces as time approaches expiration, so AMM models struggle to incorporate the time factor in a way which doesn’t leak value to arbitrageurs. Order books and/or other AMM designs may be more appropriate.

We put together a potential new AMM design for prism at the beginning of last year here. In this design, three tokens (the base asset, the pToken, and the yToken) are all in one pool, instead of separate pools for pTokens and yTokens. We take advantage of the fact that pToken price plus yToken price should always equal the base token price. Further, we know that at time 0 (expiration), base asset and pToken should be worth the same since after expiration, pTokens can be redeemed for the underlying. This design has an advantage over multiple pools for pTokens and yTokens in that purchases or sales of pTokens affect the price of yTokens and vice versa, instantly balancing so that p+y = base, as opposed to leaving pool balancing to arbitrageurs and leaking value to them.

That being said, empirical evidence suggests that the fyToken model has achieved greater adoption, and if UX hurdles surrounding CDPs can be surpassed, we prefer this approach.

Where: This would arguably make most sense on Osmosis where Mars is currently deployed. However, it would work on any of the chains to take advantage of PoS yield

Hackathon MVP

Create a fixed-yield primitive using the fyToken model where liquidity for fyTokens uses an on-chain order book. Choosing a single collateral token (e.g. ATOM), a single borrow token (e.g. USDC), and a single expiration date will simplify implementation. Scope can be further reduced by focusing on one side of the market (borrowing or lending).

Users should be able to either mint fyTokens with collateral (to borrow at a fixed rate) or purchase fyTokens from a market (to lend at a fixed rate). The user interface should simplify calculations about achieved fixed rates, and allow borrowers to monitor the health of any open positions.

To ensure healthy order book depth for the fyToken derivatives, design a mechanism to incentivize makers (e.g. emit tokens to makers that have orders at the top of the book multiple blocks in a row).

Ideas above are explained in depth in the following papers:

Yieldspace AMM: https://yield.is/YieldSpace.pdf

Pendle: https://docs.pendle.finance

Element: https://docs.element.fi/

TimelessFi: https://docs.timelessfi.com/

Mentor: Matt Bridges (Chief Architect at Delphi Labs)