For the complete documentation index, see llms.txt. This page is also available as Markdown.

Хуки

Если ты разработчик или ищешь подробную техническую документацию по разработке хука, посети эту страницу.

Hooks — это мощные дополнения, позволяющие разработчикам расширять и настраивать поведение пулов ликвидности в PancakeSwap Infinity. Думай о них как о «плагинах» или «виджетах», добавляющих новые функции в пулы ликвидности.

🔍 Что такое хуки?

  • Хуки — это внешние смарт-контракты, которые может создать любой желающий: разработчики, протоколы или члены сообщества — и прикрепить их к пулам ликвидности для расширения или изменения их поведения.

  • К каждому пулу может быть прикреплён только один хук, но один хук может обслуживать множество пулов.

  • Хуки могут выполнять пользовательский код до или после ключевых действий:

    • Инициализация пула

    • Обмен

    • Добавление/удаление ликвидности

    • Донат

⛓️ Как работают хуки:

  • Хук выбирается при создании пула и не может быть изменён впоследствии.

  • Контракт хука срабатывает при конкретных действиях (обмен, добавление ликвидности и т. д.) и выполняет логику до или после этих действий, как определено в контракте.

  • Например, хук может:

    • Предоставлять скидки на комиссию за обмен держателям CAKE

    • Взимать пользовательские комиссии и распределять вознаграждения

    • Включать новую логику обмена, например StableSwaps или ордера в стиле TWAMM

⚙️ Колбэки хуков

Хуки могут срабатывать в десяти конкретных моментах. Разработчики могут выбирать, какие из них реализовывать:

  • beforeInitialize / afterInitialize

  • beforeAddLiquidity / afterAddLiquidity

  • beforeRemoveLiquidity / afterRemoveLiquidity

  • beforeSwap / afterSwap

  • beforeDonate / afterDonate

Это позволяет реализовывать высоконастраиваемое и модульное поведение через хуки.

🔧 Два типа хуков

Тип 1: Авторизация не требуется

Эти хуки работают автоматически и не требуют разрешения пользователя. Они срабатывают при таких действиях, как обмены или изменения ликвидности.

Примеры:

  • Динамические комиссии: регулировка комиссий за обмен в зависимости от волатильности рынка

  • Скидки на комиссии: предоставление скидок пользователям, держащим CAKE или торгующим с большим объёмом

Пример работы (скидка на комиссии за CAKE):

  1. Пользователь инициирует обмен.

  2. Хук проверяет баланс CAKE пользователя через колбэк beforeSwap.

  3. Если пользователь держит достаточно CAKE согласно определённым порогам, он получает скидку 50% на комиссии пула.

  4. Остальная часть транзакции выполняется как обычно.

Тип 2: Требуется авторизация пользователя

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

Примеры:

  • Лимитные ордера: исполнение обмена только при достижении целевой цены.

  • TWAMM: разбивка крупных ордеров на более мелкие части для лучшего исполнения.

  • Активное управление ликвидностью: автоматическое управление LP-позициями для оптимальных доходов.

Пример работы (хук лимитного ордера):

  1. Пользователь напрямую взаимодействует с контрактом хука (не через обычный интерфейс обмена).

  2. Указывает детали: лимитную цену, пару токенов, сумму.

  3. Хук выпускает квитанционный токен, представляющий ордер.

  4. Позже, когда цена в пуле достигает целевой отметки, хук исполняет ордер через afterSwap.

  5. Пользователь может вернуть квитанционный токен для получения обменянных активов.

Такие хуки часто требуют пользовательского интерфейса, и пользователи должны доверять контракту хука и одобрить его для хранения своих средств.

🚀 Варианты использования и инновации

Хуки открывают безграничные возможности, в том числе:

  • Пользовательские AMM (например, кривые для стейблкоинов)

  • Вознаграждения за добычу ликвидности

  • Автоматизированные торговые стратегии, управление ликвидностью

  • Лимитные ордера на блокчейне, другие типы ордеров

  • Динамическое ценообразование и настройка комиссий

  • Стратегии LP с повышенной доходностью

С помощью хуков разработчики могут создавать совершенно новый DeFi-опыт, используя существующую инфраструктуру PancakeSwap Infinity — ускоряя разработку и снижая затраты.

Last updated

Was this helpful?