MM Credit System
Capital-efficient quoting — quote up to N× your deposited collateral across all markets.
The Problem with Naive Collateral Requirements
In a naive DEX design, every open order must be fully collateralized. A market maker quoting $10,000 on the bid and $10,000 on the ask across five markets would need $100,000 in deposited collateral — even though only some fraction of those orders will actually fill at any given time, and the fills on each side partially offset each other.
This capital inefficiency is a major barrier to professional market making on DEXes. It forces MMs to choose between fewer markets or thinner quotes, degrading liquidity for all traders.
How Vela's Credit System Works
The Vela credit system allows each market maker to quote up to deposited_collateral × credit_ratio in total notional value across all markets simultaneously. The credit ratio is configurable per user, with a default of 1× (no leverage) and a maximum set by the operator.
The engine tracks total quoted notional: the sum of price × size across all open orders for the account. This total must not exceed deposited × ratio at any point. When a new order would breach this limit, it is rejected.
Example
Deposited collateral: 10,000 USDC Credit ratio: 5× Maximum quoted notional: 50,000 USDC Market maker quotes: ETH-USDC bids: 25,000 USDC notional BTC-USDC bids: 15,000 USDC notional SOL-USDC asks: 8,000 USDC notional ───────────────────────────────────── Total quoted: 48,000 USDC ✓ (under 50,000 limit) Remaining credit: 2,000 USDC
Atomic Enforcement
The credit check is performed atomically within the matching engine's CoW cache. When a fill occurs that reduces a resting order's size, the credit consumed by that order decreases accordingly. If a fill would momentarily push a different MM's total over their limit — an edge case in high-frequency scenarios — the engine atomically cancels lower-priority orders from that account to restore compliance before committing the batch.
Credit Utilization Display
The MM Dashboard displays credit utilization as an arc gauge. The gauge has three zones:
| Utilization | Zone | Behavior |
|---|---|---|
| 0–79% | Normal | All new orders accepted |
| 80–94% | Warning | Dashboard alerts; new large orders may be rejected |
| 95–100% | Critical | New orders very likely to be rejected; consider cancelling |