帖子
分享您的知识。
Sui 生态系统中的 AMM 机器人
Sui 生态系统中 AMM 机器人的主要特征和功能是什么?他们如何改进传统的交易机制,以及它们为在Sui网络上使用DeFi协议的用户提供了哪些优势?
例如,我需要建造一个还是可以使用 Turbos Finance
- Sui
答案
2如果您正在寻找一种快速高效的方式来使用 Sui 生态系统中的 AMM 功能,则不一定需要构建自己的机器人. 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
嘿 Vens,如果你想插入 DeepBook 这样的 SUI 原生模块. Turbos 和类似的 AMM 已经提供了智能合约基础设施和前端接口,这意味着你可以启动一个机器人(例如,在 Rust 或 TypeScript 中使用 Sui SDK)来做自动交换、进行套利或管理有限合约头寸等操作. 但是,如果您想要更多的控制权,可以直接使用DeepBook进行构建,因为Sui的原生流动性层可让您使用订单簿逻辑,费用自定义和托管控制来构建DEX.
例如,你可以:• 使用 create_pool 创建共享池对象,指定 tick_size、lot_size 和费用等级. • 通过 create_account 设置托管账户来管理高资产余额,就像在 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
你知道答案吗?
请登录并分享。
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.

- MiniBob... SUI+31
1
- HaGiang... SUI+26
2
- harry phan... SUI+21
3
- ... SUIMarlKey+20
- ... SUI
- ... SUI0xduckmove+15
- ... SUIVens.sui+15
- ... SUICarlkawIy+12
- ... SUI
- ... SUIkryptoschain+10