Robinhood 持仓瞭望塔:用 eth_subscribe 盯仓位状态机
进场工具满地都是——开盘节奏、量爆密度、车头 FOMO 都能挂上订阅。仓位一旦建立,盘面还要一座 持仓期瞭望塔(Canary):部署者余额、LP/储备、Swap/费率/阶段,安静盘 vs 脉冲盘,状态一切换就推。热帖需求转述自 gippp69 一带讨论。这篇只做一件事:把 持仓标的状态机 挂到 eth_subscribe logs 上,本地做简单 state diff,打 LP 骤降 / 大单 Swap / 阶段切换标签。
开盘看节奏:抢开盘怎么盯。量爆拧密度:量爆怎么盯。车头看跟风:监控车头 FOMO。这篇盯 持仓期状态机。
| 用途 | Endpoint |
|---|---|
| 公共 HTTPS | https://robinhood-mainnet-rpc.blockreq.com/v1/rpc/public |
| 公共 WSS | wss://robinhood-mainnet-rpc.blockreq.com/v1/rpc/public |
| 私有 | 末尾 public → {API_KEY}(Key 放本地) |
链:EVM chainId = 0x1237(4663)。Free 3M Requests / 30 days · 公开端点 · eth_subscribe · 定价。
1. 持仓期要盯的状态面
| 盘面语感 | 链上信号 | 盯什么 |
|---|---|---|
| 部署者动仓 | deployer 余额 / nonce 变化;相关 Transfer | 记 bal / history 快照,Δ 超阈 → 标签 |
| LP / 储备漂移 | 池子 Sync / Mint / Burn;reserve0/1 | 相对基线骤降 / 骤升 |
| Swap 脉冲 | 池子 Swap logs;单笔 amount | 安静窗 vs 尖峰窗 |
| 费率 / 阶段切换 | 合约自定义 topic(fee / phase / mode) | topic 变了 → 阶段切换 |
瞭望塔 = 你本地维护的 持仓标的表(token / pool / deployer)+ 上一拍 state。信号落在 logs 推送,再做 diff。
2. 状态机 + eth_subscribe(瞭望塔配方)
本地先放一份 position watchlist:{ token, pool, deployer }(小写、去重)。同一条公共 WSS,订窄 logs;推送解码后更新 state,和上一拍比对。
Step A · 订池子 Sync / Swap(示例)
{
"jsonrpc": "2.0", "id": 1, "method": "eth_subscribe",
"params": ["logs", {
"address": "0xYourPoolAddress",
"topics": []
}]
}
address= 持仓对应池子。能收窄就加 Sync / Swap / Burn topic0。- Sync 解码后取
reserve0/reserve1;相对基线算 Δ% → LP 漂移。
Step B · 订 Transfer(部署者 / 金库侧)
{
"jsonrpc": "2.0", "id": 2, "method": "eth_subscribe",
"params": ["logs", {
"topics": [
"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
null,
null
]
}]
}
topics[0]= ERC-20Transfer。部署者出现在 from / to → 更新 deployer history。- 间歇补一刀 HTTPS
eth_getBalance(deployer)对齐余额快照。
Step C · 本地 state diff
| 字段 | 来源 | diff 规则(demo) |
|---|---|---|
reserves | Sync | Δ% ≥ R → LP 骤降/骤升 |
lastSwap | Swap | 单笔 ≥ S → 大单 Swap |
phase | 自定义 topic / 存储槽 | 值变了 → 阶段切换 |
quietVsSpike | 窗内 Swap 计数 | 低速安静 / 高速脉冲 |
R / S / 窗口自己拧。标签 = 解释层:JSON → 看板色块 / 告警文案。
3. 预览:持仓瞭望塔 demo(StackBlitz)
默认连 BlockReq 公共 WSS;粘贴 token / pool / deployer,实时打 LP 漂移 / 大单 / 阶段标签。代码在 StackBlitz 里看,文章只嵌预览:
仓库:blockreq/blog-demos → examples/robinhood-position-watchtower。换 keyed:WSS 末尾 public → {API_KEY}。
4. 告警规则落地(LP / 大单 / 阶段)
- 基线 → 进场后记
{ reserves0, phase, t0 }。 - 每条相关 log → 更新 state;算 Δreserves、单笔 swap、phase 哈希。
- 命中任一 → 打标签并可 webhook:
- LP Δ% ≥ R → LP 骤降(或骤升)
- 单笔 Swap ≥ S → 大单 Swap
- phase 变了 → 阶段切换
- 安静 vs 脉冲 → 滑动窗 Swap 计数;跨阈切换语感标签。
断线:重连必重新 subscribe;空窗用 HTTPS eth_getLogs 按块段回补,再用同一套 state diff 回放。POST → https://robinhood-mainnet-rpc.blockreq.com/v1/rpc/public。
5. 小结
- 持仓瞭望塔 = position watchlist + logs 订阅 + 本地 state diff。
- 配方:池子 Sync/Swap + 部署者 Transfer + R/S/阶段规则 → LP / 大单 / 阶段 标签。
- 公共 WSS 直接开跑;Free 3M 够短时盯仓;长期看板换 keyed。
- 系列互补:开盘节奏 · 量爆密度 · 车头跟风 · 本篇持仓状态机。
下一步:把 position 表固化成 JSON → 标签进 Webhook → 回补 checkpoint 落盘。公开端点 · 套餐与定价。