Все статьи
Гайды

Проскальзывание в Solana: как выбрать значение

Проскальзывание в Solana по сценариям: глубина пары, волатильность и риск сэндвича. Значения для Jupiter, свопа и запуска на много кошельков.

8 минут чтения J Tools Editorial
Иллюстрация к настройке проскальзывания в Solana: шкала допуска по цене между котировкой свопа и его исполнением на цепочке

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

Режим Auto угадывает число за вас, но он не знает ни размера ордера, ни того, сколько ботов сидит на конкретной паре. Поэтому проскальзывание в Solana считают от трёх вещей: какую долю пула забирает ваш ордер, насколько токен двигался последние минуты и сколько кошельков идёт в одном запуске.

Проскальзывание и влияние на цену: разные вещи

Проскальзывание это запас на всё, что происходит между котировкой и исполнением: чужие сделки, боты, обычная волатильность. Влияние на цену (price impact) это то, что делает с пулом ваш собственный ордер, и его видно заранее, до подписи. Отсюда рабочее правило: проскальзывание равно влиянию на цену плюс небольшой запас. На глубокой паре SOL/USDC запас держат в 0,1-0,2%, на свежем меме он доходит до 2-5%.

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

Слишком узко и слишком широко

Поставьте 0,1% на быстром токене, и цена уедет на 0,12% за полсекунды между котировкой и исполнением. Своп отменяется, комиссия уходит, токена нет. Настоящая цена ошибки не в комиссии, а в упущенном входе: пока вы подбираете «правильное» число, движение уже случилось.

Обратная крайность работает тише. Откройте 5% на крупной покупке SOL за USDC, и бот, наблюдающий за парой, купит перед вами, даст вам исполниться по задранной цене и тут же продаст. На цепочке своп выглядит успешным, потому что порог вы не пробили. Вопрос «почему я так плохо зашёл» получает ответ ровно здесь.

Никогда не ставьте 50%. Для ботов это прямой сигнал «исполняй по любой цене», и правильным такое число не бывает ни в одном сценарии. На глубоких парах держите коридор узким: крупный ордер с широким допуском боты ищут отдельно.

Глубина решает больше, чем сам токен

Янтарная жидкость ровно проходит через широкую воронку слева и переливается через узкую воронку справа: глубокая ликвидность против тонкой

Правильный вопрос звучит не «сколько убытка я готов принять», а «насколько мой ордер сдвинет цену здесь». Покупка на 1% от денег в пуле почти не двигает цену, и допуск остаётся узким. Покупка на 10% от пула сама поднимет цену минимум на те же 10%, и коридор обязан это покрыть, иначе своп откатится.

Интерфейсы показывают «влияние на цену» и «допуск» отдельными строками, а читать их нужно вместе: второе всегда стоит чуть выше первого. Перед крупным ордером стоит посмотреть на глубину и на то, как распределены держатели: это делает снимок держателей токена. Как считается сама глубина, разобрано в статье пул ликвидности на Solana и его глубина.

Проскальзывание по сценариям

Числа ниже это опыт операторов, а не правило протокола. Рядом с ними всегда смотрите на живое влияние на цену.

СценарийЗначениеПочему
Стейбл в стейбл (USDC в USDT)0,1-0,3%Очень глубокий пул ликвидности, волатильности почти нет
SOL/USDC, малый и средний объём0,5-1%Глубокая пара, но сэндвич-давление реальное
SOL и средний токен (например JTO)1-2%Ликвидности хватает, цена двигается
SOL и устоявшийся мем (BONK, WIF)2-5%Высокая волатильность, средняя глубина
SOL и свежий мем после Pump.fun5-15%Очень тонкий пул ликвидности, сильные скачки за минуту

Пример на один день. Своп USDC в USDT на 200 долларов при 1% проходит спокойно: реальная разница была около 0,05%. Тот же 1% на свежем меме в тонком пуле откатывается, потому что между котировкой и свопом цена ушла на 5%; тому входу требовалось около 10%. Одно и то же число, два разных исхода. Для одиночного входа его вбивают руками в форме свопа токенов, а не оставляют на Auto.

Маршрут важнее самого токена

Один и тот же токен требует разных значений в зависимости от того, где реально исполнится ордер. Цена в каждом месте собирается по-своему.

МаршрутКак формируется ценаСтартовое значениеПокупка на 5 SOL
Raydium и другие AMMСоотношение резервов (x умножить на y равно k)0,5-1% на глубоком пуле, 3-8% на тонкомОколо 1%, если в стороне SOL примерно 500 SOL, и около 8% при 60
Роутер JupiterДробит ордер по нескольким пулам0,3-1% для средних ордеровПри разбивке на три пула общее влияние падает примерно до 0,5%
Кривая Pump.funКаждая покупка поднимает следующую цену5-15%На свежей кривой 5 SOL двигают её примерно на 8-12%

Проведём один пример до конца. Вы покупаете один и тот же токен на 5 SOL. Через глубокий пул Raydium исполнение ложится близко к котировке, и 1% там чувствует себя спокойно. Через Jupiter ордер дробится, расчётное влияние падает, и более узкие 0,5% всё равно проходят. А на монете, которая ещё сидит на своей кривой, те же 5 SOL двигают цену сами, поэтому значение ниже собственного влияния кривой чаще всего просто откатится.

