들어가며
암호화폐 시장에서 고래(Whale) 의 움직임은 가격에 직접적인 영향을 미칩니다. 하지만 수백만 개의 지갑 주소 중에서 어떤 지갑이 실제로 의미 있는 "스마트 머니"인지 판별하는 것은 쉽지 않습니다.
이 글에서는 LangQuant가 온체인 데이터를 활용하여 고래 지갑을 자동으로 클러스터링하고, 그들의 행동 패턴을 실시간으로 분석하는 파이프라인을 소개합니다.
문제 정의
단순히 잔고가 큰 지갑을 고래로 분류하는 것은 한계가 있습니다:
- 거래소 콜드 월렛: 잔고는 크지만 개인 투자자가 아님
- 스마트 컨트랙트: DeFi 프로토콜의 TVL이 포함됨
- 더스트 지갑: 에어드롭 등으로 소량 보유한 수백만 개의 비활성 지갑
우리가 찾고자 하는 것은 의도적인 매매 패턴을 보이는 지갑입니다.
접근 방식
1단계: 피처 엔지니어링
각 지갑에 대해 다음 피처를 추출합니다:
def extract_wallet_features(address: str, txns: list[Transaction]) -> WalletFeature:
return WalletFeature(
address=address,
avg_tx_size=np.mean([tx.value for tx in txns]),
tx_frequency=len(txns) / time_span_days(txns),
unique_counterparties=len(set(tx.to_addr for tx in txns)),
avg_hold_duration=calculate_avg_hold(txns),
profit_ratio=calculate_realized_pnl(txns),
dex_interaction_count=count_dex_txns(txns),
)2단계: HDBSCAN 클러스터링
전통적인 K-Means 대신 HDBSCAN을 사용합니다. 클러스터 수를 미리 정하지 않아도 되고, 노이즈 포인트(거래소, 컨트랙트 등)를 자연스럽게 분리할 수 있기 때문입니다.
import hdbscan
clusterer = hdbscan.HDBSCAN(
min_cluster_size=50,
min_samples=10,
metric='euclidean',
cluster_selection_method='eom',
)
labels = clusterer.fit_predict(scaled_features)3단계: 클러스터 프로파일링
클러스터링 결과에서 각 그룹의 특성을 분석합니다:
| 클러스터 | 특성 | 행동 패턴 |
|---|---|---|
| A | 고빈도 대량 거래 | 마켓 메이커 |
| B | 저빈도 장기 보유 | 장기 축적형 고래 |
| C | DeFi 상호작용 多 | DeFi 고래 |
| D | 거래소 입출금 위주 | 단기 트레이더 |
실시간 모니터링 파이프라인
클러스터링된 고래 지갑들의 움직임을 실시간으로 추적합니다:
async def monitor_whale_activity(wallet_cluster: list[str]):
"""ARQ worker에서 실행되는 실시간 모니터링 태스크"""
async for tx in stream_transactions(wallet_cluster):
signal = analyze_transaction(tx)
if signal.strength > THRESHOLD:
await notify_telegram(signal)
await store_signal(signal)이 파이프라인은 ARQ 워커에서 비동기로 실행되며, 유의미한 시그널이 감지되면 텔레그램으로 즉시 알림을 발송합니다.
결과 및 한계
성과: 클러스터 B(장기 축적형)의 매수 시그널은 이후 30일 수익률과 0.67의 상관관계를 보였습니다. 이는 단순 잔고 기반 추적(0.23) 대비 유의미한 개선입니다.
하지만 한계도 존재합니다:
- 프라이버시 기술의 발전: Tornado Cash 등을 통한 자금 세탁은 추적을 어렵게 만듦
- 멀티 월렛 전략: 하나의 주체가 수백 개의 지갑을 운영하는 경우 클러스터링 정확도 저하
- 레이블 데이터 부족: 비지도학습 특성상 정확한 검증이 어려움
다음 단계
현재 그래프 뉴럴 네트워크(GNN) 를 활용하여 지갑 간 트랜잭션 그래프에서 더 정교한 패턴을 학습하는 연구를 진행 중입니다. 이 내용은 다음 글에서 다루겠습니다.
이 글에서 소개된 기술은 LangQuant 플랫폼의 고래 추적 기능에 적용되어 있습니다.