Delta Exchange - User Guide & Rule Book
Back to Trading
  • Introduction
  • Derivatives Guide
    • Options Guide
      • Option Spreads
      • MOVE
      • Turbo Options
    • Futures Guide
    • Perpetual Contracts Guide
    • Futures Spread Contracts Guide
    • Interest Rate Swaps Guide
      • BitMex Funding Rate Swap
      • DAI Savings Rate Swap
    • Index Futures - DeFi Index
  • Market Makers' Guide
    • Market Maker Protection
  • Trading Guide
    • Trade Life Cycle
    • Fair Price Marking
    • Leverage
    • Profit Loss Math
    • Margin Explainer
      • Isolated Margin
        • Liquidation of Isolated Margined Positions
      • Portfolio Margin
      • Cross Margin
    • Order Types
      • Basket Orders
    • Auto Deleveraging
  • EXCHANGE SOP & POLICIES
    • Allowed Trading Bands
    • Market Disruption
    • Trade Annulment
    • Special Events Handling
Powered by GitBook
On this page
  • Quoting on Delta: some recommendations
  • Specifically for RMMs

Was this helpful?

Market Makers' Guide

PreviousIndex Futures - DeFi IndexNextMarket Maker Protection

Last updated 5 months ago

Was this helpful?

On this page, we describe how to make markets on Delta Exchange in an efficient and effective manner by leveraging all the tools and features that we offer to market makers.

We have attractive incentive program for both options and futures market making. If you are interested in becoming a Registered Market Maker (RMM), please write to insti-support@delta.exchange for more details.

To our RMMs, we offer significantly higher API rate limits to enable them to provide mass quotes and highly optimised margining scheme to improve capital utilisation.

Quoting on Delta: some recommendations

Margin mode

We currently offer two margin modes: and . Margin mode is an account level property, i.e. all positions and orders in an account must have the same margin mode.

We recommend that you do market making in portfolio margin mode. You can get all the details for the margin requirement of your portfolio over the socket channel. This channel publishes blocked margins and unrealized cashflows every 2 seconds.

You can also monitor the liquidation risk of your portfolio of positions on this channel through the 'liquidation_risk' flag. This flag is set to TRUE when you do not have sufficient margin to meet the initial margin requirement for your positions (and orders, if applicable), i.e. blocked_margin < im_w_ucf + commissions.

Maintaining a live orders snapshot

You should subscribe to the on socket. You can receive new, create and delete events for orders which can be used create a live snapshot at your end.

Alternatively, you can use our to fetch open orders for a particular contracts.

Orders updating via batch APIs

We provide 3 batch APIs - , and APIs. You can use these endpoints to modify your orders periodically. Batch APIs perform much faster especially when trying to work on > 5 orders. You can send up to 50 orders in a single batch. Also, please note that a batch must comprise of orders in a single contract.

Listening to live trades

For this, you should subscribe to the on socket.

How to cancel all orders or close all positions

Dead man switch

Specifically for RMMs

Margin mode

All RMM accounts compulsorily be in portfolio margin mode

API rate limits

RMM accounts API rate limits sufficient to update orders for any selected contract 8-10 times per second. Moreover, RMM accounts can create up to 200 live orders (vs. 50 live orders for normal users) in a single contract.

Order risk limits

To enable mass quoting for options in a capital efficient manner, for RMM accounts orders are not margined individually. Instead a limit is applied on the notional size of open orders.

In any contract, the total notional of open orders is capped at min (500K USDT, 50 * USDT Equity). USDT Equity is defined as (USDT Wallet Balance + Unrealised Cashflows - USDT Balance blocked for spot orders).

If this limit is breached, you would get 'risk_limits_breached' as the error code for your place order requests.

{
   success: false,
   error: { 
      code: "risk_limits_breached", 
      context: {
         side: "buy",                   # side on which the order notional limit was breached
         current_notional: "343000.23", # cumulative notional of existing orders
         max_notional: "500000"         # notional limit as calculated by (500k, 50*equity)
      }
   }
}

Position risk limits

Your account goes into Risk reduction mode when your USDT Wallet Balance < Initial Margin requirement for your portfolio. In this mode, all options contracts are in reduce-only mode. And, only those futures orders will be accepted that will reduce the delta of your portfolio. The error code for risk reduction mode being triggered is liquidation_risk_limits_breached.

## for futures
{
   success: false,
   error: { 
      code: "liquidation_risk_limits_breached", 
      context: {
         allowed_order_side: "buy",        # side which will reduce portfolio delta
         current_portfolio_delta: "3.5",   # delta of existing portfolio (in underlying terms)
         current_total_orders_delta: "2.4" # delta of existing open futures orders (in underlying terms)
      }
   }
}


## for options
{
   success: false,
   error: { 
      code: "liquidation_risk_limits_breached", 
      context: {
         allowed_orders: "reduce_only_orders_allowed"
      }
   }
}

Market maker protection (MMP)

Commission Rebates in RMM

RMM accounts may get discounts or rebates on trading fees. Discounts on trading fees are applied in real time and you are simply charged a lower fee for the relevant trades.

In the case of rebates, you are charged zero trading fees at the time of the trade. And, the rebate earned is processed as a cashback in batches that run every 15 mins.

Please note that for fills where discounted trading fees or rebates are applied, are excluded from the scope of VIP program, referral program and other promotional schemes. Moreover, fees for these fills cannot be paid in DETO.

To cancel all orders at once, you can use the .

To close all positions at once, you can use the . Please note that close all positions API also cancels all your open orders too.

This feature is useful to cancel all open orders in case the market maker loses connectivity with the exchange. To use this, you can periodically set a timer using the API. The exchange will cancel open orders if the timer is reached.

RMM accounts get access to MMP to enable them to provide mass quotes while still maintaining control over risk of acquiring excessively large positions. Details of MMP are available .

isolated margin
portfolio margin
portfolio_margins
private "orders" channel
get open orders rest api
batch create
batch delete
batch edit
private "user_trades" channel
close all orders api
close all positions api
cancel after
here