Если маршрут поменяется в последний момент, оценка поплывёт, поэтому нулевой допуск не ставят никогда. На кривой добавляется ещё одно: покупки, попавшие в тот же блок раньше вашей, уже подняли цену. После миграции монета торгуется в обычном пуле, и этот переход разобран в статье что такое биржа PumpSwap. Чем площадки отличаются между собой, сравнивает разбор где менять токены в Solana, а живую глубину конкретной пары читает инструмент ликвидности пула.

Auto и миф про «0,5% работает всегда»

Auto в Jupiter читает недавнюю волатильность токена. На глубоких парах он попадает разумно, а на свежем меме после миграции легко выставляет 5-15% там, где реальное влияние ордера на цену равно 2%. Такой коридор делает вас удобной мишенью для сэндвича. Оператор обыгрывает Auto ровно потому, что знает две вещи, недоступные режиму: собственный размер ордера и плотность ботов на этой конкретной паре. Сам параметр описан в документации для разработчиков Jupiter.

Совет «0,5% работает для всего» держится ровно в одном случае: средний своп SOL/USDC, глубокая пара, маршрут с защитой от MEV. На меме 0,5% откатывается. На покупке в 100 тысяч USDC собственное влияние ордера уже может превышать эту цифру. В запуске на много кошельков такое число уронит половину поздних. Три вопроса перед сделкой: какую долю пула я забираю, сколько ботов на этой паре, сколько кошельков в запуске.

Много кошельков, один допуск

Ряд кошельков в очереди: первые подсвечены ярко, последние тускло, под ними кривая цены, растущая слева направо

Оркестратор свопа берёт одно значение и применяет его ко всем кошелькам запуска. Ловушка в том, что пул ликвидности успевает сдвинуться между первым кошельком и двухсотым. Узко для первого значит откат у двухсотого; широко для двухсотого значит подарок боту, который ждёт на первом.

Практика даёт два хода. Первый: считать допуск по худшему, последнему кошельку и принять небольшую переплату на ранних. Второй: разбить запуск на 2-3 партии и пересчитывать число по живому состоянию пары перед каждой. Одно значение на всю пачку ставит своп с множества кошельков, а упаковка сделок в один бандл транзакций сжимает окно, в котором фронтраннер успевает вклиниться. Кто именно ждёт на той стороне, показывает разбор как работает снайпер-бот.

Ошибка «slippage tolerance exceeded» в Phantom

Эта строка значит, что цена прошла ваш порог между котировкой и приземлением транзакции. Сработала защита, а не баг. Причин обычно три:

  • Тонкая или быстрая пара. Свежие токены двигаются на несколько процентов за блок, и узкий коридор за ними не успевает.
  • Устаревшая котировка. Вы задержались на экране подтверждения, и пул ликвидности за это время ушёл вперёд.
  • Не хватает SOL на комиссию. Это другая поломка, но кошелёк умеет показать её общим предупреждением, и её легко перепутать с проскальзыванием.

Лечение простое: поднимать коридор по одной ступени вместо прыжка на 50%, обновлять котировку перед подписью, а для входа, который обязан пройти в одном блоке, брать атомарное исполнение, чтобы зазор между котировкой и заливкой стал меньше.

Частые вопросы про проскальзывание

Ставить 1% или 5%?

Ответ даёт конкретная пара, а не правило. На глубокой паре с большим оборотом 0,5-1% проходит и при этом защищает от плохой цены. На свежем, тонком токене или на кривой 1% будет откатываться, и реальный диапазон это 3-5%. Если сделка проходит только выше 5%, ликвидности слишком мало: уменьшайте ордер, а не расширяйте коридор.

Auto это безопасно?

На обычных сделках в глубоких парах он выбирает разумно. Риск начинается на волатильных и тонких токенах: там Auto открывает коридор заметно шире реального влияния вашего ордера и делает вас лёгкой мишенью для сэндвича. На новом токене и на крупном объёме число лучше вбить самому.

Какое проскальзывание ставить на запуск с многих кошельков?

Одно значение действует на все кошельки, а цена уезжает по мере их исполнения, так что худшую цену видит последний. Считайте коридор по нему или разбейте запуск на две-три партии и пересчитывайте по живому состоянию пары перед каждой. Упаковка покупок в один бандл транзакций дополнительно сокращает разбег.

Чем проскальзывание отличается от влияния на цену?

Влияние на цену это работа вашего собственного ордера: оно зависит от размера сделки против глубины и видно до подписи. Проскальзывание это запас на то, что вы не контролируете между котировкой и исполнением. Если интерфейс показывает влияние 2%, коридор в 0,5% гарантирует откат ещё до того, как ордер дойдёт до ботов.

Почему своп откатывается раз за разом?

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

Что будет, если поставить слишком много?

Своп пройдёт, и на цепочке он будет выглядеть успешным, потому что порог вы не пробили. Разницу заберёт бот, который купил перед вами и продал сразу после. Поэтому 50% это не «надёжнее», а дороже.

Перед следующим свопом

Проскальзывание это не одно верное число, а решение, которое пересчитывают под каждую сделку: доля пула, скорость пары, количество кошельков. Второе число, которое приходится выбирать руками, разобрано в статье приоритетная комиссия Solana и её размер, а объём и возраст пары перед входом помогает прочитать руководство по DexScreener.

J
Автор
J Tools Editorial

Материал команды J Tools.

Все материалы автора J Tools Editorial →

Похожие статьи