Перейти к основному содержанию

Обзор

Arbitrage Yield Engine генерирует доходность для AREAL DAO за счёт захвата ценовых расхождений на сторонних активах, которые находятся в парах с RWT на native DEX. AREAL DAO создаёт пулы ликвидности, связывая RWT с реальными и крипто-активами — RWT/BTC, RWT/SOL, RWT/Gold, RWT/S&P500 и другие. Эти сторонние активы также торгуются на внешних рынках. Когда цена актива на внешнем рынке расходится с его ценой на native DEX AREAL, движок захватывает спред — наращивая капитал пула без изменения его структуры TVL. 100% арбитражной прибыли направляется в AREAL DAO Treasury.

Как это работает

Настройка

AREAL DAO создаёт выделенные арбитражные пары на native DEX — RWT в паре с широко торгуемыми активами:

Крипто-активы

RWT/BTC, RWT/SOL, RWT/ETH — в паре с wrapped-версиями основных криптовалют, торгуемых на каждом внешнем DEX

Реальные активы

RWT/Gold (XAUT), RWT/S&P500, RWT/Equities — в паре с токенизированными традиционными активами с чёткими внешними эталонными ценами
Эти активы не являются Ownership Tokens — это сторонние токены с глубокой внешней ликвидностью и устоявшимися рыночными ценами.

Механизм арбитража

Обнаружение ценового расхождения

Движок мониторит цену стороннего актива (напр., Gold) в пуле native DEX и сравнивает с ценами на внешних рынках. Когда спред превышает минимальный порог, фиксируется возможность.

Извлечение актива из пула

Движок забирает более дешёвый актив из пула native DEX. Например, если Gold на native DEX дешевле, чем на внешнем рынке, движок берёт Gold из пула RWT/Gold.

Продажа на внешнем рынке

Извлечённый актив продаётся на внешнем рынке по более высокой цене, генерируя выручку в USDC (или эквивалентном стейблкоине).

Конвертация выручки в RWT

Выручка в USDC конвертируется в RWT (через минт по NAV или рыночную покупку) и возвращается в пул — заменяя извлечённый актив RWT равной или большей стоимости.

TVL пула сохранён, капитал растёт

Общая стоимость пула остаётся прежней (или немного увеличивается от спреда), но состав смещается: меньше стороннего актива, больше RWT. Чистая прибыль идёт в AREAL DAO Treasury.

Два направления арбитража

Сторонний актив дешевле на native DEX, чем на внешнем рынке.
  1. Забрать актив из пула RWT/Asset
  2. Продать на внешнем рынке по более высокой цене → получить USDC
  3. Конвертировать USDC → RWT (минт по NAV или покупка на native DEX)
  4. Вернуть RWT в пул
Результат: в пуле меньше актива, больше RWT. Прибыль захвачена.

On-Chain аккаунты

ArbConfig

Глобальная конфигурация: минимальный порог спреда (базисные пункты), макс. размер сделки, список активных арбитражных пар и аккаунт DAO Treasury. Seeds: ["arb_config"].

ArbPair

PDA конфигурации для каждой пары. Каждая арбитражная пара (напр., RWT/Gold ↔ внешний рынок Gold) имеет свой конфиг: порог спреда, макс. размер сделки, ссылку на внешний рынок и кумулятивный трекер прибыли. Seeds: ["arb_pair", native_pool].

ArbOperators

Вайтлист адресов кошельков, авторизованных для исполнения арбитражных сделок. Управляется Engine Authority. Только вайтлист-боты команды AREAL могут вызывать execute_arb. Seeds: ["arb_operators"].

ArbStats

Кумулятивная статистика: общая захваченная прибыль, количество сделок, средний спред, разбивка прибыли по парам. On-chain прозрачность для отчётности DAO. Seeds: ["arb_stats"].

Основные инструкции

register_arb_pair

Регистрирует пул native DEX как арбитражную пару. Связывает сторонний актив пула с его внешним рыночным эквивалентом. Только пулы, где не-RWT сторона — сторонний актив (не Ownership Token), могут быть зарегистрированы.Authority: Engine Authority (AREAL DAO)
Accounts:
  - engine_authority:    Signer
  - arb_config:          PDA
  - arb_pair:            PDA (init)
  - native_pool:         PDA пула Native DEX (RWT/сторонний актив)
  - system_program

Args:
  - external_market_ref: Pubkey  Идентификатор внешнего рынка (пул DEX, ценовой фид)
  - min_spread_bps: u16          Минимальный спред для триггера (напр., 30 = 0.3%)
  - max_trade_size: u64          Макс. размер сделки (в USD-эквиваленте)
Исполняет одну арбитражную сделку. Движок либо:A) Продаёт актив на внешнем рынке (цена на native < внешняя):
  1. Забирает сторонний актив из пула native DEX
  2. Продаёт на внешнем рынке за USDC
  3. Конвертирует USDC в RWT (минт по NAV или рыночная покупка)
  4. Возвращает RWT в пул — TVL сохранён
B) Покупает актив на внешнем рынке (цена на native > внешняя):
  1. Покупает сторонний актив на внешнем рынке за USDC
  2. Депонирует в пул native DEX
  3. Извлекает эквивалент RWT по более высокой внутренней цене
  4. Чистая прибыль в RWT → DAO Treasury
