Référence développeurs
Adresses des contrats
Les contrats sur le mainnet HyperEVM.
Le mainnet HyperEVM est la chaîne 999. Chaque adresse renvoie vers l’explorateur. Les contrats évolutifs sont des proxys, et les adresses ci-dessous sont celles à appeler. Tout le contenu de cette page est généré à la compilation à partir des manifestes de déploiement et de la configuration du dépôt ; rien n’est saisi à la main. Vérifiez toujours une adresse sur cette page et dans l’explorateur avant d’y envoyer quoi que ce soit.
- Exchange: soldes, positions, règlement des trades, le LP et la file des paiements.
- BatchExecutor: transmet les lots d’intentions signées du relayer à une liste fixe de fonctions.
- SessionKeyManager: enregistre, vérifie et révoque les clés de session, et contrôle chaque signature.
- BuilderRegistry: les builders approuvés et le taux de frais des builders (non évolutif).
- DepositProxyFactory: dérive et déploie l’adresse de dépôt de chaque compte.
- Jeton BACK: le jeton donnant droit aux frais, émis pour les traders qui perdent.
- Staking: le staking du jeton et l’accumulateur des récompenses en USDC.
- Tokenomics: les règles d’émission, le LP comptable et l’avancée de la queue.
- PriceOracle: un utilitaire de prix Hyperliquid, en lecture seule, pour les services.
- ExchangeLens: des vues en lecture seule de l’Exchange pour les apps et les services.
- ExchangeLens (prix): des vues de prix en lecture seule (prix de faillite, aperçus).
- CoreLens: des vues en lecture seule des soldes HyperCore.
Collatéral et gouvernance
- USDC: le jeton de collatéral, l’USDC natif de Circle sur HyperEVM.
0xb88339CB7199b77E23DB6E890353E22632Ba630f - Timelock: détient tous les contrats évolutifs ; chaque action du propriétaire y attend 2 jours avant de pouvoir s’exécuter.
- Timelock des rôles: contrôle qui détient les rôles du timelock, avec un délai de 7 jours.
- Multisig de gouvernance: programme et exécute les actions du propriétaire sur le timelock.
- Multisig gardien: la clé d’urgence : suspend le trading, retire des marchés et annule des actions programmées.
- Multisig de trésorerie: reçoit la part des frais qui revient à l’équipe.
Tous les réseaux
Le manifeste complet de chaque réseau : instruments, protocole, gouvernance et adresses externes.
Mainnet · Chain id 999
Bientôt disponible : publié ici dès que les contrats seront déployés sur ce réseau.
Routes de financement
| Routes de financement | Mainnet |
|---|---|
| HyperCore (spot ou perp Hyperliquid) | activée |
| HyperEVM | activée |
| Solana (CCTP) | bientôt |
| Arbitrum (CCTP) | bientôt |
| Ethereum (CCTP) | bientôt |
| Robinhood Chain (Across) | bientôt |
Paramètres
Chaque paramètre cité dans la documentation, avec sa source :
| Paramètre | Valeur | Source |
|---|---|---|
winFee | 2% | contracts/script/config/risk-profiles.json (parity) |
lossFee | 2% | contracts/script/config/risk-profiles.json (parity) |
liqFee | 2% | contracts/script/config/risk-profiles.json (parity) |
stakerFeeShare | 50% | contracts/script/config/risk-profiles.json (parity) constants.stakerFeeShift |
minMargin | $10 | contracts/script/config/risk-profiles.json (parity) |
minNotional | $500 | contracts/script/config/risk-profiles.json (parity) |
maxCloseIds | 25 | contracts/script/config/risk-profiles.json (parity) |
maxLiqBatch | 20 | contracts/script/config/risk-profiles.json (parity) |
maxOpenPositions | 64 | contracts/script/config/risk-profiles.json (parity) |
maxDebtNodes | 50 | contracts/script/config/risk-profiles.json (parity) |
harvestMaxEntries | 64 | contracts/script/config/risk-profiles.json (parity) |
stakingPrecision | 10^36 | contracts/script/config/risk-profiles.json (parity) |
stakingMinAlloc | 1 BACK | contracts/script/config/risk-profiles.json (parity) |
minDeposit | 10 USDC | contracts/script/config/risk-profiles.json (parity) minSweepWei |
activationFee | 1 USDC | contracts/script/config/risk-profiles.json (parity) activationFeeWei |
sweepFinalizeBlocks | 1 | contracts/script/config/risk-profiles.json (parity) |
sweepTimeoutBlocks | 5 | contracts/script/config/risk-profiles.json (parity) |
unconfirmedTtl | 30 jours | contracts/script/config/risk-profiles.json (parity) |
contractMinWithdraw | aucun minimum | contracts/script/config/risk-profiles.json (parity) minWithdraw6 |
maxLeverage | 1000× | contracts/script/config/risk-profiles.json (parity) |
maxNotional | $10,000,000 | contracts/script/config/risk-profiles.json (parity) |
deadband | 0.002% | contracts/script/config/risk-profiles.json (parity) deadbandDivisor |
deadbandDivisor | 50,000 | contracts/script/config/risk-profiles.json (parity) |
baseRate | 10% | contracts/script/config/risk-profiles.json (parity) |
maxImpactShare | 90% | contracts/script/config/risk-profiles.json (parity) 1 − baseRate |
rateMultiplier | 15,000 | contracts/script/config/risk-profiles.json (parity) |
referenceNotional | $100,000 | contracts/script/config/risk-profiles.json (parity) |
holdbackStandardBand | 0.0075%–0.06% | contracts/src/lib/PnlMath.sol (the payout curves) |
holdbackOffHoursBand | 0.003%–0.1% | contracts/src/lib/PnlMath.sol (the payout curves) |
holdbackStandardScale | 3.597 | contracts/src/lib/PnlMath.sol (the payout curves) |
holdbackOffHoursScale | 6.085 | contracts/src/lib/PnlMath.sol (the payout curves) |
holdbackStandardPeak | 0.0118% pour un mouvement de 0.0338% | contracts/src/lib/PnlMath.sol (the payout curves) |
holdbackOffHoursPeak | 0.0204% pour un mouvement de 0.0418% | contracts/src/lib/PnlMath.sol (the payout curves) |
builderFee | 0.5% | contracts/script/config/risk-profiles.json (parity) builderRegistry.maxBuilderFee |
builderFeeCap | 15% | contracts/src/lib/Bounds.sol MAX_TOTAL_FEE (ADR 0029) |
totalFeeCap | 15% | contracts/src/lib/Bounds.sol MAX_TOTAL_FEE (ADR 0029) |
stakerShare | 50% | contracts/script/config/risk-profiles.json (launch) exchange.stakerShareBps |
referralFee | 1.2% | contracts/script/config/risk-profiles.json (launch) exchange.referralFeeBps |
referralDiscount | 0.2% | contracts/script/config/risk-profiles.json (launch) exchange.referralDiscountBps |
referralFeeReferred | 1% | contracts/script/config/risk-profiles.json (launch) exchange.referralFeeBps − referralDiscountBps |
referralToReferrer | 1% | contracts/script/config/risk-profiles.json (launch) exchange.referralFeeBps − referralDiscountBps |
liqReferral | off | contracts/script/config/risk-profiles.json (launch) exchange.liqReferralEnabled |
insolvencyBonusMax | 5× | contracts/src/lib/RebateMath.sol (m = 1 + 4u(2 − u)) |
insolvencyBonusRamp | 3 jours | contracts/src/lib/RebateMath.sol BONUS_RAMP |
flatThreshold | $500,000 | contracts/script/config/risk-profiles.json (launch) |
flatRate | 100 | contracts/script/config/risk-profiles.json (launch) |
tailDecayScale | $120,000,000 | contracts/script/config/risk-profiles.json (launch) |
stakerRewardCap | $500,000 | contracts/script/config/risk-profiles.json (launch) |
lpSeed | $0 | contracts/script/config/risk-profiles.json (parity) |
tokenTransfers | désactivé | contracts/script/config/risk-profiles.json (parity) |
instruments | BTC et ETH | contracts/script/config/risk-profiles.json (parity) |
intentTtl | 1 heure | contracts/script/config/mainnet.json |
intakeMaxTtl | 61 minutes | contracts/script/config/mainnet.json |
sessionKeyTtl | 30 jours | contracts/script/config/mainnet.json |
timelockDelay | 2 jours | contracts/script/config/mainnet.json |
roleTimelockDelay | 7 jours | contracts/script/config/mainnet.json |
chainId | 999 | contracts/script/config/mainnet.json |
closeHold | 6 secondes | services/relayer/src/intake/rules.ts DEFAULT_CLOSE_HOLD_MS |
intakeMinWithdraw | 10 USDC | services/relayer/src/intake/rules.ts |
sessionKeyLimit | 8 | services/relayer/src/intake/rules.ts |
maxActiveIntents | 32 | services/relayer/src/intake/rules.ts |
distributeInterval | 30 secondes | services/keepers/src/config.ts |
distributeMinUsd | $100 | services/keepers/src/config.ts |
onwardGasAllowance | 0.1 USDC | packages/hl/src/onward.ts ONWARD_GAS_ALLOWANCE6 |
usdDecimals | 18 | constants.json precision.USD_DECIMALS |
wadDecimals | 18 | constants.json precision.WAD |
maxRevokeKeys | 32 | constants.json |
harvestKeeperEntries | 32 | services/keepers/src/config.ts HARVEST_MAX_ENTRIES |
precompile.bbo | 0x000000000000000000000000000000000000080e | packages/chain/src/precompileLens.ts PRECOMPILES.bbo |
precompile.mark | 0x0000000000000000000000000000000000000806 | packages/chain/src/precompileLens.ts PRECOMPILES.markPx |
precompile.oracle | 0x0000000000000000000000000000000000000807 | packages/chain/src/precompileLens.ts PRECOMPILES.oraclePx |
coreWriter | 0x3333333333333333333333333333333333333333 | packages/chain/src/decoder.ts CORE_WRITER_ADDRESS |
capBand | 10% | config/stages/s0..s3.json offchain.keeper.defaults.bandBps |
assetIndex.BTC | 0 | contracts/script/config/mainnet.json instruments |
assetIndex.ETH | 1 | contracts/script/config/mainnet.json instruments |
bustBuffer.BTC | 0.0476% | contracts/script/config/risk-profiles.json (parity) |
positionMultiplier.BTC | 814.598 | contracts/script/config/risk-profiles.json (parity) |
maxLeverage.BTC | 1000× | contracts/script/config/risk-profiles.json (parity) |
bustDistance.BTC | 0.0524% | contracts/script/config/risk-profiles.json (parity): PnlMath.bustPrice at maxLeverage |
bustBuffer.ETH | 0.0481% | contracts/script/config/risk-profiles.json (parity) |
positionMultiplier.ETH | 483.979 | contracts/script/config/risk-profiles.json (parity) |
maxLeverage.ETH | 1000× | contracts/script/config/risk-profiles.json (parity) |
bustDistance.ETH | 0.0519% | contracts/script/config/risk-profiles.json (parity): PnlMath.bustPrice at maxLeverage |
Bornes des contrats
Les limites que vérifie chaque setter de gouvernance, les constantes fixées dans le code et les encodages qui laissent une défense en sommeil désactivée, exactement tels que les contrats les exportent (entiers bruts ; les montants en USD portent les décimales USD, les taux sont des wads) :
| Paramètre | Valeur |
|---|---|
WAD | 1,000,000,000,000,000,000 |
BPS | 10,000 |
ACC_PRECISION | 1,000,000,000,000,000,000,000,000,000,000,000,000 |
USD_DECIMALS | 18 |
USDC_EVM_DECIMALS | 6 |
CORE_USDC_WEI_DECIMALS | 8 |
PERP_USD_DECIMALS | 6 |
MAX_TOTAL_FEE | 150,000,000,000,000,000 |
BPS | 10,000 |
BPS_TO_WAD | 100,000,000,000,000 |
MIN_MARGIN_LOWER | 1,000,000,000,000,000,000 |
MIN_MARGIN_UPPER | 10,000,000,000,000,000,000,000 |
MIN_NOTIONAL_LOWER | 10,000,000,000,000,000,000 |
MIN_NOTIONAL_UPPER | 1,000,000,000,000,000,000,000,000 |
MAX_LEVERAGE_LOWER | 1 |
MAX_LEVERAGE_UPPER | 1,000 |
MAX_NOTIONAL_UPPER | 50,000,000,000,000,000,000,000,000 |
MAX_BUST_BUFFER | 10,000,000,000,000,000 |
MAX_BUST_BUFFER_TIMES_LEVERAGE | 500,000,000,000,000,000 |
DEADBAND_DIVISOR_LOWER | 20,000 |
DEADBAND_DIVISOR_UPPER | 10,000,000 |
MAX_BASE_RATE | 500,000,000,000,000,000 |
MAX_BASE_RATE_STEP | 50,000,000,000,000,000 |
RATE_MULTIPLIER_LOWER | 1,000,000,000,000,000,000 |
RATE_MULTIPLIER_UPPER | 1,000,000,000,000,000,000,000,000 |
POSITION_MULTIPLIER_LOWER | 1,000,000,000,000,000,000 |
POSITION_MULTIPLIER_UPPER | 1,000,000,000,000,000,000,000,000 |
REFERENCE_NOTIONAL_LOWER | 1,000,000,000,000,000,000,000 |
REFERENCE_NOTIONAL_UPPER | 100,000,000,000,000,000,000,000,000 |
MAX_ASSET_INDEX_EXCLUSIVE | 10,000 |
MAX_INSTRUMENTS | 16 |
GUARD_MODE_MAX | 2 |
MAX_SPREAD_BPS_LOWER | 1 |
MAX_SPREAD_BPS_UPPER | 500 |
MARK_BAND_BPS_LOWER | 1 |
MARK_BAND_BPS_UPPER | 1,000 |
ORACLE_BAND_BPS_LOWER | 1 |
ORACLE_BAND_BPS_UPPER | 2,000 |
MAX_CLAMP_BPS | 1,000 |
CLAMP_OFF | 65,535 |
MAX_PROFIT_HOLD_SECS | 300 |
DEFAULT_MAX_SPREAD_BPS | 5 |
DEFAULT_MARK_BAND_BPS | 15 |
DEFAULT_ORACLE_BAND_BPS | 75 |
DEFAULT_MARK_CLAMP_BPS | 3 |
DEFAULT_ORACLE_CLAMP_BPS | 12 |
FLOW_OFF | 0 |
ACCOUNT_CAP_OFF | 0 |
MAX_SIDE_CAP_EQUITY_BPS | 1,000,000 |
SIDE_CAP_OFF | 4,294,967,295 |
CAP_CEILING_OFF | 340,282,366,920,938,463,463,374,607,431,768,211,455 |
MAX_CLOSE_IDS_LOWER | 1 |
MAX_CLOSE_IDS_UPPER | 25 |
MAX_LIQ_BATCH_LOWER | 1 |
MAX_LIQ_BATCH_UPPER | 50 |
MAX_OPEN_POSITIONS_LOWER | 1 |
MAX_OPEN_POSITIONS_UPPER | 256 |
MAX_DEBT_NODES_LOWER | 1 |
MAX_DEBT_NODES_UPPER | 100 |
MAX_AUTO_HARVEST_ENTRIES | 8 |
HARVEST_MAX_ENTRIES | 64 |
MAX_SYNC_ENTRIES | 32 |
BREAKER_HALF_LIFE_LOWER | 300 |
BREAKER_HALF_LIFE_UPPER | 86,400 |
MAX_DRAWDOWN_BPS | 10,000 |
DRAWDOWN_FLOOR_OFF | 340,282,366,920,938,463,463,374,607,431,768,211,455 |
AUTO_RESET_LOWER | 3,600 |
AUTO_RESET_UPPER | 604,800 |
GUARDIAN_RESET_DELAY_LOWER | 60 |
GUARDIAN_RESET_DELAY_UPPER | 3,600 |
GUARDIAN_TRIPS_PER_WINDOW | 2 |
GUARDIAN_TRIP_WINDOW | 86,400 |
MIN_SWEEP_WEI_LOWER | 100,000,000 |
MIN_SWEEP_WEI_UPPER | 100,000,000,000 |
MAX_SWEEP_RESERVE_WEI | 100,000,000 |
FINALIZE_DELAY_LOWER | 1 |
FINALIZE_DELAY_UPPER | 10 |
SWEEP_TIMEOUT_UPPER | 600 |
IN_FLIGHT_RING_SIZE | 8 |
IN_FLIGHT_WINDOW_LOWER | 1 |
UNCONFIRMED_TTL_LOWER | 86,400 |
UNCONFIRMED_TTL_UPPER | 7,776,000 |
MAX_MIN_WITHDRAW6 | 100,000,000 |
MAX_ACTIVATION_FEE_WEI | 1,000,000,000 |
DIRECT_CLOSE_MODE_MAX | 2 |
FAILSAFE_DELAY_LOWER | 600 |
FAILSAFE_DELAY_UPPER | 604,800 |
PRECOMPILE_GAS_LOWER | 20,000 |
PRECOMPILE_GAS_UPPER | 200,000 |
HOOK_GAS | 200,000 |
HOOK_GAS_OVERHEAD | 12,000 |
HOOK_GAS_FLOOR | 215,175 |
INTENT_TTL_LOWER | 300 |
INTENT_TTL_UPPER | 86,400 |
SESSION_DURATION_LOWER | 3,600 |
SESSION_DURATION_UPPER | 7,776,000 |
TTL_OFF | 4,294,967,295 |
MAX_REVOKE_KEYS | 32 |
MAX_BATCH_CALLS | 32 |
MAX_RESULT_BYTES | 256 |
CORE_LENS_READ_GAS | 30,000 |
MAX_FLAT_THRESHOLD_USD | 1,000,000,000,000,000,000,000,000,000 |
MAX_FLAT_RATE | 1,000,000,000,000,000,000,000 |
TAIL_DECAY_SCALE_LOWER | 1,000,000,000,000,000,000,000,000 |
TAIL_DECAY_SCALE_UPPER | 1,000,000,000,000,000,000,000,000,000,000 |
STAKER_CAP_UPPER | 10,000,000,000,000,000,000,000,000,000 |
MIN_ALLOC | 1,000,000,000,000,000,000 |