Когда я первый раз попытался обменять $500 USDC на ETH через Uniswap, транзакция съела 4% суммы. Не комиссия блокчейна — чистое проскальзывание (slippage), которое я не удосужился проверить. $20 потерял за 10 секунд невнимательности.

С тех пор я провёл через DEX больше тысячи обменов — на Uniswap, Curve, PancakeSwap, Balancer, SushiSwap. И вижу, как люди повторяют одни и те же ошибки: игнорируют настройки slippage, дают бесконечный approval непроверенным контрактам, меняют крупные суммы в мелких пулах. Каждая ошибка стоит денег.

В этом материале — 7 критических граблей при работе с децентрализованными биржами, на которые я наступал сам или видел у клиентов. Плюс конкретные инструкции, как их избежать. Если ты только начинаешь работать с DeFi — сохрани эту статью, она окупится уже на первой крупной сделке.

Ошибка #1: игнорировать настройки slippage (проскальзывания)

Slippage — это разница между ценой, которую ты видишь в интерфейсе биржи, и ценой, по которой реально проходит сделка. Почему она возникает? Потому что обмены на DEX происходят через пулы ликвидности (liquidity pools) — по сути, корзины с двумя токенами. Когда ты меняешь один токен на другой, соотношение токенов в корзине меняется, и цена смещается.

Чем больше твоя сделка относительно размера пула, тем сильнее проскальзывание.

Реальный кейс: как $10 000 превратились в $9 400

Клиент хотел обменять 10 000 USDC на BNB через PancakeSwap. Настройки slippage стояли на автомате — 0.5%. Сделка прошла, но он получил не $10 000 эквивалента в BNB, а $9 400. Проскальзывание съело 6% — потому что пул USDC/BNB был относительно небольшой, а сумма обмена крупная.

Что делать:

1. Всегда вручную ставь slippage перед обменом

Для стейблкоинов (USDT, USDC, BUSD, DAI): 0.05—0.1%
Для обычных токенов (ETH, BNB, MATIC): 0.1—0.5%
Для низколиквидных токенов: начинай с 0.5%, увеличивай только если транзакция не проходит

На Uniswap это шестерёнка справа вверху → Custom slippage tolerance.
На Curve — шестерёнка → Max slippage.
На PancakeSwap — шестерёнка → Slippage tolerance.

2. Проверяй Price Impact перед крупными обменами

Многие DEX показывают Price Impact прямо в интерфейсе обмена — это процент, на который твоя сделка двигает цену в пуле.

Если видишь Price Impact > 1% — это сигнал: либо уменьшай сумму обмена, либо раздели сделку на несколько частей с интервалом 10—15 минут.

Пример из моей практики: менял 350 000 USDC на USDT через Curve. При попытке обменять всю сумму сразу Price Impact показывал 0.15% — это $525 потерь. Разделил на три транзакции по 120 000 — проскальзывание на каждой было ≤0.05%, итоговые потери ~$180 вместо $525.

3. Используй агрегаторы для крупных обменов

Если сумма обмена $10 000+, используй агрегаторы вроде 1inch или Matcha. Они автоматически разбивают сделку на несколько DEX и находят маршрут с минимальным проскальзыванием.

Таблица: сравнение slippage на разных DEX для обмена 100 000 USDC → USDT (на момент написания статьи):

DEX Slippage Price Impact Итоговые потери
Uniswap V3 (Arbitrum) 0.05% 0.08% ~$80
Curve (Ethereum) 0.01% 0.02% ~$20
PancakeSwap (BSC) 0.12% 0.15% ~$150
Balancer (Arbitrum) 0.06% 0.09% ~$90

Curve выигрывает для обменов стейблкоинов — потому что изначально создавалась для пар с привязанными активами (USDT/USDC, ETH/stETH).

Ошибка #2: давать бесконечный approval непроверенным контрактам

Когда ты первый раз меняешь токен на DEX, биржа просит approval (разрешение) — право списывать этот токен с твоего кошелька. По умолчанию многие DEX просят бесконечный approval: смарт-контракт может списать хоть весь баланс токена.

Для топовых DEX (Uniswap, Curve, PancakeSwap, SushiSwap) это не проблема — они проверены годами и аудитами. Но если ты взаимодействуешь с новым или малоизвестным протоколом — бесконечный approval открывает дверь для кражи средств.

Реальный кейс: как потерял $1 200 из-за approval

