跳转至主要内容
返回示例应用

Hyperliquid 热力图

一个实时浏览器仪表盘,将处于休眠状态Hyperliquid 触发订单以价格水平clusters可视化呈现,并以Quicknode gRPC streams提供的实时买入/卖出报价为基准。

前端框架/库:
React
语言:
TypeScript
构建工具/开发服务器:
Vite
示例应用预览

概述

该应用可连接至 Quicknode Hyperliquid gRPC endpoint 用于直播 TP/SL 触发订单事件(StreamTpslUpdates) 以及最佳买入价/卖出价(StreamBboBook). 未平仓订单会被聚类到可配置的价格区间中,并通过 WebSocket 推送到浏览器,在那里,一个基于 Canvas 的热力图会实时渲染每个价格水平的汇总触发压力。

该应用自带一个内置演示mode 使用合成数据源,因此您无需任何凭据即可体验用户界面。

此示例应用程序仅用于教育和演示目的。

建筑

浏览器(React + Canvas)

│ WebSocket

Node.js HTTP + WebSocket 服务器

├──gRPC: StreamTpslUpdates ──┐
│ ├──Quicknode Hyperliquid gRPC Endpoint
└──gRPC: StreamBboBook ──────┘

功能


  • 实时止盈/止损热力图:价格clusters 由Quicknode gRPC streams实时clusters
  • BBO 锚点:将当前买入价和卖出价叠加在热力图上,以呈现市场背景
  • TP/SL 混合指标:每个桶中都有一个小型的绿色/红色标记,分别表示止盈和止损的占比
  • 支持多种资产:可同时监控 BTC、ETH、SOL、HYPE 以及任何其他Hyperliquid 代码
  • 可配置的斗宽: BUCKET_SIZE_PCT 根据当前中间价调整仓位规模
  • 演示mode: 当凭据缺失时,使用模拟数据运行,或者 DEMO_MODE=true
  • 健康endpoint: GET /health mode JSONmode 返回服务器状态和当前运行mode

先决条件


  • 带有Hyperliquid endpoint Quicknode endpoint 需要gRPC )
  • Node.js v18+
  • pnpm

项目结构

proto/
orderbook.proto #gRPC 定义
src/
client/
App.tsx # 币种选择器和 WebSocket 客户端
HeatmapCanvas.tsx # 基于Canvas的热力图渲染器
main.tsx # React 入口点
styles.css # 应用样式
server/
cluster-store.ts # 订单聚类和 BBO 状态
config.ts # 环境变量加载
demo.ts # 合成演示数据流
grpc.ts #gRPC 配置
server.ts # HTTP + WebSocket 服务器
streams.ts # 实时gRPC 连接
shared/
types.ts # 共享的 TypeScript 类型

环境变量

复制 .env.example.env 并填写您的登录凭据:

#mainnet
QUICKNODE=endpoint.mainnet.quiknode.pro:10000
QUICKNODE=您的-认证-令牌
目标币种=BTC,ETH,SOL
默认币种=BTC
分桶比例=0.75
演示模式=false
端口=8787
变量描述
QUICKNODE您的Quicknode Hyperliquid gRPC endpoint 主机:端口)
QUICKNODEgRPC endpoint点的身份验证令牌
TARGET_COINS需要监控的Hyperliquid 代码的逗号分隔列表
DEFAULT_COIN加载时显示哪枚硬币(必须位于 TARGET_COINS)
BUCKET_SIZE_PCT价格区间宽度占中间价的百分比(例如, 0.75 = ~500美元的比特币交易量(比特币near ))
DEMO_MODE设置为 true 强制进入演示mode 凭据如何
PORTHTTP 服务器端口(默认: 8787)

入门指南

1. Clone the repo

git clone https://github.com/quiknode-labs/qn-guide-examples.git
cdhyperliquid

2. 安装依赖项

pnpm 安装

3. Configure environment

cp .env.example .env

打开 .env 并设置 QUICKNODEQUICKNODE 请输入您的Quicknode Hyperliquid endpoint 。若未输入,应用将mode 以演示mode 启动。

4. Start the app

pnpm dev

在浏览器中打开http://localhost:8787


预览

Hyperliquid 热力图仪表盘预览
投稿与反馈
我们非常期待收到您的反馈,并欢迎大家为本示例应用贡献力量!
如需报告问题或提供反馈,请在 qn-guide-示例 存储库。
如需贡献,请按照以下步骤操作:
  1. 分叉该仓库
  2. 创建一个功能分支:
    git checkout -b feature/amazing-feature
  3. 提交您的更改:
    git commit -m "添加超棒的功能"
  4. 推送您的分支:
    git push origin feature/amazing-feature
  5. 提交一个拉取请求。