Лимитный ордер на DEX: как купить по своей цене | IceAI

Лимитный ордер на DEX: как купить по своей цене

Лимитный ордер на DEX: как подписать заявку по своей цене, не платить газ и не отдать кошелёк дрейнеру. Пошагово с цифрами.

В конце марта ETH стоял на 2 560 USDC, а мне он был нужен по 2 400 — не «когда-нибудь», а именно по этой цене. Сидеть у графика и ждать я не хотела. Открыла CoW Swap, вписала 2 000 USDC, цену 2 400, срок 14 дней и подписала заявку. Подпись не стоила ни цента. Через девять дней цена провалилась до 2 380 на пару часов, ордер исполнился ночью, и на кошелёк пришло 0,832 ETH. По рынку в тот день на те же 2 000 долларов я получила бы 0,781 ETH — разница 0,051 ETH, около 130 долларов. И всё это время монеты лежали у меня, а не на чужом балансе.

Лимитный ордер на DEX: как купить по своей цене 2 000 USDC твои деньги в кошельке 2 400 USDC цена внутри подписи 0,832 ETH приходит на кошелёк 0 $ газ за постановку Ордер — это подписанное разрешение, а не транзакция. Газ платит исполнитель, но зашивает его в цену сделки. Пока ордер не исполнен, монеты остаются у тебя.

С чего начать

Понадобится некастодиальный кошелёк — MetaMask, Rabby или Trust — и сеть, где у токена есть ликвидность: Ethereum, Arbitrum или Base. Дальше выберите протокол. CoW Swap делает лимитные ордера через батч-аукционы, 1inch — через Fusion и Limit Order Protocol, UniswapX работает на голландских аукционах, 0x и Matcha дают похожий формат. Логика у всех одна, различаются интерфейс и то, кто платит газ.

Перед первой сделкой проверьте три вещи: домен совпадает с официальным (фишинговые копии крадут подписи), в кошельке выбрана та сеть, где лежат токены, и на счёте есть немного ETH или SOL на случай, если понадобится отменить ордер транзакцией. На первый раз ставьте сумму, которую не жалко потерять целиком, — 50–100 долларов достаточно, чтобы пройти весь путь.

Чем лимитка на DEX отличается от биржевой

На бирже ордер стоит в книге заявок, биржа сводит покупателя с продавцом, а активы до сделки лежат на её счетах. На DEX книги нет вообще. Ты подписываешь сообщение по стандарту EIP-712: «отдам 2 000 USDC за 0,832 ETH, заявка действует до 16 апреля». Всё. Дальше любой участник — его называют солвером или мейкером — приносит свои ETH, забирает USDC и платит газ из своего кармана.

Из этой схемы вытекают два следствия, которые мне нравятся больше всего. Первое: цена исполнения не может быть хуже той, что в подписи, поэтому проскальзывания здесь не существует как явления. Второе: сделка не идёт через публичный мемпул, где её можно перехватить, — сэндвич-атаки и прочий MEV мимо. Ты становишься тем самым мейкером, который даёт ликвидность, а не забирает её.

Шаг 1. Разрешение на токен — с лимитом, а не бесконечное

Прежде чем протокол сможет забрать ваши USDC, кошелёк попросит approve — разрешение на токен. В MetaMask и Rabby сумма по умолчанию часто стоит «без ограничений». Замените её на точную: 2 000 USDC. Если ордер исполнится частично, разрешение всё равно сработает на нужную часть, а остаток вы сможете отозвать.

Бесконечный approve — это открытая дверь: любой контракт, получивший доступ к вашему адресу через уязвимость, заберёт весь баланс токена. Ограничение на сумму экономит нервы, а отзыв занимает минуту на revoke.cash.

Шаг 2. Считайте цену от строки «получу минимум»