Не я, но знакомый трейдер. Попробовал новый DEX на Base (L2-сеть от Coinbase), дал бесконечный approval для USDC. Через две недели контракт биржи был взломан, хакер откачал все токены, на которые у контракта были approval — включая его $1 200 USDC.

Биржу закрыли, деньги никто не вернул.

Что делать:

1. Для топовых DEX давай бесконечный approval

Uniswap, Curve, Balancer, PancakeSwap, SushiSwap — проверенные протоколы с многомиллионным TVL. За 5+ лет работы не было серьёзных эксплойтов. Для них можно смело выбирать "Approve unlimited" или "Max" — это удобнее, не придётся каждый раз тратить газ на новый approval.

2. Для новых/малоизвестных DEX указывай точную сумму

Если TVL протокола < $10 млн, или он появился меньше года назад — вручную указывай approval только на сумму текущего обмена.

На Uniswap: при запросе approval выбираешь Custom → вводишь сумму обмена.
На SushiSwap: галочка "Approve exact amount" вместо "Approve unlimited".

3. Периодически отзывай старые approval

Используй Revoke.cash — подключаешь кошелёк, видишь все активные approval, можешь отозвать ненужные.

Я делаю это раз в квартал: если за 3 месяца ни разу не пользовался протоколом — убираю approval. Потрачу $0.5 газа на отзыв сейчас, сэкономлю потенциальные тысячи при взломе.

Ошибка #3: не проверять маршрут обмена (swap route)

Когда ты меняешь, например, USDC на MATIC, DEX не всегда меняет напрямую USDC → MATIC. Часто сделка проходит через промежуточный токен: USDC → WETH → MATIC. Это называется маршрут обмена (swap route).

Почему это важно? Потому что каждый «прыжок» в маршруте — это комиссия протокола (обычно 0.3%) + дополнительное проскальзывание.

Как проверить маршрут

На Uniswap: нажми на стрелку справа от кнопки Swap → увидишь Route.
На Balancer: маршрут показывается автоматически под суммой обмена.
На 1inch: разверни детали сделки — там будет полный путь с процентами через каждый пул.

Пример из практики: менял 5 ETH на USDC через Uniswap V3 на Arbitrum. Первый вариант маршрута: ETH → USDC напрямую, комиссия 0.05%, slippage 0.08%.
Второй вариант (если выбрать другой пул): ETH → WBTC → USDC, суммарная комиссия 0.6%, slippage 0.15%.

Разница на сделке в $10 000: ~$50 против ~$175. Один клик — $125 экономии.

Что делать:

Перед крупным обменом ($1 000+) всегда открывай детали маршрута. Если видишь больше двух прыжков — попробуй агрегатор (1inch, Matcha), они автоматически найдут оптимальный путь.

Ошибка #4: менять крупные суммы в мелких пулах

Размер пула ликвидности (liquidity pool) напрямую влияет на slippage. Если пул USDC/ETH на Uniswap содержит $50 млн ликвидности, обмен на $10 000 пройдёт с минимальным проскальзыванием. Но если пул содержит $500 000, та же сделка съест 2—3% суммы.

Как проверить размер пула

На Uniswap: перейди на вкладку Pool → найди пару токенов → увидишь TVL (Total Value Locked).
На Curve: открой конкретный пул (например, 3pool для USDT/USDC/DAI) → в шапке показан размер.
На DefiLlama: во вкладке DEXs → выбери конкретный DEX → увидишь разбивку ликвидности по парам.

Практическое правило:

  • Обмен до $1 000: любой пул с TVL > $100 000 подойдёт
  • Обмен $1 000—$10 000: ищи пулы с TVL > $5 млн
  • Обмен $10 000—$100 000: только пулы с TVL > $50 млн
  • Обмен $100 000+: используй агрегаторы, они распределят сделку по нескольким пулам

Реальный кейс: клиент хотел обменять 50 000 USDT на малоизвестный токен проекта. Пул USDT/TOKEN на PancakeSwap содержал всего $200 000 ликвидности. Price Impact показывал 18% — это значит, он получил бы токенов на $41 000 вместо $50 000.

Решение: разбил сделку на 10 частей по $5 000 с интервалом 30 минут + использовал лимитные ордера через KyberSwap (они поддерживают limit orders на некоторых сетях). Итоговые потери — ~3% вместо 18%.

Ошибка #5: путать сети блокчейна

