Skip to main content
The formulas Rails uses to size margin and fees for an options order. For a conceptual overview, see the Margin & Liquidation guide. Authoritative figures for a specific order come from the Get Contract Pricing and Get Margin endpoints.

Notation

SymbolMeaning
IndexIndex price of the underlying
MarkMark price of the contract
KStrike price
qtyOrder quantity

Constants

ConstantValueUsed for
Long order buffer1.165Long initial margin at order placement
Long holding buffer0.165Long position/maintenance margin (premium already deducted)
IM rate0.15 (15% of Index)Short initial margin
IM floor0.10 (10% of Mark)Short initial margin floor (deep OTM)
MM rate0.05 (5% of Index)Short maintenance margin
MM floor0.05 (5% of Mark)Short maintenance margin floor
The long buffer of 0.165 breaks down as 12.5% trading fee + 1% insurance + 3% slippage.

Margin

OTM discount (per contract):
Option typeOTM
CallMAX(0, K − Index)
PutMAX(0, Index − K)
Long (buying) — the premium is paid up front; margin covers the buffer:
MarginFormula
Initial (order)Mark · 1.165 · qty
Holding / MaintenanceMark · 0.165 · qty
Short (selling) — per-contract margin is MAX(rate · Index − OTM, floor · Mark) + Mark:
MarginFormula
IM′ per contractMAX(0.15 · Index − OTM, 0.10 · Mark) + Mark
MM′ per contractMAX(0.05 · Index − OTM, 0.05 · Mark) + Mark
Initial marginMAX(IM′, MM′) · qty
Maintenance marginMM′ · qty
Short initial margin is floored at the maintenance level (MAX(IM′, MM′)) so it is never weaker than the maintenance requirement.

Fees

FeeFormula
Taker feeMIN(0.0003 · Index, 0.125 · Mark) · qty
Maker feeSame as taker; Rails-designated makers are exempt (0)
The delivery fee charged at settlement is covered in Settlement.