What is NeutronX

NeutronX is a sovereign L1 for perpetual futures. The order book, positions, margin, funding and liquidations live in chain state and are executed by the validators in every block.

How it works

Every validator keeps the full order book. The block proposer matches new orders against the book. The other validators repeat the matching and reject the block if the result differs. Prices come from the validators themselves through vote extensions. Trades, positions and fees are recorded in the same block.

Details are in Architecture.

How it differs

NeutronXExchange with an off-chain matcher
MatchingIn the block, repeated by every validatorOn the operator's server
FinalityOne block, ~0.84 sOperator confirmation
TrustValidator consensusThe operator
CensorshipA proposer can leave a transaction out of its own block only. Halting the network takes more than 1/3 of stakeOperator's decision
HistoryEvery order, trade and position change is an event in a blockOperator's internal logs
Listing, pause, parametersGovernance proposalAdministrator's decision

Principles

  • Governance only. Only the governance module can change parameters, list markets and upgrade the network. There are no admin keys.
  • Fail closed. If an invariant breaks, trading stops. If an oracle price is stale, the pair is not updated and its liquidations are postponed until a fresh price or the circuit breaker.
  • Determinism. Fixed-point numbers only, no floats. Data is iterated in sorted order, so every validator gets the same result.
  • Equal access. Market makers have no privileges. Orders in the book are ranked by price. Within one price level the order is set by the block number and the order's place in the block, and no order field can move it. Fee tiers are open to everyone by volume.
  • Transparent state. Balances, positions, orders and trades are stored on chain and can be checked directly through the public API, without trusting the exchange.

Modules

ModuleResponsibility
x/orderbookOrders, the book, matching, short-term orders, fees
x/perpsSubaccounts, positions, margin, funding, liquidations, insurance fund, conditional and algorithmic orders, IBC deposits
x/agentkeysAPI keys for bots: trading keys with permissions and an expiry
x/oraclePrice aggregation, circuit breaker, penalties for wrong prices
x/vaultProtocol liquidity vault
x/referralReferral codes and payouts
x/promoPromo vouchers and deposit match
x/missionsMissions and rewards
x/incentivesTrading incentives in NTX (currently off)

Standard Cosmos modules are used as well: bank, staking, distribution, slashing, gov, upgrade, mint, evidence, consensus and IBC transfer.

What NeutronX is not

  • Not a spot exchange. Perpetual futures only.
  • Not a smart contract platform. No EVM or CosmWasm; all logic lives in the chain modules.
  • Not a rollup or an L2. Its own validator set and its own finality.
  • No cross-margin between subaccounts. Positions inside a subaccount share collateral, while different subaccounts are isolated.