Simple Margin
The inner workings of GRVT's Simple Margin
The Simple Margin algorithm considers the risk of each position independently to compute margins. Then applies discounts based on hedged deltas.
Position Charge — Computes the risk of each position independently and applies that as a position charge.
Position Charge
Each position’s risk is computed using the below formulas:
Futures and Perps
Margin:
margin = size (S) * derivative_mark_price (P) * margin_ratio (M)
Initial Margin Ratio:
M = min(100%, 2% + (S * P / $500M))
Maintenance Margin Ratio:
M = min(100%, 1% + (S * P / $500M))
With this formula, the maintenance margin ratio increases linearly from
1%
to100%
as position size increases from$0
to$495M
Short Options
Margin:
margin = size (S) * (P) * margin_ratio (M)
Call:
P = spot_mark_price
Put:
P = max(spot_mark_price, option_mark_price)
Initial Margin Ratio:
M = min(100%, max(15% - OTM, 7.5%) + (S * P / $50M))
Maintenance Margin Ratio:
M = min(100%, max(7.5% - OTM, 5%) + (S * P / $50M))
Out of Money Ratio
Call:
OTM = max(0, (strike_price - P) / P)
Put:
OTM = max(0, (P - strike_price) / P)
Long Options
Margin:
margin = size (S) * option_mark_price (P)
The above parameters are used as an example to simplify explanations. Our risk team will derive actual parameters that are appropriate for the exchange, and the market conditions.
Parameters
The following parameters are used in our simple margin computation (per asset config):
Walkthrough
The below walkthrough will demonstrate how the position charge algorithm works.
Event | Collateral | Position Assets | Prices | Balance | Maintenance Margin | Withdrawal Eligibility |
---|---|---|---|---|---|---|
| 0 | None |
| 0 | 0 | 0 |
Deposit 10k USDT | +10k USDT | None |
| 10k USDT | 0 | 10k USDT |
Long 30 ETH Perps at 1k USDT | - 20k USDT | + 30 ETH Perps (+30k value) | ETH F/P price @ 1k USDT | 10k USDT | 300 USDT | 9700 USDT |
Short 10 ETH Futures at 1k USDT | -10k USDT | + 30 ETH Perps (+30k value) - 10 ETH Futures (-10k value) | ETH F/P price @ 1k USDT | 10k USDT | + 300 USDT + 100 USDT | 9600 USDT |
Short 80 ETH Call Options with 1k strike at 50 USDT | -6k USDT | + 30 ETH Perps (+30k value) - 10 ETH Futures (-10k value) - 80 ETH Options (-4k value) | ETH F/P price @ 1k USDT ETH O price @ 50 USDT ETH Spot price @ 995 USDT | 10k USDT | + 300 USDT + 100 USDT + 5970 USDT | 3630 USDT |
Long 160 ETH Call Options with 1k strike at 50 USDT (Netting) | -14k USDT | + 30 ETH Perps (+30k value) - 10 ETH Futures (-10k value) + 80 ETH Options (+4k value) | ETH F/P price @ 1k USDT ETH O price @ 50 USDT | 10k USDT | + 300 USDT + 100 USDT + 4000 USDT | 5600 USDT |
Price Tick ETH O price @ 40 USDT | -14k USDT | + 30 ETH Perps (+30k value) - 10 ETH Futures (-10k value) + 80 ETH Options (+3200 value) | ETH F/P price @ 1k USDT ETH O price @ 40 USDT | 9.2k USDT | + 300 USDT + 100 USDT + 3200 USDT | 5600 USDT (stays constant) |
Price Tick ETH F/P price @ 650 USDT ETH O price @ 25 USDT | -14k USDT | + 30 ETH Perps (+19500 value) - 10 ETH Futures (-6500 value) + 80 ETH Options (+2000 value) | ETH F/P price @650 USDT ETH O price @ 25 USDT | 1k USDT | + 195 USDT + 65 USDT + 2000 USDT | [Liquidatable] - 1260 USDT
|
[Liquidate] Short 70 ETH Call Options at 20 USDT | -12.6k USDT | + 30 ETH Perps (+19500 value) - 10 ETH Futures (-6500 value) + 10 ETH Options (+250 value) | ETH F/P price @650 USDT ETH O price @ 25 USDT | 650 USDT | + 195 USDT + 65 USDT + 250 USDT | 140 USDT |
Last updated