Community-maintained resource. For official documentation, see docs.bulk.trade.
BULK Exchange is a Solana-native decentralized perpetuals exchange with a custom L0 execution layer (BULK Net) that targets 5–20ms matching latency and eliminates structural front-running through leaderless BFT consensus.
Settlement and asset custody remain on Solana. Trading executes on BULK Net, a separate consensus environment running alongside the Solana validator set.
| Property | Value |
|---|---|
| Type | Solana-native perpetuals DEX |
| Model | Central limit order book (CLOB) |
| Execution layer | BULK Net (L0, separate from Solana programs) |
| Consensus | BulkBFT — leaderless Byzantine fault-tolerant |
| Matching latency | 5–20ms target (vs ~400ms Solana, ~200ms Hyperliquid) |
| Fair ordering | 4-layer MEV shield |
| Margin | Portfolio margin — SPAN-inspired, up to 70% lower requirement vs isolated (see docs/margin.md) |
| Fee attribution | Builder Codes — permissionless, user-approved (see docs/builder-codes.md) |
| LST | BulkSOL — earns 12.5% of all exchange trading fees |
| Community allocation | 30% of total BULK token supply confirmed |
| Mainnet status | Live — launched September 5, 2026, invite-only (referral link + weekly access code) |
Every BULK validator runs a bulk-agave binary alongside their standard Solana (Agave) validator. These share identity keys and Solana stake weights.
┌─────────────────────────────────────────────────┐
│ BULK Validator │
│ │
│ ┌─────────────────┐ ┌────────────────────────┐ │
│ │ Agave (Solana) │ │ bulk-agave (BULK) │ │
│ │ - Settlement │ │ - Order matching │ │
│ │ - Custody PDAs │ │ - BulkBFT consensus │ │
│ │ - Withdrawals │ │ - Fair ordering │ │
│ └─────────────────┘ └────────────────────────┘ │
└─────────────────────────────────────────────────┘
BulkBFT is a leaderless Byzantine fault-tolerant protocol with no designated block proposer per round. Key properties:
- Fast path achieves commitment in 2 message delays (theoretical minimum for BFT)
- Requires >2/3 stake supermajority
- No single validator can front-run or censor transactions
| Layer | Mechanism | Attack Prevented |
|---|---|---|
| 1 | Quorum admission (>2/3 validators) | Single-validator censorship |
| 2 | Fisher-Yates shuffle (WyRand PRNG, consensus-seeded) | Transaction ordering manipulation |
| 3 | Structural priority queues (cancels first) | Cancel racing |
| 4 | Price-time CLOB matching | — |
All user funds are held in per-user Solana PDAs. Withdrawals require FROST threshold signatures from the validator supermajority. The Solana program upgrade authority is a Squads 5-of-8 multisig with a 3-hour timelock (upgraded from 3-of-5 on August 18, 2026), signed from air-gapped Ledger hardware.
Fastest path from zero to a routed order. Full mechanism, SDK details, and seven use-case examples (frontends, bots, vaults, wallet-native perps, etc.) in docs/builder-codes.md.
npm install bulk-clientimport { BulkClient } from "bulk-client";
const client = new BulkClient({
env: "production",
builderCode: "neFHdfhQFLwTcoJfLCUco1UvN8UHXx8Vmo2zU3Gp6hU",
});
await client.approveBuilderFee({ builderCode: "neFHdfhQFLwTcoJfLCUco1UvN8UHXx8Vmo2zU3Gp6hU", maxFeeBps: 5 });
await client.placeOrder({ symbol: "BTC-USD", side: "buy", type: "limit", price: 68000, size: 0.1, tif: "GTC" });Check the routed order against the live BTC-USD book to confirm the fill.
Every BULK market takes the same ?ref=YETI parameter — useful for pointing bots, alerts, or docs examples at a specific pair:
| Market | Trade Link |
|---|---|
| BTC-USD | app.bulk.trade/trade/BTC-USD?ref=YETI |
| SOL-USD | app.bulk.trade/trade/SOL-USD?ref=YETI |
| ETH-USD | app.bulk.trade/trade/ETH-USD?ref=YETI |
| HYPE-USD | app.bulk.trade/trade/HYPE-USD?ref=YETI |
| NEAR-USD | app.bulk.trade/trade/NEAR-USD?ref=YETI |
| ZEC-USD | app.bulk.trade/trade/ZEC-USD?ref=YETI |
| MEGA-USD | app.bulk.trade/trade/MEGA-USD?ref=YETI |
| LIT-USD | app.bulk.trade/trade/LIT-USD?ref=YETI |
| JUP-USD | app.bulk.trade/trade/JUP-USD?ref=YETI |
| AAVE-USD | app.bulk.trade/trade/AAVE-USD?ref=YETI |
| XRP-USD | app.bulk.trade/trade/XRP-USD?ref=YETI |
| FARTCOIN-USD | app.bulk.trade/trade/FARTCOIN-USD?ref=YETI |
| TAO-USD | app.bulk.trade/trade/TAO-USD?ref=YETI |
| MON-USD | app.bulk.trade/trade/MON-USD?ref=YETI |
| XPL-USD | app.bulk.trade/trade/XPL-USD?ref=YETI |
| SUI-USD | app.bulk.trade/trade/SUI-USD?ref=YETI |
| JTO-USD | app.bulk.trade/trade/JTO-USD?ref=YETI |
| ENA-USD | app.bulk.trade/trade/ENA-USD?ref=YETI |
| BNB-USD | app.bulk.trade/trade/BNB-USD?ref=YETI |
| DOGE-USD | app.bulk.trade/trade/DOGE-USD?ref=YETI |
| Resource | URL |
|---|---|
| Protocol overview | builtonbulk.xyz/bulk-exchange |
| SDK guide | builtonbulk.xyz/bulk-sdk-guide |
| Architecture deep dive | builtonbulk.xyz/bulk-exchange-architecture |
| BulkBFT explained | builtonbulk.xyz/bulkbft-explained |
| Fair ordering | builtonbulk.xyz/fair-ordering-explained |
| Fee structure | builtonbulk.xyz/fees |
| Aura points guide | builtonbulk.xyz/aura-points-guide |
| Official docs | docs.bulk.trade |
| Trade on mainnet (ref: YETI) | app.bulk.trade/ref/YETI |
- Aura Points — AURA mechanics (post-mainnet) + Season 1 historical
- BulkSOL — four yield streams (fee share live since mainnet), how to get it
- Matching Engine — CLOB, priority queues, deterministic execution
- Fair Ordering — MEV shield, Fisher-Yates, quorum admission
- Portfolio Margin — 9-regime HMM, SPAN-inspired aggregation formula, worked example
- Builder Codes — permissionless fee-attribution for developers, SDK quick start, 7 worked use cases
- API Reference — all endpoints, order types, signature format, margin system
pip install bulk-keychain # Python
npm install bulk-keychain # Node.js
cargo add bulk-keychain # RustOfficial repo: github.com/bulk-trade/bulk-keychain
The public REST API endpoints are not yet documented. Check docs.bulk.trade for updates.
For AURA projection calculators and wallet trackers, see the companion repo: bulk-aura-tracker
| Resource | URL |
|---|---|
| Airdrop / mainnet AURA checklist | github.com/andrewhayter/bulk-airdrop-guide |
| AURA tracker tools (Season 1 historical) | github.com/andrewhayter/bulk-aura-tracker |
Resource maintained by builtonbulk.xyz — community guide site, not official BULK Exchange documentation.
Last updated: September 8, 2026 — reflects mainnet (live Sept 5, 2026).