개요
Hyperliquid Whale Tracker는 지갑 주소(고래)를 감시하며 해당 지갑이 포지션을 열거나 닫을 때 반응합니다. 주요 두 가지 모드를 지원합니다:
- 신호 전용 모드 — 고래 이벤트를 알림 채널(Telegram, Discord, WhatsApp 등)로 브로드캐스트합니다.
- 미러 모드 — 자동으로 미러링된 주문을 실행하고 고래가 포지션을 청산할 때 이를 닫습니다.
이 기능은 tradesettings.yaml에서 완전히 설정 가능하며, 봇 인스턴스별로 활성화할 수 있습니다. 기본적으로 비활성화되어 있습니다.
설정
tradesettings.yaml (또는 설정을 중앙화한 경우 appsettings.yaml 변형) 내의 HyperLiquidWhaleTracker 섹션을 추가하거나 업데이트하세요. 예시:
HyperLiquidWhaleTracker:
is_enabled: false
tracking_addresses:
- "0x2aB3...Ff12" # 하나 이상의 고래 지갑 주소 추가
- "0x1cD4...Aa77"
place_order: false # true = 미러링된 주문 자동 실행, false = 신호 전용
order_amount: 100.0 # 미러링된 거래당 기준 통화 금액
leverage: 3 # 미러링된 거래에 사용할 레버리지(해당되는 경우)
broadcast_signals: true # true = 고래가 거래를 열거나 닫을 때 알림 전송
max_open_per_whale: 2 # 추적된 고래당 최대 오픈 미러링 거래 수(안전)
slippage_tolerance_percent: 0.5 # 미러링된 주문 실행 시 최대 허용 슬리피지
follow_partial_fills: true # true일 경우, 봇이 부분 체결을 비례적으로 미러링
close_on_whale_close: true # 고래가 포지션을 닫을 때 미러링된 주문 닫기
include_liquidations: false # true일 경우, 청산 미러링(권장하지 않음)
only_follow_buy: false # true일 경우, 매수만 추적
only_follow_sell: false # true일 경우, 매도만 추적
min_whale_order_value: 50.0 # 추적/미러링을 위한 최소 주문 가치(기준 통화)
cooldown_seconds: 30 # 동일 고래에 대한 이벤트 처리 간 대기 시간(초)
필드 설명
- is_enabled — 고래 트래커 활성화/비활성화(기본값:
false). - tracking_addresses — 추적할 지갑 주소 목록. 제한 없음; 원하는 만큼 추가 가능하지만 리소스 사용에 주의하세요.
- place_order —
true일 경우, 봇이 미러링된 주문을 자동으로 실행합니다.false일 경우, 신호만 브로드캐스트합니다. - order_amount — 거래당 기준 통화(예: USDT)로 미러링된 주문의 크기. 프로덕션 환경에서는 자금 관리 크기 조정을 고려하세요.
- leverage — 미러링된 선물 포지션 개시를 위한 레버리지(거래소가 레버리지를 지원하는 경우에만).
- broadcast_signals — 설정된 브로드캐스트 채널로 포맷된 메시지 전송.
- max_open_per_whale — 단일 고래에 대한 과도한 노출을 피하기 위한 안전 제한.
- slippage_tolerance_percent — 주문 실행 시 최대 허용 슬리피지.
- follow_partial_fills — 고래의 주문이 부분 체결될 경우, 봇이 동일한 체결 비율을 미러링.
- close_on_whale_close — 고래가 포지션을 닫을 때 미러링된 주문 닫기.
- include_liquidations — 극단적인 리스크를 이해한 경우에만 청산 미러링.
- only_follow_buy / only_follow_sell — 매수만 또는 매도만 추적하기 위한 필터.
- min_whale_order_value — 이 임계값 미만의 작은 고래 주문 무시.
- cooldown_seconds — 고래별 이벤트 처리 간격을 두어 이벤트 스팸 방지.
작동 방식 (기술적 흐름)
- 이벤트 소스: 봇은 설정된 주소에 대해 Hyperliquid 지갑 이벤트를 구독하거나 블록체인/API를 폴링합니다.
- 이벤트 감지: 새로운 주문 열기/닫기 이벤트가 감지되면, 봇은 필터(최소 가치, 액션 유형, 쿨다운)에 따라 이를 검증합니다.
- 결정:
place_order = true인 경우, 봇은 설정된 거래소 자격 증명을 사용해 레버리지 및 크기 규칙을 포함한 미러링 주문 요청을 생성합니다. false인 경우, 브로드캐스트 메시지만 생성합니다. - 실행: 슬리피지 허용 범위와 사용 가능한 잔액을 고려하여 주문을 실행하려고 시도합니다.
follow_partial_fills = true인 경우, 봇은 미러링된 주문 수량을 적절히 조정합니다. - 수명 주기: 봇은 미러링된 주문 상태를 모니터링하며,
close_on_whale_close = true인 경우 고래가 포지션을 닫을 때 미러링된 주문을 닫습니다. - 로깅 및 알림: 모든 이벤트와 액션은 로깅됩니다(로깅 및 모니터링 참조). 설정된 경우 알림이 브로드캐스트됩니다.
전제 조건 및 권한
- 유효한 라이선스와
tradesettings.yaml이 설정된 MagicTradeBot 인스턴스. place_order가 활성화된 경우 거래 권한이 있는 거래소 API 키. Hyperliquid 지갑 기반 작업에는 개인 키가 필요할 수 있음 — 개인 키를 절대 일반 텍스트로 저장하지 마세요(환경 변수 사용).- API 차단을 피하기 위해 안정적인 인터넷 연결과
appsettings.yaml에서 적절한 속도 제한 설정.
보안 고려 사항
- 개인 키 또는 API 비밀을 저장소 파일에 하드코딩하지 마세요. 환경 변수 또는 OS 수준의 비밀 관리 사용.
- API 키 권한을 필요한 최소한으로 제한(이상적으로 거래만, 출금 불가).
- 라이브 미러링 주문을 활성화하기 전에
DemoMode에서 철저히 테스트. - 보수적인 기본값 설정:
max_open_per_whale,slippage_tolerance_percent,min_whale_order_value. - 실행 오류 또는 예기치 않은 동작을 알리기 위해 로깅 및 인시던트 알림(Sentry, PagerDuty) 활성화.
알림 및 브로드캐스트 예시
broadcast_signals가 true일 때, 봇은 포맷된 메시지를 전송합니다. 아래는 예시 템플릿입니다:
Telegram / Discord (텍스트)
[Hyperliquid Whale] 신규 주문
고래: 0x2aB3...Ff12
액션: 매수 (롱)
심볼: BTCUSDT
크기: 0.5 BTC (~25000 USDT)
레버리지: 3배
시간: 2025-10-16T12:34:56Z
미러링: 예 (주문 ID: M-123456) # 또는 place_order=false인 경우 "미러링: 아니오"
WhatsApp / Webhook (JSON 페이로드)
{
"type": "hyperliquid.whale.event",
"whale_address": "0x2aB3...Ff12",
"action": "open",
"side": "buy",
"symbol": "BTCUSDT",
"size": 0.5,
"notional": 25000,
"leverage": 3,
"mirrored": true,
"mirrored_order_id": "M-123456",
"timestamp": "2025-10-16T12:34:56Z"
}
테스트 및 데모 모드
- 항상
DemoMode: true또는 거래소 테스트넷을 먼저 사용해 테스트하세요. place_order: false로 설정하여 거래 실행 없이 이벤트 감지 및 브로드캐스트 형식을 확인하세요.- 라이브 테스트 중 작은
order_amount를 사용하고,completedorders.yaml및 터미널 출력에서 로그를 모니터링하세요.
운영 모범 사례
- max_open_per_whale를 사용하여 단일 고래의 연속적인 거래에 과도하게 노출되지 않도록 하세요.
- 고래가 주문을 여러 마이크로 주문으로 분할할 경우 중복 처리를 줄이기 위해 cooldown_seconds 활성화.
- 변동성이 큰 시장 상황이나 빠른 실행/슬리피지 제어가 불가능한 경우 신호 전용 모드를 선호하세요.
- 레버리지로 미러링할 경우, 마진과 안전 장치(글로벌 강제 청산 임계값)를 확보하세요.
- 감사 가능성과 백테스팅을 위해 모든 수신 이벤트와 미러링된 액션을 로깅하세요.
로깅 및 모니터링
appsettings.yaml 또는 봇 설정에서 활성화할 권장 로깅/모니터링:
- 실시간 문제 해결을 위한 터미널 로그.
completedorders.yaml— 백테스트 및 손익을 위한 완료된 미러링 거래 지속 저장.- 선택적 원격 로깅: Sentry, Loki, LogDNA, DataDog를 통한 알림 및 이력 감사 로그.
- 오픈 포지션 수, 미러링된 주문 수, 오류율에 대한 Prometheus 메트릭.
오류 처리 및 재시도
- 주문 실행 실패 시, 봇은 최대 3회까지 지수 백오프(설정 가능)로 재시도합니다.
- 슬리피지가
slippage_tolerance_percent를 초과하면 주문이 취소되고 경고가 발생합니다. - 잔액 부족으로 미러링된 주문을 실행할 수 없는 경우, 봇은 경고를 브로드캐스트하고 미러링을 건너뜁니다.
제한 사항 및 리스크
- 지갑 추적은 수익을 보장하지 않습니다 — 고래는 마켓 메이커, 내부자 또는 단기 조작을 수행할 수 있습니다.
- 청산 또는 고레버리지 고래 움직임을 미러링하면 손실이 증폭될 수 있습니다.
- 실행 지연과 슬리피지는 고래와 다른 거래 결과를 초래할 수 있습니다.
- 거래소 API 속도 제한을 준수하세요 — 많은 고래를 추적하면 API 호출과 리소스 사용이 증가합니다.
FAQ
Q: 모든 지갑 주소를 추적할 수 있나요?
A: 네 — tracking_addresses에 공개 지갑 주소를 추가하면 됩니다. 봇은 해당 주소와 관련된 열기/닫기 이벤트를 감지하려고 시도합니다.
Q: 봇이 포지션 크기를 정확히 복제하나요?
A: 반드시 그렇지는 않습니다. 봇은 order_amount를 미러링된 거래 크기로 사용하거나(활성화된 경우 부분 체결을 비례적으로 미러링), 고급 자금 관리 설정에서 퍼센트 기반 크기 조정을 구현할 수 있습니다.
Q: 고래가 주문을 여러 마이크로 주문으로 분할하면 어떻게 되나요?
A: cooldown_seconds와 follow_partial_fills를 사용하여 분할 주문의 미러링 방식을 제어하고 과도한 노출을 방지하세요.
시작 체크리스트
- 트래커 활성화:
tradesettings.yaml에서is_enabled: true로 설정. tracking_addresses에 고래 주소 추가.- 초기에
place_order: false로 설정하여 이벤트 및 알림 확인. - Telegram/Discord/WhatsApp으로 브로드캐스트가 전달되는지 확인.
- 확신이 생기면
place_order: true로 전환하고, 라이브 검증이 완료될 때까지DemoMode: true유지. - 주문 실행 오류, 슬리피지, 잔액 부족 이벤트에 대해 로그를 모니터링하고 알림 설정.
완전한 예시 스니펫 (tradesettings.yaml에 복사)
HyperLiquidWhaleTracker:
is_enabled: true
tracking_addresses:
- "0x2aB3...Ff12"
- "0x1cD4...Aa77"
place_order: true
order_amount: 150.0
leverage: 3
broadcast_signals: true
max_open_per_whale: 2
slippage_tolerance_percent: 0.5
follow_partial_fills: true
close_on_whale_close: true
include_liquidations: false
only_follow_buy: false
only_follow_sell: false
min_whale_order_value: 100.0
cooldown_seconds: 60
법적 및 윤리적 고지
공개 지갑 활동을 추적하고 미러링하는 것은 기술적으로 가능하지만, 지역 법률, 거래소 약관, 윤리적 거래 관행을 준수해야 합니다. MagicTradeBot은 도구를 제공하며, 이를 법적이고 책임감 있게 사용하는 것은 사용자의 책임입니다.
지원 및 문제 해결
문제가 발생할 경우:
- 터미널 로그와
completedorders.yaml에서 오류 확인. - API 키와 권한 확인(거래 허용, 출금 비활성화).
- 비밀에 사용된 경우 환경 변수가 파일 설정을 오버라이드하는지 확인.
- MagicTradeBot 대시보드를 통해 지원에 연락하거나 전체 설정 문서를 참조하세요.