Одна из самых болезненных ошибок новичков: отправить токены в неправильную сеть.

Пример: у тебя USDC на Arbitrum, но ты подключаешь кошелёк к Uniswap на Ethereum mainnet и пытаешься обменять. Результат: баланс показывает $0, транзакция не проходит.

Хуже: если отправить USDC из Arbitrum на адрес Ethereum через обычный transfer (не через bridge) — токены потеряются навсегда.

Как избежать:

1. Всегда проверяй соответствие сети в кошельке и на DEX

Перед каждым обменом:

  • Открой MetaMask → посмотри, какая сеть активна (вверху кошелька)
  • На сайте DEX проверь, какая сеть выбрана (обычно справа вверху или в футере)
  • Если не совпадают — переключи сеть в MetaMask или на DEX

2. Используй мультисетевые интерфейсы

Некоторые DEX автоматически предлагают переключить сеть при подключении кошелька:

  • SushiSwap поддерживает 20+ сетей с единым интерфейсом
  • 1inch работает на Ethereum, Arbitrum, Optimism, Polygon, BSC, Base
  • Curve поддерживает Ethereum, Arbitrum, Polygon, Optimism, Gnosis Chain

3. Для перевода между сетями используй bridge, не DEX

Если нужно перевести USDC из Arbitrum в Polygon:

  • НЕ делай это через обычный DEX
  • Используй официальный Arbitrum Bridge или агрегатор мостов типа Bungee

Некоторые DEX поддерживают кросс-чейн обмены (например, SushiSwap через функцию Cross-Chain Swap) — там алгоритм сам использует bridge под капотом. Но всегда проверяй комиссии: иногда прямой bridge + обмен на целевой сети дешевле, чем кросс-чейн своп.

Ошибка #6: игнорировать transaction deadline

Transaction deadline (дедлайн транзакции) — это время, через которое транзакция автоматически отменяется, если не прошла в блокчейн.

Зачем это нужно? Представь: ты ставишь обмен ETH → USDC по цене $2000 за ETH. Транзакция зависла в мемпуле (очередь неподтверждённых транзакций) на 30 минут. За это время цена ETH упала до $1950. Транзакция подтверждается — но ты получаешь USDC по старой цене $2000, теряя 2.5%.

С правильно установленным deadline транзакция отменилась бы через 10 минут, ты бы просто отправил новую по актуальной цене.

Где настроить:

На Uniswap: шестерёнка → Transaction deadline (по умолчанию 30 минут).
На PancakeSwap: шестерёнка → Transaction deadline (по умолчанию 20 минут).
На Curve: обычно фиксированный дедлайн 20 минут, не настраивается.

Мои рекомендации:

  • Для стейблкоинов: 10 минут достаточно
  • Для волатильных токенов (ETH, BTC, альткоины): 5 минут
  • Если сеть перегружена (высокий газ): увеличь до 15—20 минут

Если транзакция не прошла за дедлайн — она автоматически откатится, газ потратишь только на попытку (обычно меньше, чем за успешную транзакцию).

Ошибка #7: не учитывать комиссии протокола

Почти все DEX берут комиссию с каждого обмена — обычно 0.05—0.3% от суммы сделки. Эта комиссия идёт поставщикам ликвидности (LP — liquidity providers), которые заблокировали токены в пулах.

Но размер комиссии отличается:

DEX Комиссия Особенности
Uniswap V3 0.01% / 0.05% / 0.3% / 1% Зависит от пула, большинство — 0.05% или 0.3%
Curve 0.04% Фиксированная на большинстве пулов
PancakeSwap 0.25% Фиксированная
Balancer 0.01—1% Устанавливает создатель пула
SushiSwap 0.3% Фиксированная

На мелких обменах ($100—$500) разница несущественна: 0.05% vs 0.3% — это $0.25 против $1.5.

Но на крупных сделках ($50 000+) это уже ощутимо:

  • 0.05% от $50 000 = $25
  • 0.3% от $50 000 = $150

Что делать:

Для обменов стейблкоинов используй Curve (0.04%) или Uniswap V3 с пулом 0.01%.
Для обменов других токенов: сравни комиссии через агрегатор 1inch — он покажет итоговую сумму с учётом всех комиссий.

Пример: менял 100 000 USDC на USDT.

Через Uniswap V3 (пул 0.01%): комиссия $10 + газ $5 = $15.
Через PancakeSwap (0.25%): комиссия $250 + газ $0.5 = $250.5.

