Контракти
Це поточні адреси контрактів Hypercall Mainnet Alpha. Обсяг запуску навмисно обмежений, поки майданчик розширюється.
Ончейн-компоненти Hypercall розгорнуті на Hyperliquid L1 (HyperEVM). Система використовує модульну архітектуру з окремими контрактами для управління акаунтами, обробки ордерів та роботи з опціонними токенами.
Огляд архітектури
Обов'язки контрактів
Exchange
Exchange — це головна точка входу, яка використовує патерн оновлюваного проксі.
Обов'язки:
- Створює акаунти користувачів (Account) через патерн BeaconProxy
- Зберігає внесені USDC на HyperCore (страховий фонд + опціонні позиції)
- Точка входу для RSM Sequencer для ончейн-дій/запитів
- Обробляє депозити та виведення опціонних ERC20 (бріджинг між HyperEVM та реєстром RSM)
- Відстежує та завершує аукціони повної ліквідації
- Емітує події з сирими діями ActionCaster
Ключові функції:
createAccount()- Створює новий акаунт із викликачем як менеджеромdeposit(account, token, amount)- Вносить токени на акаунтaddApiWallet(account, apiWallet)- Авторизує API-гаманець для торгівліhlRequestOrder(...)- Розміщує перп/спот ордери HyperLiquid через ActionCasterhlRequestCancel(...)- Скасовує ордери HyperLiquidhlActionSendAsset(...)- Надсилає активи з Account одержувачуhcActionWithdrawToken(...)- Виводить токени з Exchange на AccounthcActionWithdrawOption(...)- Виводить опціони одержувачу на HyperEVMrsmCommandRebalance(...)- Ініційовані RSM ордери reduce-onlyrsmCommandRepay(...)- Ініційоване RSM погашення боргу
Account
Кожен користувач має власний контракт Account (BeaconProxy, що вказує на спільну імплементацію).
Обов'язки:
- Зберігає забезпечення на стороні HyperCore для трейдерів/маркетмейкерів, які використовують активи, відмінні від USDC
- Має єдиного менеджера, який може додавати кілька агентських ключів
- Агентські ключі можуть підписувати лише ордери/скасування; інші дії вимагають підпису менеджера
- Точка входу для менеджерів для всіх дій, пов'язаних з акаунтом
Ключові поняття:
- Менеджер: Власник акаунта, який може авторизувати агентів та підписувати виведення коштів
- Агентські ключі: Авторизовані підписанти лише для розміщення/скасування ордерів
- API-гаманці: Авторизовані адреси, які можуть подавати ордери від імені акаунта
Депозити:
- Опціонні ERC20 вносяться викликом
Exchange.deposit() - Інші активи бріджаться на HyperCore через бридж активу HyperEVM → HyperCore
- Депозити USDC на "Option USDC position" виконуються через переказ на HyperCore з Account на Exchange
Processor
Processor обробляє перевірку підписів та кодування дій.
Обов'язки:
- Відновлює адреси підписантів із підписів
- Кодує дії у формат ActionCaster
- Конвертує суми в USD у HYPE для розрахунку депозитів
Ключові функції:
hlRequestOrder(...)- Обробляє запити на ордериhlRequestCancel(...)- Обробляє запити на скасуванняhlActionSendAsset(...)- Обробляє дії з надсилання активівrsmCommandRebalance(...)- Обробляє команди ребалансування RSMrsmCommandRepay(...)- Обробляє команди погашення RSMusdToHype(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 | Розміщення ордерів reduce-only для збільшення балансу USDC |
rsmCommandRepay | Примусовий переказ USDC з Account на Exchange |
Перевірка підписів
- Exchange перевіряє підписи підписанта RSM
- Account перевіряє підписи менеджера та агентів
- Команди RSM передаються без підпису менеджера (підписант RSM є довіреним)
Ліквідаційні аукціони
Коли акаунт стає недостатньо забезпеченим:
- RSM Sequencer запускає аукціон повної ліквідації
- Будь-хто може зробити ставку, надавши запитану суму USDC
- Переможець стає новим менеджером Account
- RSM Sequencer може зупинити поточні аукціони, якщо умови змінюються
Розгорнуті адреси
Mainnet Alpha
| Контракт | Адреса | Опис |
|---|---|---|
| Exchange | 0xE6b7FaA216cabb2b38B392f577C9c826378b2240 | Головний контракт біржі |
| Exchange Implementation | 0xeEf31f6c8F2EFABba61C99d9efBEf4e6429024Cf | Імплементація Exchange за проксі |
| Account Implementation | 0xa8E861eAE5Bc47beDcF4896C7c5c676f563F5f1C | Імплементація Account |
| Account Beacon | 0x1b96D6a48d1fB34dC45953697414656D2851Ca93 | Beacon акаунта |
| Fetcher | 0x8654912Eae1554662665C13EeD4f1D8A4b028aDB | Допоміжний контракт для читання |
| Option Token Implementation | 0x6D0C7a116f9561A8De692c23c4C11682738ed206 | Імплементація опціонного токена |
| Option Token Beacon | 0xfb320352B25Dba7f139EA9Bf8966891CCa12dC35 | Beacon опціонного токена |
| Factory | 0x2CeeAC2E032e4cCb05FF744619BfAb8cC75efE1b | Фабрика акаунтів |
| Router | 0xF41FF41B6F007dE851ACc9F43Bd2f597Da741E2D | Помічник фінансування та маршрутизації |
| Option Registry | 0x8C8efdd5F78C25215d03c8BbD5D1f6f0F1BB0598 | Реєстр опціонних токенів |
| Option Registry Implementation | 0xF222421a93df1086E329503723b3cC4c30546C46 | Імплементація реєстру опціонів за проксі |
Конфігурація основної мережі
| Параметр | Адреса або значення | Опис |
|---|---|---|
| USDC | 0xb88339CB7199b77E23DB6E890353E22632Ba630f | HyperEVM USDC, який використовує Hypercall |
| Core Deposit | 0x6B9E773128f453f5c2C60935Ee2DE2CBc5390A24 | Помічник депозитів HyperCore |
| RSM Signer | 0x502E7fAbF34E84EeB115C34FE947b79A94dF886E | Поточний підписант RSM, контрольований оператором |
| Sequencer | 0x56a2924217C91EB4d6989Cf4C7b4dF03020E8944 | Поточний секвенсер |
| Legacy Sequencer | 0x8640A393730Fa671CF1C71CF5fcD2F8E299C44f7 | Застарілий секвенсер |
Вихідний код
Вихідний код контрактів буде опубліковано після завершення аудиту.
Пов'язані матеріали
- Підписання EIP-712 - Формати повідомлень та підписання
- Авторизація агентів - Налаштування API-гаманця
- Онбординг - Створення акаунта та депозити
- Автентифікація API - Підписання запитів