Интерфейс покажет не только вашу цену, но и сколько токена придёт после всех сборов. Считайте сами: 2 000 / 2 400 = 0,8333 ETH. Протокол берёт свою долю, скажем 0,1% — это 2 USDC, остаётся 1 998 / 2 400 = 0,8325 ETH. Если на экране цифра заметно меньше — либо сбор выше, либо цена уже не та.

Полезно сразу прикинуть выгоду относительно рынка. 2 400 против 2 560 — это скидка 6,25%. Если ждёте падения на 20% и больше, будьте готовы, что ордер провисит месяц и не сработает: до такой цены рынок доходит не каждый квартал.

Шаг 3. Поставьте срок и разрешите частичное исполнение

Срок жизни заявки — от часа до 30 дней. Я ставлю 14: дольше держать подпись открытой смысла нет, цена устаревает. Частичное исполнение включайте, если сумма крупная: 0,832 ETH могут выкупить три разных солвера по 0,2–0,3 ETH, и вы всё равно получите свою цену, просто несколькими кусками.

Один нюанс: при частичном исполнении комиссия протокола списывается с каждой порции. На сумме 2 000 долларов это копейки, на 200 — уже заметно.

Шаг 4. Подпишите заявку — это бесплатно, но не безобидно

Подпись не отправляет транзакцию и не стоит газа. Но по смыслу она равна доверенности: контракт получает право забрать ваши USDC, если кто-то принесёт ETH по указанной цене. Поэтому перед нажатием «Подписать» я всегда сверяю три поля: адрес контракта, сумму и цену.

Схема «подпишите, чтобы получить доступ к лимитным ордерам» на незнакомом сайте — классический дрейнер. Кошелёк покажет запрос permit или setApprovalForAll, а не ордер. Настоящий лимитный ордер содержит сумму, цену, срок и адрес вашего кошелька — и ничего про «разблокировку» или «получение награды».

Шаг 5. Следите за статусом и отменяйте вовремя

У заявки четыре состояния: открыта, исполнена, отменена, истекла. В газлесс-протоколах отмена — это тоже подпись, бесплатная. В Limit Order Protocol отмена может требовать транзакции: при 20 gwei это примерно 0,001 ETH, то есть два-три доллара. Не пугайтесь цифры 165 тысяч газа из документации — это стоимость создания ордера, а не отмены.

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

Шаг 6. Сравните с биржей на своей сумме

Лимитка на DEX выигрывает, когда вы не спешите и не хотите отдавать монеты на биржу. Проигрывает в трёх случаях. Первый — нужен срочный выход: солверы придут только по выгодной им цене. Второй — мемкоин в тонком пуле: мейкеров нет, ордер простоит до истечения. Третий — маленькая сумма в on-chain варианте: создание ордера за 8 долларов газа на сделке в 100 долларов съедает всю экономию.

На 2 000 долларов и выше разница уже ощутима. На 200 — я бы не советовала возиться, проще купить по рынку и не думать.

Частые ошибки

  • Подписать ордер на фишинговом сайте-копии. Проверяйте домен до подключения кошелька, а не после.
  • Оставить approve без ограничения и забыть про него на полгода.
  • Поставить цену на 30% ниже рынка и ждать неделю. Такая заявка не исполнится, а нервы потратит.
  • Перепутать сети: USDC в Ethereum, ордер в Arbitrum — деньги просто не найдутся.
  • Ждать от лимитки защиты от убытка. Это не стоп-лосс: она не продаст актив при падении, а только купит по вашей цене.

Коротко

  • Лимитный ордер на DEX — подписанное сообщение с ценой, суммой и сроком, а не транзакция.
  • Газ платит исполнитель; вы платите только комиссию протокола, обычно 0,1% и меньше.
  • Approve ставьте на точную сумму — не «без ограничений».
  • Считайте цену от строки «получите минимум», а не от курса на графике.
  • Срок 14–30 дней, частичное исполнение — для крупных сумм.
  • Отмена в газлесс-протоколах бесплатная, но не забывайте про неё.
  • Сумма меньше 200 долларов: on-chain вариант не окупается, берите газлесс или биржу.