Orderbook fees
Builder fees (the
extra_fee field on an order) are charged on top of these fees and passed on directly to the builder. See Builder Fees.
Examples
- Alice buys 2 ETH 2,000 puts using an aggressive order, oracle spot price 0.5 + 0.03% × 2 × 1.82`
- Bob opens a 0.1 BTC perp sell limit order, later filled by Charlie, spot 43,000 = 0.01 + 0.03% × 0.1 × 1.30`
When setting the
max_fee parameter on private/order, use the formula described in the API reference. The matching engine adds extra buffers to the above calculation to prevent reverts during volatile market conditions. See Order Types for the max_fee requirement.RFQ fees
Trades conducted via RFQs are charged the taker notional fee rate on both counterparties, plus a base fee on the taker side. Multi-leg trades receive up to 100% discounts on the cheaper legs. For the most common use cases:- 2-leg option spreads like straddles, verticals, and calendars pay zero fee on their second leg.
- Hedged options (option + perpetual) pay zero fee on the cheaper of the perp and option leg.
long calls, long puts, short calls, short puts, perps, and total fee is calculated within each group. The full fee is always charged on the most expensive group. The remaining groups get a fee discount in this order:
- Cheapest group gets 100% discount
- Second and third cheapest group get 50% discount
- Other groups do not get further discounts
- A call spread has 2 legs in different groups (one
long calls, oneshort calls). The cheapest leg gets 100% discount. - A straddle or strangle has two legs in different groups. The cheapest leg gets 100% discount.
- Two long calls at different strikes or expiries both fall into
long calls, so no discount applies. - A risk reversal with a perp hedge has 3 legs in 3 groups. Cheapest gets 100% discount, second cheapest gets 50%, most expensive is paid in full.
Box spreads
The system recognises box spreads as a special strategy with a different fee schedule. A box spread is a 4-legged trade with a long call and a short put at one strike and a short call and a long put at another, all at the same expiry. It can be thought of as a zero-coupon bond paying(strike_1 − strike_2) dollars at expiry, and it typically trades at a discount to its notional.
Derive charges a “yield spread” fee for this “bond” equal to notional × 0.5% × years_to_expiry. For a box with strikes 5,000 (1,000 × 0.5% × 1/12 = 0.5 base fee to the taker side only.
Liquidation fee
If a subaccount is liquidated, a liquidation fee of 10% of the liquidated portfolio value, marked to market, is applied.Interest on borrowed USDC
Interest is charged on the debit balance of borrowed USDC — the fee only applies if your account has a negative cash component. Interest follows a utilisation curve similar to AAVE: the more negative cash in the system, the higher the interest rate. Derive charges a spread on the long/short balance in the system.Discounted fee tiers
Pay lower fees by trading more volume or staking DRV. View live fee tiers in the Derive app. Institutional market makers receive additional discounts and rebates through the Institutional Trading Rewards Program.Setting max_fee on orders
Themax_fee field on private/order, private/replace, and quote submission is a per-contract cap denominated in USDC. It protects you against paying more than expected while giving the matching engine headroom for volatility.
- For resting (maker) orders:
max_fee > 2 × max(taker_fee, maker_fee) × spot_price + extra_fee / amount - For crossing (taker) orders:
max_fee > maker max_fee + base_fee / fill_amount
max(limit_price, index_price) is used to compute the notional. See the Order Types reference for how max_fee interacts with orderbook margin.
Related
Builder Fees
Charge
extra_fee on top of exchange fees, paid to your Derive Wallet.Institutional Trading Rewards
Market maker fee tiers, rebates, and DRV rewards.
Orderbook Trading
max_fee, order flags, and other order-writing details.RFQ Trading
Multi-leg RFQ workflow and quote execution.
