Эта страница переведена автоматически. Оригинал на английском языке является каноническим. Читать на английском
Перейти к основному содержимому

Контракты

Mainnet Alpha

Это актуальные адреса контрактов Hypercall Mainnet Alpha. Объём запуска намеренно ограничен на время расширения площадки.

Ончейн-компоненты Hypercall развёрнуты на Hyperliquid L1 (HyperEVM). Система использует модульную архитектуру с отдельными контрактами для управления аккаунтами, обработки ордеров и работы с токенами опционов.

Обзор архитектуры

Пользователь / МенеджерEOA или Смарт-контрактОрдера / ДействияБиржаГлавная точка входа • Upgradeable Proxy• Создаёт аккаунты (BeaconProxy)• Хранит USDC• Точка входа RSM Sequencer• Аукционы ликвидацииАккаунтBeaconProxy для каждого пользователя• Хранит залог• Ключи Manager + AgentПроцессорКодирование действий• Кодирование ActionCaster• Конвертация USD → HYPEРеестрУправление токенами опционов• Создаёт ERC20 опционов• Валидация токеновCoreWriterЗаписывает действия в HyperCoreСлой расчётовЛЕГЕНДАВызовы пользователяВнутренние вызовыРасчёт

Зоны ответственности контрактов

Exchange

Exchange — главная точка входа, использующая паттерн обновляемого прокси.

Зоны ответственности:

  • Создаёт пользовательские Account через паттерн BeaconProxy
  • Хранит внесённые USDC на HyperCore (страховой фонд + опционные позиции)
  • Точка входа для RSM Sequencer для ончейн-действий/запросов
  • Обрабатывает депозиты и выводы опционных ERC20 (мост между HyperEVM и реестром RSM)
  • Отслеживает и разрешает аукционы полной ликвидации
  • Эмитит события с сырыми действиями ActionCaster

Ключевые функции:

  • createAccount() — создаёт новый аккаунт, где вызывающий становится менеджером
  • deposit(account, token, amount) — вносит токены на аккаунт
  • addApiWallet(account, apiWallet) — авторизует API-кошелёк для торговли
  • hlRequestOrder(...) — размещает ордера на перпы/спот HyperLiquid через ActionCaster
  • hlRequestCancel(...) — отменяет ордера HyperLiquid
  • hlActionSendAsset(...) — отправляет активы с Account получателю
  • hcActionWithdrawToken(...) — выводит токены из Exchange на Account
  • hcActionWithdrawOption(...) — выводит опционы получателю на HyperEVM
  • rsmCommandRebalance(...) — инициируемые RSM ордера только на сокращение позиции
  • rsmCommandRepay(...) — инициируемое RSM погашение долга

Account

У каждого пользователя есть собственный контракт Account (BeaconProxy, указывающий на общую имплементацию).

Зоны ответственности:

  • Хранит обеспечение на стороне HyperCore для трейдеров/маркетмейкеров, использующих активы, отличные от USDC
  • Имеет единственного менеджера, который может добавлять несколько агентских ключей
  • Агентские ключи могут подписывать только ордера/отмены; остальные действия требуют подписи менеджера
  • Точка входа для менеджеров для всех действий, связанных с аккаунтом

Ключевые понятия:

  • Менеджер: владелец аккаунта, который может авторизовывать агентов и подписывать выводы средств
  • Агентские ключи: авторизованные подписанты только для размещения/отмены ордеров
  • API-кошельки: авторизованные адреса, которые могут отправлять ордера от имени аккаунта

Депозиты:

  • Опционные ERC20 вносятся через вызов Exchange.deposit()
  • Прочие активы переводятся на HyperCore через мост актива HyperEVM → HyperCore
  • Депозиты USDC в «опционную USDC-позицию» выполняются переводом на HyperCore с Account на Exchange

Processor

Processor отвечает за проверку подписей и кодирование действий.

Зоны ответственности:

  • Восстанавливает адреса подписантов из подписей
  • Кодирует действия в формат ActionCaster
  • Конвертирует суммы в USD в HYPE для расчёта депозитов

Ключевые функции:

  • hlRequestOrder(...) — обрабатывает запросы на ордера
  • hlRequestCancel(...) — обрабатывает запросы на отмену
  • hlActionSendAsset(...) — обрабатывает действия по отправке активов
  • rsmCommandRebalance(...) — обрабатывает команды ребалансировки RSM
  • rsmCommandRepay(...) — обрабатывает команды погашения RSM
  • usdToHype(amountUsd) — конвертирует USD в HYPE по спотовой цене

