Skip to main content
cURL
curl --request GET \
  --url https://test.deribit.com/api/v2/private/set_mmp_config \
  --header 'Content-Type: application/json' \
  --data '
{
  "jsonrpc": "2.0",
  "id": 7859,
  "method": "private/set_mmp_config",
  "params": {
    "index_name": "btc_usd",
    "mmp_group": "MassQuoteBot7",
    "interval": 60,
    "frozen_time": 0,
    "quantity_limit": 3,
    "max_quote_quantity": 2.5
  }
}
'
{
  "jsonrpc": "2.0",
  "id": 7859,
  "method": "private/set_mmp_config",
  "result": {
    "index_name": "btc_usd",
    "mmp_group": "MassQuoteBot7",
    "interval": 60,
    "frozen_time": 0,
    "quantity_limit": 3,
    "max_quote_quantity": 2.5
  }
}

Query Parameters

index_name
enum<string>
required

Index identifier of derivative instrument on the platform

Available options:
btc_usd,
eth_usd,
btc_usdc,
eth_usdc,
ada_usdc,
algo_usdc,
avax_usdc,
bch_usdc,
bnb_usdc,
doge_usdc,
dot_usdc,
link_usdc,
ltc_usdc,
near_usdc,
paxg_usdc,
shib_usdc,
sol_usdc,
ton_usdc,
trx_usdc,
trump_usdc,
uni_usdc,
xrp_usdc,
usde_usdc,
buidl_usdc,
btcdvol_usdc,
ethdvol_usdc,
btc_usdt,
eth_usdt,
all
interval
integer
required

The duration of the monitoring window in seconds. For example, an interval of 3 implies a 3-second window.

The interval begins after the first trade.

If a new trade is executed after the interval has ended, a new interval is started, and counters reset.

If a trade occurs during an already running interval, that interval continues unaffected.

This mechanism allows the platform to track activity in short, rolling windows to identify potentially risky trading behavior.

If set to 0, MMP is removed.

Example:

60

frozen_time
integer
required

Time in seconds that MMP remains active after being triggered. Once this frozen period has passed, MMP will automatically reset, allowing new orders to be submitted.

If you want to disable automatic reset, set frozen_time to 0. In that case, a manual reset is required using the private/reset_mmp method.

Manual reset is also possible during the frozen time period.

Example:

0

mmp_group
string

Designates the MMP group for which the configuration is being set. If the specified group is already associated with a different index_name, an error is returned. This parameter enables distinct configurations for each MMP group, linked to particular index_name. Maximum 64 characters. Case sensitive. Cannot be empty string.

📖 Related Article: Mass Quotes Specifications

Example:

"MassQuoteBot7"

quantity_limit
number

The total traded quantity, measured in units of the base currency (e.g., BTC in BTC-PERPETUAL), within the interval.

This count is direction-agnostic—a buy followed by a sell counts double.

Example: Buy 10 BTC and sell 10 BTC = 20 total quantity.

Applicable to both options and futures.

Positive value with maximum 4 decimal places.

Example:

3

delta_limit
number

The maximum allowable net transaction delta change during the interval.

Expressed in units of base currency.

The delta_limit is treated as an absolute threshold: e.g., delta_limit: 10 → MMP is triggered if net transaction delta exceeds +10 or drops below -10.

Direction matters: buying +5 delta and selling −5 delta cancels out if within the same interval.

Note: Note that we use the net transaction delta instead of delta. Net Transaction Delta = Delta - Mark Price. In the rest of this document, "delta" actually refers to net transaction delta.

Positive value with maximum 4 decimal places.

vega_limit
number

The maximum change in vega exposure allowed within a given interval, measured in absolute terms.

Expressed in USD, representing the change in sensitivity to implied volatility across executed trades.

This parameter is primarily relevant for options traders managing risk in volatile markets.

Similar to delta_limit, the vega_limit is direction-aware and evaluated on a net basis. If the exposure exceeds the set threshold (positively or negatively), MMP will be triggered.

Notice: When evaluating Delta and Vega limits for MMP, Deribit uses the greeks at the moment of trade execution. The system does not re-evaluate Delta or Vega using live greeks at the time of MMP checking.

Positive value with maximum 4 decimal places.

max_quote_quantity
number
required

Maximum Quote Quantity (MQQ) in base currency. The total combined size of open MMP orders per side, per order book (instrument), cannot exceed MQQ. See response description for detailed information about MQQ behavior and limitations. Maximum 4 decimal places.

Example:

2.5

block_rfq
boolean
default:false

If true, configures MMP for Block RFQ. When set, requires block_rfq scope instead of trade scope. Block RFQ MMP settings are completely separate from normal order/quote MMP settings.

trade_count_limit
integer

For Block RFQ only (block_rfq = true). Sets the maximum number of Block RFQ trades allowed in the lookback window. Each RFQ trade counts as +1 towards the limit (not individual legs). Works across all currency pairs. When using this parameter, index_name must be set to "all". Maximum - 1000.

Required range: 1 <= x <= 1000

Response

200 - application/json

Success response

jsonrpc
enum<string>
required

The JSON-RPC version (2.0)

Available options:
2.0
result
object[]
required
id
integer

The id that was sent in the request