Sui.

Допис

Діліться своїми знаннями.

Vens.sui.
Apr 29, 2025
Питання та відповіді експертів

Бот AMM в екосистемі Sui

Які ключові особливості та функціональні можливості ботів AMM в екосистемі Sui? Як вони покращують традиційні торгові механізми та які переваги вони пропонують користувачам, які користуються протоколами DeFi в мережі Sui?

Чи потрібно мені будувати його або я можу використовувати Turbos Finance, наприклад

  • Sui
9
3
Поділитися
Коментарі
.

Відповіді

3
MiniBob.
Apr 29 2025, 08:36

Якщо ви шукаєте швидкий та ефективний спосіб взаємодії з функціями AMM в екосистемі Sui, вам не обов'язково створювати власного бота. Такі платформи, як Turbos Finance, вже пропонують розширені функції AMM, включаючи автоматизовану торгівлю та забезпечення ліквідності, які призначені для покращення досвіду користувачів. Використання існуючих рішень, таких як Turbos Finance, дозволяє скористатися оптимізованими та перевіреними інструментами без складності розробки.

Але мій найулюбленіший - це https://github.com/OmniBTC/Sui-AMM-swap

cmd для тестів

$ issue XBTC and USDT test coins
XBTC="0x985c26f5edba256380648d4ad84b202094a4ade3::coins::XBTC"
USDT="0x985c26f5edba256380648d4ad84b202094a4ade3::coins::USDT"
SUI="0x2::sui::SUI"

$ sui client publish --gas-budget 10000
package=0xc6f8ce30d96bb9b728e000be94e25cab1a6011d1
global=0x28ae932ee07d4a0881e4bd24f630fe7b0d18a332

$ sui client objects
sui_coin=0x525c0eb0e1f4d8744ae21984de2e8a089366a557
usdt_coin=0x8e81c2362ff1e7101b2ef2a0d1ff9b3c358a1ac9

$ sui client call --gas-budget 10000 \
  --package=$package \
  --module=interface \
  --function=add_liquidity \
  --args $global $sui_coin 1 $usdt_coin 1 \
  --type-args $SUI $USDT
  
lp_sui_usdt=0xdf622fddc8447b0c1d15f8418e010933dd5f0a6c 
pool_sui_usdt=0x5058b90e728df97c4cb5cade5e5c77fcb662a4b9

$ sui client split-coin --gas-budget 10000 \
  --coin-id $lp_sui_usdt \
  --amounts 100000
  
lp_sui_usdt2=0x6cde2fe9277c92e196585fb12c6e3d5aaa4eab34

$ sui client call --gas-budget 10000 \
  --package=$package \
  --module=interface \
  --function=remove_liquidity \
  --args $global $lp_sui_usdt2 \
  --type-args $SUI $USDT

new_usdt_coin=0xc090e45f9461e39abb0452cf3ec297a40efbfdc3
new_sui_coin=0x9c8c1cc38cc61a94264911933c69a772ced07a09

# sui -> usdt
$ sui client call --gas-budget 10000 \
  --package=$package \
  --module=interface \
  --function=swap \
  --args $global $new_sui_coin 1  \
  --type-args $SUI $USDT
  
out_usdt_coin=0x80076d95c8bd1d5a0f97b537669008a1a369ce12

# usdt -> sui
sui client call --gas-budget 10000 \
  --package=$package \
  --module=interface \
  --function=swap \
  --args $global $out_usdt_coin 1 \
  --type-args $USDT $SUI

out_sui_coin=0xaa89836115e1e1a4f5fa990ebd2c7be3a5124d07


$ sui client call --gas-budget 10000 \
  --package=$package \
  --module=interface \
  --function=add_liquidity \
  --args $global $out_sui_coin 100 $new_usdt_coin 1000 \
  --type-args $SUI $USDT
8
Найкраща відповідь
Коментарі
.
harry phan.
Apr 30 2025, 03:03

Привіт, Венс, якщо ви хочете підключитися до вбудованих модулів SUI, таких як DeepBook. Турбо та подібні AMM вже забезпечують інфраструктуру смарт-контрактів та інтерфейси інтерфейсу, тобто ви можете запустити бота (наприклад, у Rust або TypeScript за допомогою Sui SDK) для таких речей, як автоматична заміна, запуск арбітражу або управління позиціями LP. Однак, якщо ви хочете отримати більше контролю, створюйте безпосередньо за допомогою DeepBook, оскільки власний рівень ліквідності Sui дозволяє створювати DEX з логікою книги ордерів, налаштуванням комісій та контролем зберігання.

Наприклад, ви можете: • Створити об'єкт спільного пулу за допомогою create_pool, вказавши рівні tick_size, lot_size та комісійних рівнів. • Налаштувати облікові записи зберігання через create_account для керування залишками активів з високим рівнем Like Створити пул на DeepBook

sui client call \ --package <DEEPBOOK_PACKAGE_ID> \ --module deepbook \ --function create_pool \ --type-args 0x2::sui::SUI 0x2::usdc::USDC \ --args 1000000 1000000 <CREATION_FEE_OBJECT> \ --gas-budget 10000000

Перш ніж розміщувати лімітні ордери, ваш бот повинен створити обліковий запис зберігача:

sui client call \
  --package <DEEPBOOK_PACKAGE_ID> \
  --module deepbook \
  --function create_account \
  --gas-budget 5000000

Депозит SUI (базовий актив):

