오픈 몇 분은 猛冲했다가 砸는다——필요한 건바로 돌릴 방안: Base 새 풀이 착지하면 앞 몇 블록 Swap을 세고, 촘촘해지면 받는다. 브라우저를 BlockReq 퍼블릭 엔드포인트에 걸면 된다.
퍼블릭 엔드포인트로 돌린다 · blockreq.com 가입하면 매달 3M 요청 무료.
| 용도 | Endpoint |
|---|---|
| 퍼블릭 HTTPS | https://base-rpc.blockreq.com/v1/rpc/public |
| 퍼블릭 WSS | wss://base-rpc.blockreq.com/v1/rpc/public |
| 프라이빗 | 끝 public → {API_KEY}(키는 로컬) |
체인: Base Mainnet EVM chainId = 0x2105(8453). 공개 엔드포인트 · eth_subscribe · 요금 · 가입.
1. 오픈 몇 분: 이 신호만 잡는다
| 호가창 감각 | 온체인 신호 | 리슨 초점 |
|---|---|---|
| 새 풀 스나이퍼 | 새 pair/pool 뒤 첫 창 Swap 클러스터 | 첫 N블록 / 첫 M초 카운트 |
| sniper 밀도 | 여러 주소가 짧은 시간에 매수 Transfer | unique buyers 임계값 |
| 유명인 meme 리듬 | 소셜 폭발 ↔ 온체인 첫 클러스터 정렬 | 오픈 카드 + 스파이크 색 블록 |
| 소리는 먼저 | PairCreated가 먼저 울리고 스파이크를 나중에 쌓는다 | 두 단 구독 |
스파이크 = 새 풀 착지 + 첫 구간 체결 밀도가 임계값을 넘음. 이 글은 잡는 법과 알림 내는 법만 가르친다.
2. 듣기: PairCreated / PoolCreated + 첫 N블록 밀도
같은 퍼블릭 WSS 한 줄: 먼저 Factory 오픈 logs를 구독하고 히트한 pair/pool에 Swap / Transfer를 겹친다; newHeads로 첫 창 카운터를 진행.
Step A · V2 PairCreated 구독
{
"jsonrpc": "2.0", "id": 1, "method": "eth_subscribe",
"params": ["logs", {
"address": "${V2_FACTORY}",
"topics": ["0x0d3648bd0f6ba80134a33ba9275ac585d9d315f0ad8355cddefde31afa28d0e9"]
}]
}
Step B · V3 PoolCreated 구독(병렬 가능)
{
"jsonrpc": "2.0", "id": 2, "method": "eth_subscribe",
"params": ["logs", {
"address": "${V3_FACTORY}",
"topics": ["0x783cca1c0412dd0d695e784568c96da2e9c22ff989357a2e8b1d9b2b4e6b7118"]
}]
}
V2_FACTORY/V3_FACTORY는 로컬 env(Base 공식 Factory 주소표).token0/token1/pair또는pool디코드 →launchState에 쓰고 첫 창 타이머 시작.
Step C · 첫 창 밀도(Swap / Transfer)
| 지표 | 세는 법 | 용도 |
|---|---|---|
| Swap count | 첫 N블록 / 첫 M초 Swap logs | 스파이크 강도 |
| Unique buyers | Transfer / Swap from/to 중복 제거 | sniper 밀도 |
| Early volume hint | amountIn / amountOut 거친 합 | 두 번째 색 블록 |
좁게 듣는다: pair/pool 주소를 두 번째 logs 구독에 넣는다; 전체 체인 Swap 스캔은 쿼터를 빨리 먹는다. 첫 창은 좁은 address가 싸다.
3. StackBlitz / 브라우저: BlockReq Base 퍼블릭 logs + newHeads
브라우저는 Base 퍼블릭 WSS에 연결하고 Factory + topic0을 넣어 Start: 새 풀 카드가 나온 뒤 같은 창에 newHeads로 카운트를 진행. StackBlitz / demos1용 컴팩트 UI:
WSS → wss://base-rpc.blockreq.com/v1/rpc/public
HTTPS→ https://base-rpc.blockreq.com/v1/rpc/public
env → V2_FACTORY · V3_FACTORY · SPIKE_WINDOW_SEC · SWAP_THRESHOLD · BUYER_THRESHOLD
경로 예: /demos1/base-launch-spike-listen/ko/ · /demos1/base-launch-spike-listen/en/. keyed로 바꾸기: WSS 끝 public → {API_KEY}.
실행 쿼터: blockreq.com 가입하면 매달 3M 요청 무료(퍼블릭 엔드포인트 직결).
4. 알림 레시피: 새 풀 → M초 Swap / unique buyers →「스파이크」
on PairCreated|PoolCreated:
start window(M sec or N blocks)
count swaps, uniqueBuyers
if swaps >= SWAP_THRESHOLD and uniqueBuyers >= BUYER_THRESHOLD:
emit spikeCard
스파이크 카드 필드
{ pairOrPool, token0, token1, factoryTx, windowSec, swapCount, uniqueBuyers, earlyVolume?, ts }
같은 pair / pool로 중복 제거; 임계값은 demo에서 조절 가능(예 M=60, swaps≥8, buyers≥5). 선택으로 newHeads를 더해 블록 높이를 맞춘다:
{
"jsonrpc": "2.0", "id": 3, "method": "eth_subscribe",
"params": ["newHeads"]
}
끊긴 뒤 재연결하고 재 subscribe; 빈 창은 HTTPS eth_getLogs로 Factory + pair 주소를 블록 구간 백필. POST → https://base-rpc.blockreq.com/v1/rpc/public.
5. 요약 + CTA
- 새 풀 스나이퍼 = 새 풀 착지 + 첫 구간 Swap / unique-buyer 밀도가 임계값을 넘음.
- 레시피: V2/V3 Factory logs → 첫 창에서 Swap/Transfer를 좁게 듣기 → 임계값 히트면 스파이크 카드.
- 바로 실행: 브라우저 / StackBlitz를 BlockReq Base 퍼블릭 WSS +
newHeads에 건다. - 실행: 공개 엔드포인트 + blockreq.com 가입하면 매달 3M 요청 무료.
기술 정면: 신호를 듣고 알림 카드를 민다. 포지션 판단은 자기 전략 층에. 다음: Factory / 임계값 JSON 고정 → 스파이크 카드를 Webhook으로 → OpenLaunch 한 건 오픈 오픈 카드와 겹쳐 대조. 문서 · 요금 · 가입.