Разница $235 — просто за выбор другого DEX. На Ethereum газ дороже, но комиссия протокола Uniswap ниже — итого выгоднее для крупных сумм.

Бонус: чек-лист перед обменом на DEX

Сохрани этот чек-лист — проверяй перед каждой крупной сделкой ($1 000+):

Перед обменом:

  1. ✅ Сеть в кошельке совпадает с сетью на DEX?
  2. ✅ Slippage установлен вручную (0.05—0.5%)?
  3. ✅ Transaction deadline 5—10 минут?
  4. ✅ Проверил Price Impact (должен быть < 1%)?
  5. ✅ Посмотрел маршрут обмена (меньше прыжков = меньше комиссий)?
  6. ✅ Размер пула ликвидности достаточный для твоей суммы?
  7. ✅ Комиссия протокола (0.01—0.3%) приемлема?
  8. ✅ Approval токена — точная сумма или только для проверенных DEX?

После обмена:

  1. ✅ Транзакция подтвердилась в блокчейне (посмотри в Arbiscan/BscScan/Etherscan)?
  2. ✅ Баланс токена обновился в кошельке?

Если хоть один пункт вызывает сомнения — не отправляй транзакцию. Лучше перепроверить дважды, чем потерять деньги.

Как я использую DEX в связке с автоматизацией

Последние полгода я автоматизировал часть работы с DEX через скрипты на Python + Web3.py. Настроил мониторинг больших проскальзываний: если Price Impact на моей обычной сделке вдруг превышает 0.5% — скрипт шлёт уведомление в Telegram, и я не лезу в обмен вслепую.

Также использую автоматические лимитные ордера через KyberSwap API для DCA-стратегий (Dollar Cost Averaging): скрипт каждую неделю меняет $500 USDC на ETH, если цена ниже скользящей средней за 30 дней. Экономит время + исключает эмоциональную торговлю.

Если интересна тема автоматизации DeFi — у меня есть подробный разбор в статье Как автоматизировать DeFi-стратегии через Python. Там полный гайд по настройке Web3.py, примеры кода для чтения балансов, отправки транзакций, работы с DEX API.

FAQ

Q1: Какой DEX самый дешёвый по комиссиям?

Curve — 0.04% на большинстве пулов, это минимум среди крупных DEX. Но Curve оптимизирован для обменов привязанных активов (стейблкоины, обёрнутые версии токенов типа ETH/wstETH). Для обычных пар (ETH/USDC) выгоднее Uniswap V3 с пулом 0.05%.

Q2: Что делать, если транзакция зависла?

Если транзакция в статусе Pending > 10 минут: открой MetaMask → кликни на транзакцию → Speed Up (ускорить) или Cancel. Speed Up отправит ту же транзакцию с повышенным газом, Cancel — отменит. Учти: за Cancel тоже платишь газ.

Q3: Можно ли вернуть деньги после неудачного обмена на DEX?

Нет. Если транзакция подтвердилась в блокчейне — откатить её невозможно. DEX работают через смарт-контракты, там нет службы поддержки, которая вернёт средства. Поэтому критически важно всё проверять перед отправкой.

Q4: Зачем использовать несколько DEX, если можно всё делать на Uniswap?

Разные DEX оптимизированы под разные задачи. Curve — для стейблкоинов (минимальное проскальзывание). Balancer — для обменов с несколькими токенами в одной транзакции. SushiSwap — для кросс-чейн обменов. 1inch — агрегатор, сравнивает цены на всех DEX и находит лучшую.

Q5: Насколько безопасно держать большие суммы в пулах ликвидности DEX?

Риски: импermanent loss (непостоянные потери при изменении цены), взлом смарт-контракта, rug pull (если создатель пула — мошенник). Для топовых DEX (Uniswap, Curve, Balancer) риск взлома минимален — проходят множественные аудиты. Но impermanent loss неизбежен при волатильности — это отдельная тема, разберу в следующей статье про стратегии поставки ликвидности.

Что дальше

Если разобрался с основами работы на DEX — следующий шаг: научиться зарабатывать на этом. Поставка ликвидности (LP farming), арбитраж между DEX, автоматизация через боты. В Telegram-канале @serg_defi регулярно публикую разборы новых стратегий + актуальные APY на разных пулах. Заходи, если хочешь выжимать из DeFi больше, чем просто обмены токенов.