PinnedPinnedPrivate
在 Hyperliquid 测试网跑通 HIP-3:部署一条自己的永续合约
HIP-3 是 Hyperliquid(一条主打永续合约的链上交易所)开放的能力:让第三方部署自己的永续合约市场(DEX)。我在测试网(testnet)上跑通了它的最小部署闭环,一路踩了几个不写在文档里的坑。
账户模式挡路。 如果账户处于统一账户模式(unified account),部署者动作会被测试网直接拒绝,必须先切回标准模式(standard mode)。
抽象层必须关。 部署者注册资产要求账户抽象(abstraction)处于关闭状态。DEX 抽象一旦打开,registerAsset2 就返回 User must have abstractions disabled——错误信息很直白,但你得先知道去关它。
品种名要用全名。 注册时 coin 字段必须是完整品种名,比如 hkx:HSI,只发裸名 HSI 会返回 Invalid perp DEX。
SDK 落后于文档。 截至官方 Python SDK 0.24.0,暴露的还是旧版 onlyIsolated 参数;而最新文档已经是 registerAsset2 + marginMode。解决办法是复用 SDK 的签名函数,直接发原始动作(raw action)perpDeploy.registerAsset2。
工程上我把安全默认做死:所有脚本默认是演练(dry-run),不读私钥、不签名、不发交易;真实发送必须显式传 --send。部署一条链上金融市场,宁可多打一个字。
