关于 deepbook-margin
面向在 Sui 上集成 DeepBook Margin 的开发者,介绍通过抵押、借贷和现货订单簿进行杠杆交易。内容按风险、持仓工作流和合约参数组织为专项参考资料。
主要功能
- 01说明保证金架构与风险比率
- 02指导抵押、借款、交易和还款
- 03涵盖利息累积与清算阈值
- 04将合约和池参数问题引导至参考资料
- 05建议复用 MarginManagers
适用场景
- 01在 Sui 上构建杠杆交易应用
- 02监控持仓的清算风险
- 03规划借款与抵押操作
- 04查询保证金池参数
MCP 相关
若环境可用,技能建议查询 https://sui.mcp.kapa.ai 上的 Sui 文档 MCP 服务,以核实信息并补充参考资料未涵盖的细节。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mystenlabs/ skills --skill deepbook-margin安装后在 Claude Code 中输入/deepbook-margin确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
contract-info.mdrisk-model.mdtrading-workflow.mdevals/evals.json详细介绍
DeepBook Margin
MCP 工具: 如果你的环境支持,也请查询 Sui 文档 MCP 服务(
https://sui.mcp.kapa.ai),以获取最新答案。可用于验证信息,以及补充这些参考文件未涵盖的细节。
来源限制: 本技能中的所有信息仅来源于 docs.sui.io 和 deepbookv3 repository。扩展或更新本技能时,只能使用这些来源。请勿使用第三方博客、教程或非官方文档。
DeepBook Margin 支持杠杆交易,用户可以存入抵押品、从借贷池借款,并在现货订单簿中交易借入的资金。本技能涵盖保证金系统架构、风险模型和 SDK 集成。常见错误包括忽略借款头寸持续产生的利息、未监控风险比率以判断是否接近清算,以及每次会话都创建新的 MarginManager,而不是重复使用现有实例。
本技能会根据具体任务跳转至相应的参考文件。只加载与当前任务相关的文件。
本技能中的所有模式均来源于: https://docs.sui.io/onchain-finance/deepbook/deepbook-margin https://docs.sui.io/onchain-finance/deepbook/deepbook-margin/design https://docs.sui.io/onchain-finance/deepbook/deepbook-margin/leveraged-workflow https://docs.sui.io/onchain-finance/deepbook/deepbook-margin/margin-integration https://docs.sui.io/onchain-finance/deepbook/deepbook-margin/margin-risks https://github.com/MystenLabs/deepbookv3/tree/main/packages/deepbook_margin
如果不确定某个 API 或参数,请先获取相关页面。 请勿根据其他杠杆协议进行猜测或推断。
参考文件
risk-model — 风险比率、利率和清算
路径: risk-model.md
在以下情况下加载: 用户询问风险比率、杠杆计算、清算阈值、利率公式、折点利用率模型或保证金风险。
涵盖内容: 风险比率公式、四种风险阈值、杠杆计算表、包含公式和各池参数的折点利率模型、清算机制和奖励、预言机注意事项、全面的风险类别。
trading-workflow — 杠杆头寸生命周期
路径: trading-workflow.md
在以下情况下加载: 用户想要开仓、监控或平仓杠杆头寸,创建 MarginManager,存入抵押品、借款、下达保证金订单或提现。
涵盖内容: SDK 设置、MarginManager 的创建与复用、读取风险参数、检查借款流动性、存入抵押品、借款、下达保证金订单、监控风险状态、平仓(仅减仓并还款)、提取抵押品、故障排除。
contract-info — 合约地址和池参数
路径: contract-info.md
在以下情况下加载: 用户需要保证金包 ID、支持的资产、保证金池 ID 和供应上限、交易对风险参数,或现货与保证金对比表。
涵盖内容: 当前包版本、注册表 ID、支持的代币、保证金池配置、交易对风险参数和杠杆水平、现货与保证金的结构对比。
路由指南
| 任务 | 加载 |
|---|---|
| 了解保证金风险和清算 | risk-model |
| 计算杠杆或风险比率 | risk-model |
| 了解利率 | risk-model |
| 开立杠杆头寸 | trading-workflow |
| 创建或复用 MarginManager | trading-workflow |
| 存入抵押品并借款 | trading-workflow |
| 监控头寸健康状况 | trading-workflow |
| 平仓并提取资金 | trading-workflow |
| 查询保证金合约地址 | contract-info |
| 比较现货与保证金集成 | contract-info |
| 构建保证金交易应用 | 所有参考文件 |
| 将保证金集成到协议中 | 所有参考文件 |
技能内容
关键概念
-
MarginManager。 一种共享对象,封装 DeepBook BalanceManager、持有抵押品并跟踪借款情况。每个 MarginManager 仅绑定一个 DeepBook 池(隔离保证金,不跨池)。
-
风险比率。 核心指标:
total_assets / total_debt。这个数值决定允许执行哪些操作。它会随市场价格波动和利息累积而变化。 -
四个风险阈值。 所有阈值都按池存储在 MarginRegistry 中,并由治理设定:
- 最低提取风险比率 — 低于此值时禁止提取(通常为 2.0)
- 最低借款风险比率 — 低于此值时禁止借款;该值决定最大杠杆
- 目标清算风险比率 — 清算会将头寸恢复至此水平
- 清算风险比率 — 达到或低于此值时,任何人都可触发清算
-
折点利率模型。 当利用率低于最佳值(通常为 80%)时,借款利率缓慢上升;超过最佳值后,利率则急剧攀升。利息按事件驱动的间隔累积(每当池状态发生变化时),而非持续累积 — 但这意味着即使价格稳定,债务也会随时间增长。
-
无需许可的清算。 风险比率达到清算阈值后,任何人都可以清算该头寸。没有宽限期。清算人会获得抵押品奖励(通常为 2%),池还会获得额外奖励(通常为 3%)。
规则
- 在链上读取风险参数。 所有阈值均由治理设定,且可能发生变化。切勿将其硬编码。
- 保证金订单使用
_v2函数(place_limit_order_v2、place_market_order_v2)。不带后缀的原函数已弃用。 - 每项保证金操作都需要 Pyth
PriceInfoObject参数。 与现货交易不同,保证金的所有操作(借款、提取、读取风险数据、交易)都依赖预言机。 - 复用 MarginManager。 每个会话都创建一个新的 MarginManager,会使抵押品分散到无人管理的共享对象中。通过注册表查找已有的管理器。
- 根据风险参数确定借款规模,而非反复试错。 最低借款风险比率决定了每单位抵押品对应的最大杠杆。
clientOrderId必须是数字字符串(编码为 u64),与现货相同。
常见错误
- 忽视利息累积。 债务按事件驱动的间隔增长(每当池状态发生变化时 — 借款、还款、清算)。即使价格稳定,头寸也可能仅因利息累积而逐渐接近清算。
- 不监控风险比率。 清算前没有宽限期。集成方必须向用户显示风险比率及其与清算阈值的距离。
- 每次运行都创建新的 MarginManager。 这会使抵押品分散。创建新的管理器前,使用
findMarginManagerId查找已有的管理器。 - 在同一个池中借款和交易,却不检查预言机数据是否足够新。 如果 Pyth 价格超过池允许的最大数据时效,操作就会回滚。
- 混淆保证金订单入口与现货订单入口。 保证金订单会通过带有风险检查的池代理路由,而非直接使用现货订单入口。