Справочник для разработчиков
Адреса контрактов
Контракты в мейннете HyperEVM.
Мейннет HyperEVM — это сеть 999. Каждый адрес ведёт в обозреватель. Обновляемые контракты — это прокси, и вызывать нужно именно адреса ниже. Всё на этой странице генерируется при сборке из манифестов развёртывания и конфигурации в репозитории; ничего не набрано вручную. Прежде чем что-либо отправлять на адрес, всегда сверяйте его с этой страницей и обозревателем.
- Exchange: балансы, позиции, расчёты по сделкам, LP и очередь выплат.
- BatchExecutor: передаёт пакеты подписанных интентов от релейера в фиксированный список функций.
- SessionKeyManager: регистрирует, проверяет и отзывает сеансовые ключи и проверяет каждую подпись.
- BuilderRegistry: одобренные билдеры и ставка комиссии билдера (не обновляется).
- DepositProxyFactory: вычисляет и развёртывает адрес для пополнения каждого аккаунта.
- Токен BACK: токен с правом на комиссии, начисляется проигравшим трейдерам.
- Staking: стейкинг токена и накопитель наград в USDC.
- Tokenomics: правила начисления, учётный LP и продвижение по хвосту.
- PriceOracle: вспомогательный контракт цен Hyperliquid только для чтения, для сервисов.
- ExchangeLens: представления Exchange только для чтения для приложений и сервисов.
- ExchangeLens (цены): ценовые представления только для чтения (цены банкротства, превью).
- CoreLens: представления балансов HyperCore только для чтения.
Залог и управление
- USDC: токен обеспечения, нативный USDC от Circle в HyperEVM.
0xb88339CB7199b77E23DB6E890353E22632Ba630f - Таймлок: владеет всеми обновляемыми контрактами; каждое действие владельца ждёт здесь 2 дня, прежде чем его можно выполнить.
- Таймлок ролей: определяет, у кого роли таймлока, с задержкой 7 дней.
- Мультисиг управления: планирует и выполняет действия владельца через таймлок.
- Мультисиг-хранитель: аварийный ключ: приостанавливает торговлю, закрывает рынки и отменяет запланированные действия.
- Мультисиг казначейства: получает долю комиссий команды.
Все сети
Полный манифест каждой сети: инструменты, протокол, управление и внешние адреса.
Основная сеть · Chain id 999
Скоро: появится здесь, когда контракты будут развёрнуты в этой сети.
Маршруты средств
| Маршруты средств | Основная сеть |
|---|---|
| HyperCore (спот или perp Hyperliquid) | включён |
| HyperEVM | включён |
| Solana (CCTP) | скоро |
| Arbitrum (CCTP) | скоро |
| Ethereum (CCTP) | скоро |
| Robinhood Chain (Across) | скоро |
Параметры
Каждый параметр, который упоминается в документации, с его источником:
| Параметр | Значение | Источник |
|---|---|---|
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 дней | contracts/script/config/risk-profiles.json (parity) |
contractMinWithdraw | без минимума | 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% при движении на 0.0338% | contracts/src/lib/PnlMath.sol (the payout curves) |
holdbackOffHoursPeak | 0.0204% при движении на 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 дня | 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 | выключено | contracts/script/config/risk-profiles.json (parity) |
instruments | BTC и ETH | contracts/script/config/risk-profiles.json (parity) |
intentTtl | 1 час | contracts/script/config/mainnet.json |
intakeMaxTtl | 61 минута | contracts/script/config/mainnet.json |
sessionKeyTtl | 30 дней | contracts/script/config/mainnet.json |
timelockDelay | 2 дня | contracts/script/config/mainnet.json |
roleTimelockDelay | 7 дней | contracts/script/config/mainnet.json |
chainId | 999 | contracts/script/config/mainnet.json |
closeHold | 6 секунд | 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 секунд | 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 |
Границы контрактов
Пределы, которые проверяет каждый сеттер управления, константы, зафиксированные в коде, и кодировки, при которых спящая защита остаётся выключенной, — ровно в том виде, в каком их экспортируют контракты (сырые целые числа; суммы в USD имеют десятичные знаки USD, ставки заданы в формате wad):
| Параметр | Значение |
|---|---|
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 |