Обзор
Hyperliquid Whale Tracker наблюдает за адресами кошельков (китами) и реагирует, когда эти кошельки открывают или закрывают позиции. Поддерживаются два основных режима:
- Режим только сигналов — отправка событий китов на ваши каналы уведомлений (Telegram, Discord, WhatsApp и др.).
- Режим зеркалирования — автоматическое размещение зеркальных ордеров и их закрытие, когда кит закрывает свою позицию.
Функция полностью настраивается через tradesettings.yaml и может быть включена для каждой инстанции бота. По умолчанию отключена.
Настройка
Добавьте или обновите секцию HyperLiquidWhaleTracker в вашем tradesettings.yaml (или appsettings.yaml, если используете централизованные настройки). Пример:
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) для заданных адресов.
- Обнаружение событий: При обнаружении нового события открытия/закрытия ордера бот проверяет фильтры (мин. сумма, тип действия, cooldown).
- Решение: Если
place_order = true, бот создаёт запрос на зеркальный ордер с использованием настроек биржи, включая плечо и размер. Если false — формируется только сообщение для broadcast. - Исполнение: Пытается разместить ордер с учётом проскальзывания и баланса. Если
follow_partial_fills = true, бот корректирует количество зеркальных ордеров пропорционально. - Жизненный цикл: Бот отслеживает статус зеркального ордера и, если
close_on_whale_close = true, закрывает его при закрытии позиции китом. - Логирование и уведомления: Все события и действия логируются. Уведомления отправляются, если настроено.
Требования и разрешения
- Рабочий экземпляр MagicTradeBot с действующей лицензией и настроенным
tradesettings.yaml. - API-ключи биржи с разрешением на торговлю (если включено
place_order). Для действий с кошельками Hyperliquid может потребоваться приватный ключ — никогда не храните приватные ключи в открытом виде, используйте переменные окружения. - Стабильное подключение к интернету и корректные лимиты запросов в
appsettings.yaml, чтобы избежать блокировок API.
Безопасность
- Никогда не храните приватные ключи или секреты API в репозитории. Используйте переменные окружения или системное управление секретами.
- Ограничивайте права API только необходимым функционалом (торговля, лучше без выводов).
- Тщательно тестируйте в
DemoModeперед включением зеркальных ордеров в реале. - Устанавливайте консервативные значения по умолчанию:
max_open_per_whale,slippage_tolerance_percent,min_whale_order_value. - Включите логирование и уведомления (Sentry, PagerDuty) для оповещения о сбоях или неожиданных действиях.
Примеры уведомлений и broadcast
Когда broadcast_signals = true, бот отправляет отформатированное сообщение. Примеры шаблонов:
Telegram / Discord (текст)
[Hyperliquid Whale] НОВЫЙ ОРДЕР
Кит: 0x2aB3...Ff12
Действие: ПОКУПКА (Long)
Символ: BTCUSDT
Размер: 0.5 BTC (~25000 USDT)
Плечо: 3x
Время: 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"
}
Тестирование и Demo Mode
- Всегда тестируйте с
DemoMode: trueили на тестовых сетях биржи. - Установите
place_order: falseдля проверки обнаружения событий и форматирования уведомлений без реальных сделок. - Используйте небольшие
order_amountдля живого тестирования и отслеживайте логи вcompletedorders.yamlи терминале.
Рекомендации по эксплуатации
- Используйте max_open_per_whale, чтобы не быть чрезмерно подверженным последовательности сделок одного кита.
- Включите cooldown_seconds, чтобы снизить дублирование при разделении ордеров китом на множество мелких.
- Предпочитайте только сигналы в условиях высокой волатильности или при невозможности обеспечить быструю обработку и контроль проскальзывания.
- При зеркалировании с плечом убедитесь в наличии маржи и fail-safe механизмов (глобальные лимиты закрытия).
- Логируйте каждое входящее событие и зеркальные действия для аудита и бэктестинга.
Логирование и мониторинг
Рекомендуется включить логирование/мониторинг в appsettings.yaml или конфиге бота:
- Логи терминала для оперативного устранения проблем.
completedorders.yaml— сохранение завершённых зеркальных сделок для анализа и PnL.- Опциональное удалённое логирование: Sentry, Loki, LogDNA, DataDog для уведомлений и аудита.
- Метрики Prometheus: количество открытых позиций, количество зеркальных ордеров, ошибки.
Обработка ошибок и повторные попытки
- При ошибке размещения ордера бот повторяет до 3 раз с экспоненциальной задержкой (конфигурируемо).
- Если проскальзывание превышает
slippage_tolerance_percent, ордер отменяется и генерируется предупреждение. - Если зеркальный ордер не может быть размещён из-за недостатка средств, бот отправляет предупреждение и пропускает зеркалирование.
Ограничения и риски
- Следование за кошельками не гарантирует прибыль — киты могут быть маркетмейкерами, инсайдерами или манипулировать рынком.
- Зеркалирование ликвидаций или высокоплечевых сделок китов может увеличить потери.
- Задержка исполнения и проскальзывание могут привести к отличию результата от сделки кита.
- Соблюдайте лимиты API бирж — отслеживание множества китов увеличивает нагрузку на API и ресурсы.
FAQ
В: Можно ли отслеживать любой адрес кошелька?
О: Да — добавьте любой публичный адрес кошелька в tracking_addresses. Бот попытается обнаружить события открытия/закрытия сделок для этого адреса.
В: Будет ли бот точно повторять размеры позиций?
О: Не обязательно. Бот использует order_amount как размер зеркальной сделки (или зеркалит частичные исполнения пропорционально, если включено). Можно реализовать процентное управление капиталом в расширенных настройках.
В: Что если кит разделяет ордер на множество мелких?
О: Используйте cooldown_seconds и follow_partial_fills, чтобы контролировать зеркалирование и избежать избыточного риска.
Чек-лист для начала
- Включите трекер:
is_enabled: trueвtradesettings.yaml. - Добавьте адреса китов в
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 или ознакомьтесь с полной документацией по конфигурации.