Работает внутри MagicBlock Ephemeral Rollup для субмиллисекундного исполнения.Authority: Только вайтлист-оператор (из ArbOperators)
Accounts:
  - operator:            Signer (должен быть в ArbOperators)
  - arb_config:          PDA
  - arb_pair:            PDA (mut)
  - arb_stats:           PDA (mut)
  - native_pool:         Пул Native DEX (mut, CPI)
  - external_accounts:   Аккаунты внешнего рынка (переменные, CPI)
  - arb_capital_ata:     Торговый капитал движка (mut)
  - dao_treasury_ata:    Аккаунт DAO Treasury (mut)
  - rwt_vault:           PDA RWT Vault (для пути минтинга по NAV)
  - rwt_mint:            Mint RWT (для пути минтинга)
  - native_dex_program
  - token_program

Args:
  - direction: enum      { SellAssetExternally, BuyAssetExternally }
  - amount: u64          Размер сделки (в единицах стороннего актива)
  - min_profit: u64      Минимальная приемлемая прибыль в RWT (защита от проскальзывания)
Депонирует торговый капитал (USDC) в движок для исполнения арбитражных сделок. Капитал циклически перемещается между внутренним и внешним рынками — не расходуется, а генерирует доходность через спреды.Authority: Engine Authority (AREAL DAO)
Accounts:
  - engine_authority:    Signer
  - arb_config:          PDA
  - dao_source_ata:      Аккаунт USDC DAO (mut)
  - arb_capital_ata:     Аккаунт капитала движка (mut)
  - token_program

Args:
  - amount: u64          Капитал USDC для депозита
Выводит торговый капитал из движка обратно в DAO.Authority: Engine Authority (AREAL DAO)
Accounts:
  - engine_authority:    Signer
  - arb_config:          PDA
  - arb_capital_ata:     Аккаунт капитала движка (mut)
  - dao_dest_ata:        Аккаунт USDC DAO (mut)
  - token_program

Args:
  - amount: u64          Капитал для вывода (0 = весь баланс)
Добавляет или удаляет кошельки операторов из вайтлиста ArbOperators.Authority: Engine Authority (AREAL DAO)
Accounts:
  - engine_authority:    Signer
  - arb_operators:       PDA (mut)

Args:
  - wallet: Pubkey       Кошелёк бота-оператора
  - action: enum         { Add, Remove }

Примеры арбитража

Сценарий: Gold стоит 2,340наnativeDEXAREAL,но2,340 на native DEX AREAL, но 2,345 на внешнем рынке токенизированного золота.
  1. Движок забирает 10 oz Gold из пула RWT/Gold
  2. Продаёт на внешнем рынке: 10 × 2,345=2,345 = **23,450**
  3. Конвертирует $23,450 USDC → RWT по текущему NAV
  4. Возвращает RWT в пул (эквивалент стоимости 10 oz Gold)
  5. **Чистая прибыль: 50(10×50** (10 × 5 спред) → DAO Treasury
TVL пула остаётся прежним — просто больше RWT, меньше Gold.

Ключевой принцип: сохранение TVL

Арбитражный движок не выкачивает ликвидность из пулов native DEX. Он замещает одну сторону пары:
До арбитражаПосле арбитража
Пул: 50% RWT + 50% GoldПул: 55% RWT + 45% Gold
TVL: $1,000,000TVL: $1,000,050 (прибыль захвачена)
Пул всегда сохраняет обе стороны. Движок лишь немного сдвигает соотношение — а прибыль от спреда наращивает общий TVL со временем. Master Pool Rebalancer или естественная торговая активность восстанавливают соотношение.
Арбитражный капитал (USDC), депонированный DAO — это оборотный капитал движка для мостинга между рынками. Он циклируется непрерывно и никогда не заблокирован — DAO может вывести его в любой момент.

Интеграция с MagicBlock

Субмиллисекундное исполнение

execute_arb работает внутри Ephemeral Rollup для максимально быстрого исполнения. Арбитражные возможности закрываются за секунды — скорость критична.

Мониторинг цен в реальном времени

Движок считывает цены пулов native DEX и внешние ценовые фиды непрерывно внутри ER — обнаруживая возможности в момент их появления.

Безопасность

Вайтлист операторов

Только вайтлист-боты DAO могут исполнять арбитраж. Внешние пользователи не могут вызвать execute_arb — предотвращение фронтраннинга или sandwich-атак на движок.

Только прибыльное исполнение

execute_arb требует min_profit > 0. Движок никогда не исполняет в убыток. Если спред закрылся до исполнения, транзакция откатывается.

Сохранение TVL

Движок замещает активы в пуле, не выкачивает их. Общая стоимость пула сохраняется или увеличивается — сдвигается только соотношение активов.

Изоляция капитала

Торговый капитал хранится в выделенном PDA. Движок не может получить доступ к vault, treasury или другим средствам протокола.

Только сторонние активы

Только пулы со сторонними активами (BTC, SOL, Gold, акции) могут быть зарегистрированы для арбитража. Пулы Ownership Tokens исключены — арбитраж OT может создать непреднамеренные governance-последствия.

Полная on-chain прозрачность

ArbStats отслеживает каждую сделку, прибыль и объём on-chain. DAO может проверить, что 100% прибыли достигает Treasury.
Модуль Arbitrage Yield Engine в настоящее время находится в разработке. Эта документация описывает целевую архитектуру. Код модуля ещё не прошёл аудит.