超流体 RPC
Hyperliquid 概述
Hyperliquid 是一个专为链上交易设计的区块链,其交易速度和手续费水平接近中心化交易所的水平。该架构由两个相互连接的组件组成:
HyperCore——一款负责管理交易执行并提供市场数据的链上订单簿引擎。HyperCore 通过 gRPC、JSON-RPC/HTTP 和 WebSocket API 提供多种实时数据流,不同数据流支持的协议各不相同(详见下文“可用数据流”)。
HyperEVM——一个用于智能合约部署和交互的 EVM 兼容执行层。开发者可以使用标准的以太坊 JSON-RPC 方法,推出新的资产类别、构建交易策略金库、创建 DeFi 协议,并管理数字资产。HyperEVM 支持所有主要的以太坊开发工具,包括 Foundry、Hardhat、Web3.js、Ethers.js 和 Viem。
这两个组件均基于HyperBFT共识机制(基于HotStuff)运行,并使用原生HYPE代币支付交易手续费。
HyperCore 市场基本组件
Hyperliquid 通过 Hyperliquid 改进提案(HIP)定义了不同的市场类型:
- HIP-1 - 永续合约市场: 支持隔离保证金和跨保证金模式的链上永续合约。永续合约交易对以普通符号形式显示(例如,
BTC,ETH) 在 API 中。 - HIP-2 - 代币上架公告: 用户自发行代币的原生现货市场。现货交易对使用
@index符号(例如,@107) 在 API 中。 - HIP-3 - 由构建器部署的永久性资源: 独立开发者可以在 HyperCore 上部署自己的永久 DEX,并拥有独立的订单簿和抵押品。通过传递
dex传递给信息端点的参数;使用perpDexs以列出所有处于活动状态的。 - HIP-4——结果市场: 在固定价格范围内结算的完全抵押型结果合约(二元和多价型)。二元(
priceBinary) 市场以“是”或“否”结算;多价格(priceBucket) 问题市场将多个二元子结果分组到价格区间中,从而确保恰好有一个结果以“是”结算。结果方使用#N符号(例如,#0对于“是”,#1(指第一个结果的数量)。参见outcomeMeta用于 info 端点。
访问 /hypercore(简体中文(大陆)) (JSON-RPC 和 WebSocket)以及 HyperCore gRPC 流式传输需要一个 Quicknode 构建方案或更高版本. 查看价格 进行升级。
与 Hyperliquid 的 API 进行交互
HyperCore 和 HyperEVM 是 Hyperliquid 的原生协议组件,可通过任何基础设施提供商获取。 Quicknode 通过单一端点提供对这两层协议的托管访问,负责管理节点基础设施、确保可靠性并保障性能。除原生 API 外,Quicknode 还提供一系列配套产品:Streams(基于推送的 HyperEVM 事件分发)、Webhooks(HTTP 事件通知)、SQL Explorer(对已索引的 Hyperliquid 数据进行 SQL 查询)、社区 SDK 以及Marketplace 插件。
Quicknode 通过专为不同使用场景设计的专用 API,提供了对这两个 Hyperliquid 组件的访问:
HyperEVM API
HyperEVM 支持标准的以太坊 JSON-RPC 方法,允许开发者直接使用 Foundry、Hardhat 和 Web3 库等熟悉的以太坊工具,无需进行任何修改。可通过以下两种专用路径访问 HyperEVM:
/evm 路径 - 标准区块链操作,包括账户余额查询、交易查询、智能合约调用(eth_call)、gas费用估算以及交易广播。此路径专为读取操作和高频查询设计。 注: 该 /evm 端点仅保留最近的区块数据,不提供归档访问功能。查询保留窗口之外的旧区块将返回错误。请使用 /nanoreth 用于历史数据需求。
/nanoreth 路径 - 提供所有标准方法以及高级调试功能(debug_traceTransaction、debug_storageRangeAt)、交易追踪(trace_transaction、trace_block、trace_filter)、用于实时区块链事件的 WebSocket 支持,以及完整的历史数据存档。此路径还支持对任意区块进行历史 eth_call 查询,而 /evm 仅支持最新区块。
兼容:Foundry、Hardhat、Truffle、Web3.js、Ethers.js、Viem、Metamask 以及所有标准的以太坊开发框架。
由于 Hyperliquid 的架构差异,某些 RPC 方法的行为可能与以太坊不同。建议您参考Hyperliquid官方文档以获取最新信息。
跨层集成:HyperEVM 上的智能合约可以读取 HyperCore 预言机价格。请参阅我们关于从合约中访问 HyperCore 数据的指南。
HyperCore API
HyperCore 通过多种 API 协议提供交易所数据的实时和历史访问:
信息端点 (/info path) - 通过52种专门方法查询涵盖永续合约和现货市场的全面市场数据、用户持仓、订单状态、交易记录、资金库信息及交易所状态。Quicknode的 /info 该端点原生支持 52 种方法中的 50 种;请参阅 “端点”页面 详情请见。
REST API——交易操作(构建并发送带签名的订单)、构建者费用审批管理、市场探索(列出市场/去中心化交易所、未成交订单、订单状态)以及订单验证(预检)。支持从构建未签名操作到提交签名交易的整个订单生命周期管理,并提供增强型接口用于检查审批状态和查询丰富的订单数据。
如果您正在使用免费试用套餐,我们会为您提供一个 URL,但该 URL 并非专属于您的 Quicknode 账户。详情请参阅hyperliquidapi.com,如需支持,请访问我们的Discord 频道。
JSON-RPC/HTTP (/hypercore(简体中文(大陆)) path) - 历史交易所数据查询(hl_getLatestBlocks、hl_getBlock、hl_getBatchBlocks),用于数据补全和批量处理(每次请求最多 200 个区块),以及投资组合和清算所状态查询(hl_portfolioState、hl_batchClearinghouseStates、 hl_batchPortfolioStates),用于检索单个或多个用户的持仓、余额和保证金数据;以及订单数据查询(hl_batchOpenOrders),用于在单次请求中检索最多 100 个用户的未平仓订单。
gRPC 流式传输 (端口 10000) - 市场数据双向流传输,延迟低于 1 毫秒。支持所有 13 种数据流,并采用原生 zstd 压缩(可将带宽降低约 70%),包括 StreamL2Book (聚合深度)和 StreamL4Book (单笔订单)并内置快照功能。适用于做市商、算法交易系统以及需要低延迟的实时分析应用。
WebSocket (/hypercore/ws path) - 采用标准 WebSocket 库实现的、兼容各类浏览器的实时订阅功能。基于 JSON 的协议,包含 hl_subscribe 和 hl_unsubscribe 方法。支持六种数据流(行业, 订单, BOOK_UPDATES, TWAP, 活动, WRITER_ACTIONS). BLOCKS 以及 订单流 方法 (StreamL2Book, StreamL4Book, StreamBboBook, StreamL2BookDiff, StreamL4BookUpdates, StreamTpslUpdates) 仅支持 gRPC。适用于基于 Web 的交易仪表盘、价格监控器和投资组合追踪器。
可用数据流
| 流 | 描述 | gRPC | WebSocket | JSON-RPC |
|---|---|---|---|---|
| 行业 | 已成交的交易及其做市商/接单方信息 | ✓ | ✓ | ✓ |
| 订单 | 订单生命周期事件(18种以上状态类型) | ✓ | ✓ | ✓ |
| BOOK_UPDATES | 订单簿的增量变化 | ✓ | ✓ | ✓ |
| TWAP | TWAP算法执行数据 | ✓ | ✓ | ✓ |
| 活动 | 余额变动、转账、清算 | ✓ | ✓ | ✓ |
| WRITER_ACTIONS | HyperCore ↔ HyperEVM 桥接数据 | ✓ | ✓ | ✓ |
| BLOCKS | 区块链原始数据(replica_cmds) | ✓ | - | - |
| StreamL2Book | 聚合价格水平深度(每个区块的完整快照) | ✓ | - | - |
| StreamL4Book | 单笔订单簿(快照 + 每个区块的差异) | ✓ | - | - |
| StreamBboBook | 委托单顶部的最佳买价/卖价,仅在BBO发生变化时输出 | ✓ | - | - |
| StreamL2BookDiff | 基于单枚代币序列号的L2价格水平增量变化 | ✓ | - | - |
| StreamL4BookUpdates | 按订单类型编写的添加/更新/删除差异 | ✓ | - | - |
| StreamTpslUpdates | 基于未平仓订单快照的触发(TP/SL)订单添加/删除更新 | ✓ | - | - |
| MEMPOOL_TXS | 待处理的mempool交易 | ✓ | - | - |
所有数据流均支持按用户地址、交易对等条件进行筛选。筛选限制因套餐等级而异。
了解有关HyperCore 数据流和过滤的更多信息。
索引数据与分析
对于涵盖较长时间范围的分析型工作负载(例如聚合指标、历史交易、资金费率及清算记录),Quicknode 提供了基于索引和事件驱动的产品,这些产品与上述原生 API 相辅相成。
- SQL 探索器:使用标准 SQL 查询已预索引的 Hyperliquid 数据,无需构建或维护索引管道。请参阅Hyperliquid 查询示例和模式参考以开始使用。
- 数据流:将实时和历史 HyperEVM 数据以推送方式传输至您指定的接收端,并保证“仅传输一次”且支持自定义过滤。
- Webhooks:在 HyperEVM 事件发生时触发 HTTP 通知,以支持基于事件的工作流。
使用 SQL Explorer 进行即席分析和历史数据分析,并使用 Streams 或 Webhooks 实现持续的、基于事件的数据传输。
支持的 SDK
Quicknode 维护着多种语言的 Hyperliquid 开源社区 SDK。这些 SDK 负责处理 HyperCore 交易操作和 HyperEVM 交互所需的交易构建、签名和提交。
这些开源 SDK 由 Quicknode 开发和维护。它们以社区为导向,与 Hyperliquid Foundation 或 Hyperliquid Labs 既无隶属关系,也未获得其认可,更无任何关联。
可用的 SDK:
- Python-PyPI 上的 hyperliquid-sdk
- TypeScript/JavaScript- npm 上的 @quicknode/hyperliquid-sdk
- Rust-crates.io 上的 quicknode-hyperliquid-sdk
- Go- 可在SDK 存储库中获取
所有 SDK 均为开源软件,可在以下地址获取: GitHub. 这些 SDK 与 Quicknode 端点集成,用于访问 /info, /交易所, /evm, /nanoreth, /hypercore(简体中文(大陆)),以及 gRPC 流。无论是否使用 Quicknode 端点,均可使用这些功能。
有关 SDK 的详细文档、示例和设置指南,请参阅“SDK 和库”页面。
调用 Hyperliquid API
要开始在 Hyperliquid 上进行开发,请创建一个 Quicknode 端点,并访问 HyperEVM 和 HyperCore 这两项服务。
Quicknode提供托管的 Hyperliquid 基础设施,让您无需运行自己的节点即可使用这两个组件。这些端点提供:
- 可靠性——全球分布式基础设施,最大限度地减少停机时间
- 性能——生产环境应用程序的低延迟与请求处理
- 双组件访问 - 通过单一端点即可访问 HyperEVM(通过
/evm以及/nanoreth) 和 HyperCore(通过/hypercore(简体中文(大陆))HTTP/WebSocket 和 gRPC) - 支持多种协议——HTTP、WebSocket 和 gRPC 流式传输
- 生态系统集成——互补产品包括Streams、Webhooks 和SQL Explorer。详情请参阅上文“索引数据与分析”部分。
请访问“快速入门”页面,创建您的端点并发送第一个请求。
支持的网络
Quicknode 支持访问以下 Hyperliquid 网络:
*修剪政策:
/evm → 仅显示最近的数据。该 /evm endpoint 不提供归档访问功能——较旧的区块数据会定期被清理(大约每 12 小时一次)。针对超出保留时段的区块发出的请求将返回一个 块高度无效 错误。请使用 /nanoreth 用于历史查询。
/nanoreth → 支持跟踪功能的完整历史存档。包含所有调试和跟踪方法,以及 WebSocket 功能。
- 主网:完整历史存档
- 测试网:从区块 34112653 开始(非创世区块)
HyperCore 数据可用性:
/info (HTTP) - 通过 52 种信息获取方式(meta、clearinghouseState、userFills、l2Book、portfolio 等)提供全面的市场数据和用户信息
REST API - 交易操作(创建/提交订单、取消、修改)、构建者费用管理(批准/撤销)、市场查询(列出市场/去中心化交易所、未平仓订单、订单状态)以及订单验证(预检)
/hypercore(简体中文(大陆)) (HTTP) - 历史区块查询(hl_getLatestBlocks、hl_getBlock、hl_getBatchBlocks)、投资组合/清算所状态查询(hl_portfolioState、hl_batchClearinghouseStates、hl_batchPortfolioStates)以及订单数据查询(hl_batchOpenOrders)
/hypercore/ws (WebSocket) - 6 条数据流(TRADES、ORDERS、BOOK_UPDATES、TWAP、EVENTS、WRITER_ACTIONS)的实时流式传输
gRPC - 支持所有 13 个数据流的实时流式传输,并支持 zstd 压缩
HyperEVM: /evm (仅限 HTTP) • /nanoreth (HTTP + WebSocket + 追踪/调试)
HyperCore: /info (52种信息获取方法) • /hypercore/.. REST API(交易与市场查询) • /hypercore(简体中文(大陆)) (历史区块查询) • /hypercore/ws WebSocket(6 个流)• gRPC(13 个流,包括 StreamL2Book/StreamL4Book + 压缩)
了解有关HyperEVM 和 HyperCore 端点的更多信息
按网络划分的 API 可用性
| API / 端点 | 主网 | 测试网 |
|---|---|---|
| HyperCore 信息端点 (/info) | ✓ | ✓ |
| HyperCore 交易所 API (/hypercore/*) | ✓ | ✗ |
| HyperCore JSON-RPC/WSS (/hypercore) | ✓ | ✓ |
| gRPC 流式传输(端口 10000) | ✓ | ✓ |
| HyperEVM (/evm) | ✓ | ✓ |
| 调试 API (/nanoreth) | ✓ | ✓ |
| Trace API (/nanoreth) | ✓ | ✓ |
面向使用 Quicknode 在 Hyperliquid 上进行开发的开发者的完整参考指南: