返回 Web3 笔记
Day 36

Day 36:Whale 监控看板开发 — 首版落地

基于 Day 35 方案在 momoweb3 中实现 Whale 监控看板:监控地址列表、资产与 Health Factor 展示、告警分级

2025-02-15
Web3WhaleDashboard风控Day36Week5

Day 36: Whale 监控看板开发 — 首版落地

今日目标

完成三件事:

  1. 在 momoweb3 中新增 Whale 监控看板页面与路由(/whale)。
  2. 实现监控地址列表与核心指标展示(资产总额、在池占比、Health Factor、24h 变动、告警等级)。
  3. 产出代码提交,并在主导航中添加入口。

核心概念回顾

为什么需要 Whale 看板?

  • 风控:协议 TVL 若过度依赖少数大户,其撤资或清算会引发流动性危机。
  • 产品洞察:大户诉求(滑点、深度、安全)与散户不同,追踪行为有助于优先级判断。
  • Smart Money:观察领先行为的地址,可发现新赛道或竞品动向。

Day 35 方案要点(本日实现范围)

  • 监控对象:DeFi 协议中的大户(示例:Aave 存款大户)。
  • 核心指标:地址、标签、链、资产总额(USD)、在池占比、Health Factor、24h 变动、告警等级(正常 / P1 预警 / P0 警报)。
  • 数据源:首版使用 Mock 数据;后续可接 Dune / Arkham / 协议 API。

开发实现摘要

1. 新增路由与页面

  • 路径app/whale/page.tsx
  • 内容:页头(标题 + 返回首页)、看板说明卡片、WhaleMonitor 组件。
  • 风格:与 /analytics 保持一致(min-h-screen bg-backgroundcontainerArrowLeft 返回)。

2. WhaleMonitor 组件(src/components/WhaleMonitor.tsx

  • 表格列:地址(缩短显示)/ 标签、链、资产总额(USD)、在池占比、Health Factor、24h 变动、告警、操作(复制、Etherscan 外链)。
  • 告警展示normal 正常、warning P1 预警(琥珀色)、danger P0 警报(红色);Health Factor < 1.15 用红色、< 1.5 用琥珀色。
  • 数据:当前为 Mock 4 条(Aave Top 1–3 + Uniswap V3 LP Whale),字段与 docs/Whale追踪方法论与监控方案.md 中的指标对齐。
  • 扩展WhaleAddress 接口与 Mock 数组可后续替换为 API 或配置文件。

3. 导航更新

  • Navbar 中增加「Whale」链接(/whale),桌面与移动端均展示,图标使用 Fish(lucide-react)。

链上实操与数据源(后续)

  • Mock → Dune:用 Day 31–32 的 Dune 查询(如 Aave 大户、Uniswap 活跃地址)通过 Dune API 拉取,替换 MOCK_WHALES
  • Arkham / Nansen:接入标签与资金流向时,可增加「实体标签」「最近大额转账」等列。
  • 协议合约:Health Factor 等需调用协议只读接口时,可在 Day 37 或后续迭代中实现。

今日执行清单

  • 新增 app/whale/page.tsxsrc/components/WhaleMonitor.tsx
  • 实现监控列表(地址、标签、链、资产、在池占比、HF、24h 变动、告警)
  • 复制地址、Etherscan 外链
  • 在 Navbar 添加 Whale 入口
  • 后续:接入真实数据源(Dune/Arkham/协议 API)

面试表达(30 秒)

Day 36 我基于 Day 35 的 Whale 监控方案,在项目里落地了 Whale 看板首版:一个展示监控地址列表和核心指标的页面,包括资产总额、在池占比、Health Factor 和 24h 变动,并按 P0/P1 做告警分级。当前用 Mock 数据跑通交互和导航,后续会接 Dune 或协议 API 做真实监控。


明日预告

Day 37:Whale 监控看板(续) — 完善数据源、告警规则或可视化。