sui client call \
  --package <DEEPBOOK_PACKAGE_ID> \
  --module deepbook \
  --function deposit_base \
  --type-args 0x2::sui::SUI 0x2::usdc::USDC \
  --args <POOL_ID> <SUI_COIN_OBJECT> <ACCOUNT_CAP_ID> \
  --gas-budget 3000000

Депозит USDC (котируючий актив):

sui client call \
  --package <DEEPBOOK_PACKAGE_ID> \
  --module deepbook \
  --function deposit_quote \
  --type-args 0x2::sui::SUI 0x2::usdc::USDC \
  --args <POOL_ID> <USDC_COIN_OBJECT> <ACCOUNT_CAP_ID> \
  --gas-budget 3000000

Оформити лімітне замовлення

sui client call \
  --package <DEEPBOOK_PACKAGE_ID> \
  --module deepbook \
  --function place_limit_order \
  --type-args 0x2::sui::SUI 0x2::usdc::USDC \
  --args <POOL_ID> <CLIENT_ORDER_ID> <PRICE> <QUANTITY> 0 true <EXPIRE_TS> 0 <CLOCK_ID> <ACCOUNT_CAP_ID> \
  --gas-budget 5000000

Розмістіть ринковий ордер

sui client call \
  --package <DEEPBOOK_PACKAGE_ID> \
  --module deepbook \
  --function place_market_order \
  --type-args 0x2::sui::SUI 0x2::usdc::USDC \
  --args <POOL_ID> <ACCOUNT_CAP_ID> <CLIENT_ORDER_ID> <QUANTITY> true <BASE_COIN_ID> <QUOTE_COIN_ID> <CLOCK_ID> \
  --gas-budget 5000000

Перемінятися між базою та котируванням

sui client call \
  --package <DEEPBOOK_PACKAGE_ID> \
  --module deepbook \
  --function swap_exact_base_for_quote \
  --type-args 0x2::sui::SUI 0x2::usdc::USDC \
  --args <POOL_ID> <CLIENT_ORDER_ID> <ACCOUNT_CAP_ID> <QUANTITY> <SUI_COIN_OBJECT> <USDC_COIN_OBJECT> <CLOCK_ID> \
  --gas-budget 5000000

Інакше

sui client call \
  --package <DEEPBOOK_PACKAGE_ID> \
  --module deepbook \
  --function swap_exact_quote_for_base \
  --type-args 0x2::sui::SUI 0x2::usdc::USDC \
  --args <POOL_ID> <CLIENT_ORDER_ID> <ACCOUNT_CAP_ID> <QUANTITY> <CLOCK_ID> <USDC_COIN_OBJECT> \
  --gas-budget 5000000
4
Коментарі
.
24p30p.
24p30p2042
Jul 9 2025, 05:58

Боти AMM в екосистемі Sui - це автоматизовані торгові інструменти, призначені для взаємодії з децентралізованими біржами (DEX), які використовують моделіавтоматизований маркет-мейкер (AMM). Ці боти виконують такі завдання, як обмін токенами, забезпечення ліквідності, виконання арбітражних можливостей та ребалансування пулів - все це шляхом безпосередньої взаємодії з мережевими смарт-контрактами. Що їх виділяє на Sui, - це їхня здатність використовуватипаралельне виконання, низьку затримку та об'єктно-центричний дизайн для виконання угод швидше та ефективніше, ніж у багатьох інших ланцюгах. Це забезпечує користувачам більш плавну торгівлю з меншим прослизком та кращими характеристиками газу.

Порівняно з традиційними торговими механізмами, де ви покладаєтесь на книги ордерів та централізованих посередників, боти AMM у Sui DeFi роблять все бездозвольним та в режимі реального часу. Ви не чекаєте покупців чи продавців - ви торгуєте проти пулів ліквідності, які дотримуються заздалегідь встановленої математики. Наприклад, бот може автоматично виявляти невідповідність цін між двома пулами та виконувати арбітраж, щоб отримати прибуток від різниці, а також допомагати підтримувати узгодженість цін по всій мережі.

Вам не потрібно створювати власного бота, якщо ви не хочете використовувати власну логіку чи стратегії. Платформи на кшталTurbos Financeвже надають інфраструктуру та інструменти AMM, тому ви можете торгувати або забезпечувати ліквідність, використовуючи їхні смарт-контракти, не пишемо код. Якщо ви розробник, ви можете створити власного бота за допомогою контрактів Sui SDK або Move для взаємодії з такими протоколами, як Turbos, Cetus або DeepBook.

Ось приклад того, як бот може викликати функцію swap за допомогою блоку транзакцій:

const txb = new TransactionBlock();
txb.moveCall({
  target: '0x...::amm::swap',
  arguments: [
    txb.object('0xYourPoolID'),
    txb.object('0xInputCoin'),
    txb.pure(1000000), // amount in MIST
  ],
});

Це дозволяє програмно обмінюватися токенами в одному рядку за допомогою Turbos або модуля AMM іншого протоколу.

Щоб дізнатися, як AMM працюють над Sui та доступними інструментами, перегляньте https://docs.turbos.finance та офіційний огляд Sui DeFi за адресою https://docs.sui.io/ecosystem/defi.

0
Коментарі
.

Ви знаєте відповідь?

Будь ласка, увійдіть та поділіться нею.

Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.

637Пости1665Відповіді
Sui.X.Peera.

Зароби свою частку з 1000 Sui

Заробляй бали репутації та отримуй винагороди за допомогу в розвитку спільноти Sui.

Кампанія винагородСерпень