Listing of Traditional Expiring Futures

Background

Currently, Mango is only listing Perpetual Futures, aka Perpetual Swaps. These are non-expiring contracts that use a funding rate to provide incentives for it to trade near spot-index value.

These are by far the most popular delta one products in crypto, so it was a sensible place to start. On any given exchange they can be reponsible for as much as 20% of volume to as little as 5%.

However, a downside to them is the variable interest rate one is exposed to, which magnifies the uncertainty the longer one is wanting to hold the position.

Traditional expiring futures offer the benefit of having a fixed rate (premium or discount) when one opens a position – making certain arbitrage plays like cash-and-carry easier to execute. These would of course be cash-settled, not delivered (like existing contracts).

Use Cases

The introduction of this product on Mango, while only having an estimated impact of at most 20% in terms of added volume, would provide the opportunity for people to put on a variety of different types of trades that are just not available with simply a perp:

  1. I personally like to take long swing positions on Futures instead of Perps in order to avoid making what can often be expensive funding rate payments.

  2. A nice classic “cash and carry” arbitrage is to buy Bitcoin spot and sell premium in the futures. Example: a user with 45,000 USDC on Mango can buy 1 BTC/USDC at $45,000 and then use that collateral (in the current margin system it works perfectly) to short 1 BTC-300921 at $45,500. This is a free $500 arbitrage play.

  3. This can set the stage for structured products to be built in Mango using the Futures curve to do inter-maturity arbitrage

  4. This sets the foundation for composing with other options protocols on Solana, or building a Mango options protocol, having delta-one products which perfectly hedge deltas on options on the same maturity are essential to a healthy market.

Requirements

In any case, there are a few requirements this suggestion brings which Mango currently does not support:

  1. A new Futures contract type that is defined by its pair and maturity date (e.g., quarterly: last Friday of each month on quarterly cycle: March, June, September, December) and time: say 13:00 UTC, e.g., BTC-300921 for BTC/USDC Futures expiring on September 30th, 2021. This means after 13:00 UTC on that day, trading is disabled, and shortly after, all longs/short positions open in the market would be closed at a price representative of the underlying market

  2. A proper settlement price to represent the price at a specific maturity time (can talk with Pyth / Switchboard about doing this or do a simple TWAP of real-time index over the last 30-60 minutes pre-settlement)

  3. The ability to “kill” a contract (no longer allow trading) and settle the open interest between longs/shorts at the settlement price at maturity time. Post-expiration, need to then proactively cancel any outstanding orders in the market and halt any liquidation procedures around it.

  4. A proper Mark Price which is smarter than just index price (what is currently used on perp markets) to value positions real-time for risk calculations. This is essential because the fair market price of an expiring Futures contract can drift into a hefty premium and a discount, so normal spot index would not be a fair valuation. Instead, we can talk to Pyth/Switchboard about capturing a time basis from other futures markets and add this to spot index to have a representative mark price for valuing positions.

  5. If possible (nice to have): efficient portfolio margining between existing contracts with the same underlying pair. e.g., if I long BTC-PERP and short BTC-300921 I do not require margin for both but only the larger of the two.

Issues

  • One consideration though is that there is a limit on “32 markets” per Mango devs at the moment (until Solana 1.8). This means 1 oracle can feed a spot and perp market, for 15 different pairs. I don’t know if this means that having a Monthly expiration futures would lead to using up the limited “slots” of 32 markets…

  • Liquidity can tend to be an issue on these compared to perps, because they are simply less popular.

6 Likes

On chain futures would be quite satisfying.

I like this proposal.

1 Like

Would vote in favour.

Perhaps you could add stronger incentivised MNGO rewards for MMs on Futures vs. Perps to incentivise liquidity. Not sure if it’d make a huge amount of difference though.

same here! I craving futures with delivery date in the solana ecosystem.