Registry

Registry управляет развёртыванием и валидацией токенов опционов.

Зоны ответственности:

  • Развёртывает опционные токены ERC20
  • Источник истины для вопроса «является ли данный ERC20 поддерживаемым токеном опциона»
  • Адреса из белого списка могут развёртывать новые токены опционов

Планируемые ограничения:

  • Разрешённый набор базовых активов
  • Разрешённые метки времени экспирации
  • Разрешённая гранулярность страйков

Типы действий

Запросы к HyperLiquid

Запросы, взаимодействующие с книгой заявок HyperLiquid:

ДействиеПодписантОписание
hlRequestOrderАгент/API-кошелёкРазмещение ордеров на перпы/спот
hlRequestCancelАгент/API-кошелёкОтмена ордеров по OID
hlRequestCancelByCloidАгент/API-кошелёкОтмена ордеров по CLOID

Действия менеджера

Действия, требующие подписи менеджера аккаунта:

ДействиеОписание
hlActionSendAssetОтправка активов с Account получателю
hcActionWithdrawTokenВывод токенов из Exchange на Account
hcActionWithdrawOptionВывод опционов на адрес в HyperEVM

Команды RSM

Команды, подписанные подписантом RSM (согласие менеджера не требуется):

КомандаОписание
rsmCommandRebalanceРазмещение ордеров только на сокращение позиции для увеличения баланса USDC
rsmCommandRepayПринудительный перевод USDC с Account на Exchange

Проверка подписей

  • Exchange проверяет подписи подписанта RSM
  • Account проверяет подписи менеджера и агентов
  • Команды RSM передаются без подписи менеджера (подписант RSM является доверенным)

Ликвидационные аукционы

Когда аккаунту не хватает обеспечения:

  1. RSM Sequencer запускает аукцион полной ликвидации
  2. Любой может сделать ставку, предоставив запрошенную сумму USDC
  3. Победитель становится новым менеджером Account
  4. RSM Sequencer может остановить идущие аукционы при изменении условий

Адреса развёрнутых контрактов

Mainnet Alpha

КонтрактАдресОписание
Exchange0xE6b7FaA216cabb2b38B392f577C9c826378b2240Основной контракт биржи
Exchange Implementation0xeEf31f6c8F2EFABba61C99d9efBEf4e6429024CfИмплементация Exchange за прокси
Account Implementation0xa8E861eAE5Bc47beDcF4896C7c5c676f563F5f1CИмплементация Account
Account Beacon0x1b96D6a48d1fB34dC45953697414656D2851Ca93Beacon для Account
Fetcher0x8654912Eae1554662665C13EeD4f1D8A4b028aDBВспомогательный контракт для чтения данных
Option Token Implementation0x6D0C7a116f9561A8De692c23c4C11682738ed206Имплементация токена опциона
Option Token Beacon0xfb320352B25Dba7f139EA9Bf8966891CCa12dC35Beacon для токена опциона
Factory0x2CeeAC2E032e4cCb05FF744619BfAb8cC75efE1bФабрика аккаунтов
Router0xF41FF41B6F007dE851ACc9F43Bd2f597Da741E2DВспомогательный контракт для финансирования и маршрутизации
Option Registry0x8C8efdd5F78C25215d03c8BbD5D1f6f0F1BB0598Реестр токенов опционов
Option Registry Implementation0xF222421a93df1086E329503723b3cC4c30546C46Имплементация реестра опционов за прокси

Конфигурация основной сети

ПараметрАдрес или значениеОписание
USDC0xb88339CB7199b77E23DB6E890353E22632Ba630fUSDC в HyperEVM, используемый Hypercall
Core Deposit0x6B9E773128f453f5c2C60935Ee2DE2CBc5390A24Вспомогательный контракт депозитов HyperCore
RSM Signer0x502E7fAbF34E84EeB115C34FE947b79A94dF886EТекущий подписант RSM, контролируемый оператором
Sequencer0x56a2924217C91EB4d6989Cf4C7b4dF03020E8944Текущий секвенсер
Legacy Sequencer0x8640A393730Fa671CF1C71CF5fcD2F8E299C44f7Устаревший секвенсер

Исходный код

Исходный код контрактов будет опубликован после завершения аудита.

См. также