# Введение: невидимые хищники блокчейна
Децентрализованные финансы (DeFi) изменили наше представление о торговле, но привнесли новые риски. Каждый раз, когда вы совершаете своп на Uniswap или Raydium, в мемпуле за вашей транзакцией следят автоматизированные алгоритмы.
MEV боты и сэндвич атаки — одна из самых распространенных скрытых издержек для обычных трейдеров. В этой статье мы детально разберем физику этого процесса, разберем математику проскальзывания и расскажем, как навсегда закрыть лазейку для ботов.
MEV (Maximal Extractable Value) — это прибыль, которую валидатор или специализированный робот-«искатель» (searcher) может извлечь, произвольно меняя порядок транзакций в блоке перед их финальным подтверждением.
# Как устроена классическая сэндвич-атака
Сэндвич-атака получила свое название из-за структуры: транзакция обычной жертвы оказывается «зажата» между двумя ордерами бота — покупкой спереди и продажей сзади.
Анатомия атаки: 3 шага бота
- Сканирование мемпула (Mempool Sniffing): Бот постоянно мониторит мемпул (очередь неподтвержденных транзакций) блокчейна Solana или Ethereum. Он ищет крупные ордера на покупку токенов на DEX (Decentralized Exchanges).
- Фронтраннинг (Frontrunning): Обнаружив крупную сделку, бот отправляет собственную транзакцию на покупку того же токена, но предлагает валидаторам повышенную плату за приоритет (gas fee в Ethereum или Jito tip в Solana). Это гарантирует, что сделка бота выполнится раньше вашей.
- Бэктраннинг (Backrunning): Вы покупаете токен по завышенной цене (ваша транзакция исполняется второй). Бот мгновенно отправляет третью транзакцию — на продажу своих токенов сразу после вашей, фиксируя прибыль в базовом активе (USDT/SOL/ETH).
Схематично это выглядит так:
# Математика проскальзывания и формула CPMM
Все децентрализованные биржи работают на механике постоянного продукта (Constant Product Market Maker):
Где:
- x — количество резервов базового токена (например, SOL).
- y — количество резервов котируемого токена (например, BONK).
- k — постоянная константа пула ликвидности.
Когда вы покупаете актив на DEX, вы сдвигаете баланс пула, повышая цену покупки. Максимальное изменение цены, которое вы готовы принять, называется допуском проскальзывания (Slippage Tolerance).
Пример расчета доходности бота:
Предположим, пул ликвидности BONK/USDT имеет константу k = 10,000,000,000. Жертва отправляет ордер на покупку BONK на сумму $10,000$ USDT с проскальзыванием в 2%.
# Алгоритм расчета сэндвич-атаки
def calculate_sandwich_profit(pool_usdt, pool_token, victim_usdt, victim_slippage):
k = pool_usdt * pool_token
# 1. Бот определяет максимальное проскальзывание жертвы
max_victim_price = (pool_usdt / pool_token) * (1 + victim_slippage)
# 2. Бот рассчитывает объем своего фронтран-ордера
# с целью поднять цену в пуле ровно до границы проскальзывания жертвы
bot_usdt = victim_usdt * 0.85 # Упрощенная симуляция оптимальной доли
# Фронтран покупка бота
new_pool_usdt = pool_usdt + bot_usdt
new_pool_token = k / new_pool_usdt
bot_tokens_bought = pool_token - new_pool_token
# Покупка жертвы
pool_usdt_after_bot = new_pool_usdt
pool_token_after_bot = new_pool_token
new_pool_usdt_2 = pool_usdt_after_bot + victim_usdt
new_pool_token_2 = k / new_pool_usdt_2
victim_tokens_bought = pool_token_after_bot - new_pool_token_2
# Бэктран продажа бота
pool_usdt_final = new_pool_usdt_2
pool_token_final = new_pool_token_2
bot_sell_usdt = pool_usdt_final - (k / (pool_token_final + bot_tokens_bought))
profit = bot_sell_usdt - bot_usdt
return profit
Если проскальзывание жертвы установлено на высоком уровне (2-5%), бот получает огромную маржу для безрискового арбитража.
# Как защитить свой капитал от MEV-ботов
Полностью исключить интерес MEV-ботов к вашим транзакциям можно с помощью соблюдения простых правил кибербезопасности в DeFi:
1. Используйте приватные RPC-узлы (Private RPC Endpoints)
Обычные публичные RPC отправляют вашу транзакцию напрямую в публичный мемпул. Приватные RPC (такие как Flashbots Protect для Ethereum или Jito Block для Solana) направляют транзакции валидаторам в обход мемпула, делая их невидимыми для снифферов ботов.2. Снижайте допуск проскальзывания (Slippage Tolerance)
Никогда не оставляйте автоматические настройки проскальзывания в 1%-3% на крупных сделках.- Устанавливайте проскальзывание вручную в диапазоне 0.1%-0.5%.
- Если транзакция не проходит из-за волатильности, лучше разбить сделку на несколько более мелких частей.
3. Торгуйте через агрегаторы ликвидности
Сервисы вроде 1inch (Ethereum) или Jupiter (Solana) разбивают ваш ордер по разным пулам ликвидности, уменьшая ценовое влияние (Price Impact) на каждом отдельном пуле, что делает сэндвич-атаку экономически невыгодной для ботов.# Сравнение способов защиты от MEV
| Инструмент | Сети | Как защищает | Особенности |
|---|---|---|---|
| Flashbots Protect RPC | Ethereum и ряд L2 | Отправляет транзакцию строителям блоков в обход публичного мемпула | Неудачные транзакции не попадают в блок, газ за них не списывается |
| MEV Blocker | Ethereum | Приватная отправка + аукцион бэкрана | Часть заработанного на бэкране MEV возвращается пользователю |
| CoW Protocol, UniswapX, 1inch Fusion | Ethereum и L2 | Модель интентов: заявку исполняет солвер, а не вы напрямую | Нет газа за неудачные свопы, защита от сэндвичей встроена в механизм |
| Jito-бандлы и MEV-защита в агрегаторах | Solana | Приватная отправка и атомарное исполнение | Требуют чаевых валидатору; подробнее — в статье про MEV на Solana и Jito |
Подключить защищённый RPC в большинстве кошельков можно за минуту: в настройках сети замените адрес RPC на адрес Flashbots Protect или MEV Blocker. После этого все ваши свопы будут отправляться приватно.
Главное практическое правило: крупные свопы никогда не отправляйте через публичный мемпул, а допустимое проскальзывание задавайте минимально необходимым — именно его размер определяет, сколько может забрать сэндвич-бот.
# Использование воч-листов и риск-менеджмента для предотвращения потерь
Качественный трейдинг строится на контроле каждого шага. Перед покупкой волатильного токена на DEX:
- Добавьте его в свой Воч-лист, чтобы отслеживать динамику цены и объем торгов в реальном времени. Если по монете наблюдается аномальный всплеск объема при отсутствии новостей — в стакане могут работать MEV-роботы.
- Проверьте ключевые уровни сопротивления на графике TradingView через Торговый терминал. Покупать токен на пике локального импульса — значит подставляться под ботов на самом тонком рынке.
- Проведите расчет лота ордера через Калькулятор риска. Ограничивайте максимальный риск на сделку до 1-2% от депозита. Даже если вы станете жертвой сэндвич-атаки, ваши потери не повлияют на общую выживаемость депозита.
# Заключение
MEV боты и сэндвич атаки — это естественное следствие архитектуры децентрализованных блокчейнов. Понимание их работы позволяет защитить свой капитал от невидимого налога. Снижайте проскальзывание, торгуйте через приватные RPC-маршруты и всегда используйте профессиональный софт для подготовки сделок.