Introduction
Levant is a decentralized perpetual-futures exchange for crypto. Take leveraged long or short positions across 20 markets at up to 100x, directly against a shared liquidity vault at a verified oracle price — no order book, no counterparty to find. It is live on Robinhood Chain mainnet. Its token, $LVNT, launched on Virtuals and is not required to trade; the exchange runs on USDG.
What is Levant?
Levant is an oracle-priced, vault-backed perpetual-futures exchange for crypto — and only crypto. You take leveraged long or short positions on price, at up to 100x, across 20 markets. There is no order book and no counterparty to find. Every trade executes against the LevantVault, a shared ERC-4626 liquidity pool, at a verified oracle price plus a deterministic spread. You post collateral in USDG, choose your leverage, and your profit or loss settles against the vault when you close.
Deployment
Levant is an EIP-2535 Diamond: a single proxy address exposes every user action — open, close, add or remove margin, set take-profit / stop-loss, liquidate — through a set of facets, so you only ever interact with one contract. Collateral is USDG, a 6-decimal test stablecoin with an open mint: anyone can mint test funds on the testnet. The gas token is ETH (Sepolia ETH).
| Item | Value |
|---|---|
| Network | Robinhood Chain mainnet |
| Chain ID | 4663 |
| Gas token | ETH (Sepolia ETH) |
| Diamond (all user actions) | 0xE07098bc29Ebe50E6203606bc2eA0e1E189cb7e2 |
| LevantVault (ERC-4626, share token lvUSDG) | 0xC90D98cFeE95F481aDE30d95AD88f01B6C65ad5C |
| USDG collateral (6 decimals, open mint) | 0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168 |
| Explorer | robinhoodchain.blockscout.com |
The 20 markets
Levant lists 20 crypto markets, each quoted against USD and, today, sharing an identical risk configuration: BTC, ETH, SOL, BNB, XRP, DOGE, ADA, TRX, AVAX, LINK, DOT, SUI, LTC, BCH, NEAR, APT, UNI, ATOM, ARB, and OP. Because every market draws on the same vault, even the smaller pairs trade with the same depth and the same rules as BTC.
How a trade works: two-step keeper execution
Every trade executes in two on-chain steps separated by an off-chain keeper. The split is what lets Levant price your trade against a fresh, verified oracle report rather than a stale on-chain number. Your funds are escrowed by the Diamond throughout — the keeper never holds them.
- 1Submit an intent and escrow collateral. You post an on-chain intent —
submitOpenIntentfor a market order, orsubmitLimitIntentfor a limit or stop — with your size, leverage, direction, and a mandatory max-slippage tolerance. Your collateral is locked in escrow by the Diamond. Nothing has filled yet. - 2A keeper fills it at a verified price. An off-chain keeper picks up your intent and calls
executeOpenwith a signed oracle price report. The contract fills against that verified price, applies the spread, checks your slippage tolerance, and mints the position. A limit or stop fills only once the mark crosses your trigger, and that check is enforced on-chain — never trusted to the keeper. Closing is symmetric: you callclosePositionorclosePartial, then a keeper settles it withexecuteClose.
cancelIntent.Pricing: oracle mid plus a deterministic spread
Your fill is the oracle mid price adjusted by a spread, and the spread is a pure formula — there is no random slippage. It is a constant 0.02% (2 bps) plus a price-impact term that grows with your trade size relative to market depth, plus a skew term that grows with how far your trade pushes the long/short book out of balance. The total is floored at 0 — a fill is never better than mid — and capped at 5% (500 bps). It is applied worse-for-trade: buys (open long / close short) fill above mid, sells (open short / close long) fill below mid.
totalSpreadBps = 2 // constant, 0.02%
+ notional * 100 / depth1pct // price impact; depth1pct = 10,000,000 USDG
+ skewCoeffBps * signedImbalance / oiCap // skew; skewCoeff = 100 bps, oiCap = 2,000,000 USDG
// floored at 0 (never better than mid), capped at 500 bps (5%)
// buy (open long / close short) -> execPrice = mid * (1 + totalSpreadBps/10000)
// sell (open short / close long) -> execPrice = mid * (1 - totalSpreadBps/10000)Every open and limit intent carries a mandatory max-slippage tolerance between 1 and 500 bps — there is no implicit default (in the app you pick a level such as 0.10% / 0.30% / 0.50% / 1.00%). If the spread would push your entry past that tolerance, executeOpen reverts with SlippageExceeded, the intent stays pending, and your escrow is fully reclaimable. A separate guard, LiquidatableAtOpen, refuses to mint a position that would already be at or under its maintenance margin at the fill price — at very high leverage the entry spread alone can trip this, and when it does no open fee is taken.
PnL, margin, and the vault
Margin is isolated per position: the most you can lose is the margin you posted. Your position size (notional) is your net margin times leverage, where net margin is your deposit minus the open fee (0.08% of gross notional). PnL is your notional times the percentage move in the oracle price, in your direction.
notional = net margin * leverage // net margin = deposit - open fee (0.08% of gross notional)
Long PnL = notional * (exit - entry) / entry
Short PnL = notional * (entry - exit) / entry
reserved = margin * 9 // locked in the vault to fund the 900% max-profit capThe LevantVault is the counterparty to every trade. It collects all fees and trader losses and pays trader profits, so LPs — who deposit USDG for lvUSDG shares on the Earn page — are net short the traders' aggregate PnL. For each open position the vault locks reserved = margin x 9 so it can always pay the capped 900% max profit; LPs withdraw instantly up to the unlocked amount. Funding flows between traders: the crowded side pays the lighter side, scaled by utilization and skew from ~0.01%/hr up to a ~0.1%/hr cap, and settles into PnL. Liquidation is permissionless — anyone can close an underwater position (equity at or below the 10% maintenance margin, i.e. a ~90% loss) with a signed price report and earn 5% of its collateral; no adverse spread is applied on the liquidation mark.
Key parameters
All 20 markets share these values today. Fees and payouts are denominated in USDG.
| Parameter | Value |
|---|---|
| Max leverage | 100x |
| Open fee | 0.08% (8 bps) of gross notional, deducted from collateral at open |
| Close fee | 0.08% (8 bps) of adjusted size (size +/- realized PnL) at close |
| Constant spread | 0.02% (2 bps) |
| Max spread cap | 5% (500 bps) — spread can never exceed this |
| Max profit | 900% of margin (vault locks reserved = margin x 9) |
| Min / max collateral | 10 USDG / 500,000 USDG per position |
| Maintenance margin | 10% of collateral (liquidated at a ~90% loss) |
| Liquidation fee | 5% of collateral, paid to the liquidator |
| Funding | ~0.01%/hr base at full utilization & skew, capped ~0.1%/hr |
| Depth (1% price impact) | 10,000,000 USDG of notional |
| OI cap (skew denominator) | 2,000,000 USDG |
| Slippage tolerance | Mandatory, 1–500 bps per intent |
The oracle
Prices come from a self-hosted EIP-712 signed-price oracle (SignedPriceOracleFacet). The EIP-712 domain binds the chain ID and the Diamond address; each report binds the market, the price, and a publish time. Reports older than 60 seconds — or dated in the future — are rejected. Prices are drawn from a multi-source feed (Gate.io first, then KuCoin, then CoinGecko as a fallback) and signed in chain time, so a keeper cannot fill on a price the signed report does not print. The facet supports an m-of-n signer set, but today the oracle is 1-of-1: the keeper is the sole signer. Distributing the signer set across independent machines is on the roadmap.
Testnet status and what to keep in mind
- Unaudited. No independent security audit has been performed.
- $LVNT is not required to trade. The exchange runs on USDG. $LVNT launched on Virtuals; its only genuine contract is
0x3da4d4f7319b4dd14822521aa1befa003f4f4e3con Robinhood Chain (chain 4663), so check the address before buying, since impostor tokens are common. - Testnet only. Every balance, including USDG collateral, has no monetary value.
- Oracle is 1-of-1. A single keeper signs prices today; decentralizing the signer set is future work.
- Ownership on the deployer key. The protocol is not yet under decentralized governance.
- Leverage risk. A ~90% adverse move against your margin means liquidation and total loss of that margin.
Under the hood
Levant is built with Foundry (solc 0.8.28) as an EIP-2535 Diamond over append-only Diamond-Storage, with ERC-173 two-step ownership and 171 passing tests. Upgrades are applied with diamondCut, which preserves the vault, LP shares, and all open positions.
Next steps
Read How It Works for the full mechanics of an oracle-priced perp, Pricing & Spread for the exact fill-price formula, or Getting Started to fund a wallet and place your first trade. If you would rather take the other side of the market, see Earn for how the vault pays LPs.
