Когда я впервые разместил $1000 в мосте Stargate Finance, я совершил три классические ошибки новичка. Первая — дал бесконечный approve вместо точной суммы. Вторая — не проверил через block explorer, действительно ли транзакция прошла. Третья — забыл учесть gas fees при расчёте реальной доходности.

За последние два года я провёл через DeFi-протоколы больше сотни транзакций. Потерял примерно $200 на тупых ошибках (от случайно сожжённых approve до неверно выбранных сетей), но зато теперь знаю, как это работает на практике. В этой статье — семь самых болезненных промахов при фарминге в DeFi и как их избежать.

Ошибка №1: Бесконечный approve для всех контрактов подряд

Когда ты первый раз размещаешь ликвидность, протокол просит approve — разрешение смарт-контракту распоряжаться твоими токенами. По умолчанию MetaMask предлагает одобрить максимальную сумму (что-то вроде 115 квинтиллионов USDT). Это удобно — не придётся делать approve повторно при следующей операции.

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

Что делать:

  • Для крупных, проверенных протоколов (Uniswap, AAVE, Stargate) — можно давать unlimited approve, если ты планируешь регулярно работать с ними
  • Для новых или средних протоколов — всегда указывай точную сумму вручную: удаляй значение по умолчанию и вписывай ровно столько, сколько вносишь
  • Для экспериментальных протоколов с TVL меньше $10M — только точные суммы, никогда unlimited

В случае со Stargate я размещал $1000 USDT на BSC. Вот как это выглядело:

  1. Открываю Stargate Finance → Pool → выбираю USDT на Binance Smart Chain
  2. Нажимаю Add Liquidity → ввожу 1000 → кликаю Approve
  3. MetaMask показывает окно "Set spending cap" — тут удаляю дефолтное значение и вписываю вручную 1000
  4. Жду подтверждения транзакции (обычно 3–5 секунд на BSC)
  5. Только после этого — Add Liquidity

Важный нюанс: ты делаешь две транзакции. Первая (approve) стоит ~$0.04 gas на BSC, вторая (deposit) — ещё ~$0.04. Итого $0.08 на вход. Это критично для расчёта реальной доходности — об этом дальше.

Ошибка №2: Не проверять транзакции в block explorer

Интерфейс протокола может подвиснуть, показать ошибку или просто не обновиться. Я несколько раз попадал в ситуацию, когда кнопка Add Liquidity оставалась серой, хотя approve уже прошёл. Или наоборот — интерфейс показывал "Pending", а транзакция давно завершилась.

Единственный источник правды — блокчейн.

В случае со Stargate я делал так:

  1. После approve открываю MetaMask → три точки → "View account in explorer"
  2. В BscScan вижу последнюю транзакцию — Approve, статус Success
  3. Копирую contract address токена USDT (он там отображается автоматически)
  4. Проверяю, что контракт совпадает с официальным (на всякий случай сверяюсь с CoinGecko или официальным сайтом Binance)
  5. Только после этого иду дальше

Когда я добавил ликвидность, я снова открыл BscScan и увидел:

  • Транзакция "Deposit" — Success
  • В разделе "BEP-20 Token Txns" появился входящий перевод LP-токенов (Stargate USDT Pool Token) — 998.68 штук
  • В разделе "BEP-20 Token Txns" также виден исходящий перевод 1000 USDT на контракт пула

Эти 998.68 LP-токенов — это не потеря, а просто другой курс. Один LP-токен ≠ один доллар. Когда я забирал ликвидность через сутки, мне вернули ровно 999.99 USDT (минус погрешность округления в смарт-контракте).

Главное: если в BscScan/Etherscan не видишь транзакцию с твоим адресом — значит, она не прошла. Не важно, что показывает интерфейс протокола.

Ошибка №3: Забыть про второй шаг — stake LP-токенов

Вот самая обидная ошибка. Ты вносишь ликвидность, получаешь LP-токены (расписки от протокола), но не размещаешь их в farming contract. В результате токены лежат на кошельке мёртвым грузом, а доходность не начисляется.

Классическая схема в DeFi:

  1. Deposit → получаешь LP-токены (подтверждение, что ты внёс ликвидность в пул)
  2. Stake LP-токены → отдаёшь их в farming контракт, который начисляет награды (обычно в нативном токене протокола)

В Stargate это выглядело так:

  1. После депозита у меня на балансе появилось 998.68 Stargate USDT LP
  2. Перехожу в раздел Farming → вижу уведомление "Stake to earn 4.31% APR in STG tokens"
  3. Нажимаю Stake → снова делаю approve (теперь уже для LP-токенов, а не для USDT)
  4. Подтверждаю stake транзакцию

Только после этого начали капать токены STG.

Как не облажаться:

  • После каждого депозита проверяй раздел Farming/Staking — там должна появиться твоя позиция
  • Если видишь "Available to stake" — значит, ты ещё не стейкнул, нужно нажать кнопку
  • В MetaMask после стейкинга LP-токены исчезнут с баланса (они заперты в контракте), но в интерфейсе протокола ты увидишь "Staked: 998.68"

Я один раз забыл про стейкинг на протоколе Beefy Finance — продержал там BUSD целую неделю, а доходность не капала. Потерял примерно $12 потенциального дохода. Мелочь, но неприятно.

Ошибка №4: Не учитывать gas fees при расчёте APR

На бумаге Stargate обещал 4.31% APR. Но реальная доходность на моей сумме ($1000) оказалась ниже. Почему?

Потому что я заплатил:

  • $0.04 — approve USDT
  • $0.04 — deposit в пул
  • $0.04 — approve LP-токенов
  • $0.04 — stake LP-токенов
  • $0.04 — claim rewards (когда забирал STG)
  • $0.04 — unstake LP-токенов
  • $0.04 — remove liquidity
  • $0.04 — swap STG → USDT через 1inch

Итого: $0.32 на комиссии.

За ~20 часов фарминга я заработал 0.15 STG ≈ $0.10. Минус комиссии — я в минусе на $0.22.

Если бы я держал позицию целый год, вот как выглядел бы расчёт:

  • Годовая доходность: 4.31% от $1000 = $43.10
  • Комиссии на вход/выход: $0.32 (однократно)
  • Реальная годовая доходность: ($43.10 − $0.32) / $1000 = 4.28%

На сумме $1000 разница копеечная. Но на $100 это уже −3.2% к APR, и реальная доходность падает до 1.11%. А на $50 фарминг вообще становится убыточным.

Вывод:

  • На BSC/Polygon/Arbitrum можно фармить от $500–1000
  • На Ethereum mainnet имеет смысл от $5000–10 000 (там gas ~$5–15 за транзакцию)
  • На L2 типа Optimism/Base — от $300–500

Всегда считай: (годовая доходность − entry/exit fees) / сумма вклада. Если это меньше 10% годовых — лучше поискать другой протокол или другую сеть.

Ошибка №5: Продавать фарминговые награды через DEX, а не через агрегатор

Когда я получил 0.15 STG, моя первая мысль была: открыть PancakeSwap (главный DEX на BSC) и обменять там STG → USDT. Но я помнил, что агрегаторы типа 1inch находят лучший курс, проверяя сразу несколько DEX.

Вот что показал 1inch:

  • PancakeSwap: 0.15 STG = $0.0982
  • Через агрегатор (PancakeSwap + Biswap): 0.15 STG = $0.1028

Разница — $0.0046, то есть ~4.7% лучше курс.

На $0.10 это копейки, но если ты фармишь $10 000 и забираешь $400 в месяц наградами, то 4.7% — это $18.80 экономии. За год — $225.

Как пользоваться 1inch:

  1. Открываешь app.1inch.io
  2. Подключаешь MetaMask
  3. Выбираешь сеть (в моём случае — BSC)
  4. В поле "You sell" выбираешь токен STG (если его нет в списке, вставь contract address из BscScan)
  5. В поле "You buy" выбираешь USDT
  6. Нажимаешь Max → видишь, сколько получишь
  7. Делаешь approve (если это первая операция с этим токеном)
  8. Нажимаешь Swap

Альтернативы 1inch: Paraswap, Matcha (от 0x). Они работают похоже, но иногда находят разные маршруты.

Важно: на Ethereum mainnet агрегаторы могут брать gas выше, чем простой swap на Uniswap, потому что делают несколько хопов. Проверяй estimated gas перед подтверждением.

Ошибка №6: Не проверять, куда ушли LP-токены после unstake

Когда ты забираешь ликвидность, происходит три действия:

  1. Unstake LP-токенов из farming контракта → они возвращаются на твой кошелёк
  2. Remove liquidity → ты сжигаешь LP-токены, взамен получаешь базовый актив (USDT в моём случае)
  3. LP-токены отправляются на zero address (0x000...000) — это называется "burn"

Я несколько раз видел панику в Telegram-чатах: «Помогите, я сделал unstake, но деньги не пришли!» Проблема в том, что человек сделал unstake, но забыл сделать remove liquidity.

Вот как это выглядит в BscScan:

  1. Транзакция "Unstake" — ты видишь входящий перевод 998.68 LP-токенов на твой адрес
  2. Транзакция "Remove Liquidity" — ты видишь:
    • Исходящий перевод 998.68 LP-токенов на zero address (0x0000...0000)
    • Входящий перевод 999.99 USDT от контракта пула

Если ты сделал только unstake — LP-токены просто лежат на кошельке. Ты можешь их снова застейкать или обменять (если есть ликвидность на DEX), но обычно ты хочешь вернуть исходный актив. Для этого — remove liquidity.

Чеклист при выходе:

  • Unstake LP-токенов → проверяю в BscScan, что они пришли на мой адрес
  • Remove liquidity → проверяю, что базовый актив (USDT/USDC/ETH) вернулся
  • Claim rewards → забираю STG/CAKE/другие токены
  • Swap наград → конвертирую в стейбл через 1inch

Ошибка №7: Забыть про impermanent loss в парных пулах

В случае со Stargate я работал с однотокеновым пулом — только USDT. Там нет impermanent loss, потому что цена USDT стабильна (~$1).

Но допустим, ты решаешь зайти в пул BNB/USDT на PancakeSwap, чтобы фармить CAKE. Тут появляется impermanent loss (IL) — временные убытки из-за изменения соотношения цен.

Пример:

  • Ты вносишь $1000: $500 в BNB (1 BNB = $500) + $500 в USDT
  • Через месяц BNB вырос до $600
  • Твоя позиция в пуле теперь стоит ~$1095 (рост меньше, чем если бы ты просто держал)
  • Если бы ты держал 1 BNB + $500 USDT — было бы $1100

IL = $1100 − $1095 = $5 (−0.45%)

На практике это компенсируется фарминговой доходностью (например, 20% APR в CAKE), но если цена BNB улетела на 100% за неделю, а ты фармил под 15% годовых — IL съест часть прибыли.

Когда заходить в парные пулы:

  • Высокий APR (от 30% годовых и выше)
  • Низкая волатильность обоих активов (например, USDC/USDT или ETH/stETH)
  • Ты веришь, что оба актива будут расти примерно одинаково (BTC/ETH, например)

Когда избегать:

  • Один актив — мемкоин (DOGE/BNB, SHIB/ETH) — там IL может быть огромным
  • APR ниже 20%, а активы волатильные
  • Ты bullish на один актив и не хочешь продавать его часть (лучше просто hold)

В Stargate IL нет, потому что USDT не меняет цену. Поэтому это был идеальный пул для первого опыта.

Бонус: как проверить, что протокол не скам

Перед тем как засунуть деньги в какой-то новый протокол, я делаю простой чек:

  1. DefiLlama — ищу протокол, смотрю TVL (Total Value Locked). Если меньше $5M — высокий риск
  2. Контракт в block explorer — проверяю, что verified (есть галочка), читаю комментарии, смотрю, сколько держателей токена
  3. Audit — ищу аудит от CertiK, Hacken, PeckShield. Если нет — это ещё не скам, но риск выше
  4. Twitter/Discord протокола — смотрю активность, отвечают ли на вопросы, есть ли живое комьюнити
  5. История транзакций — в BscScan/Etherscan смотрю, как давно контракт развёрнут. Если меньше месяца — жду

Stargate Finance:

  • TVL: $52M (на момент моего депозита)
  • Аудит: CertiK, Quantstamp
  • Команда: LayerZero Labs (известные ребята в DeFi)
  • Контракт развёрнут: больше года назад

Это топ-30 протокол на DefiLlama, поэтому риск минимальный.

Сравни с каким-нибудь YieldFarmXYZ:

  • TVL: $800K
  • Аудит: нет
  • Команда: анонимы
  • Контракт: 2 недели

Вероятность rug pull (разработчики сливают ликвидность) — очень высокая. Даже если APR 300%, я бы не заходил с суммой больше $100–200 на эксперимент.

Реальный кейс: сколько я заработал на Stargate

Разберу по шагам с числами.

Исходные данные:

  • Сумма: $1000 USDT
  • Протокол: Stargate Finance
  • Сеть: BSC
  • Пул: USDT (single-token pool)
  • Заявленный APR: 4.31% (в токенах STG)
  • Время размещения: ~20 часов

Транзакции (все цены на момент операции):

  1. Approve USDT: $0.04
  2. Add liquidity (deposit): $0.04
  3. Approve LP-токенов: $0.04
  4. Stake LP-токенов: $0.04
  5. Claim rewards (через 20 часов): $0.04
  6. Unstake LP-токенов: $0.04
  7. Remove liquidity: $0.04
  8. Swap STG → USDT (1inch): $0.04

Итого gas fees: $0.32

Полученные награды:

  • 0.15 STG (токены Stargate)
  • Курс на момент продажи: 1 STG = $0.685
  • Стоимость: 0.15 × 0.685 = $0.1028

Чистая прибыль:

$0.1028 (доход) − $0.32 (комиссии) = −$0.2172 (убыток)

Годовая доходность (экстраполяция):

Если бы я держал целый год:

  • За 20 часов заработал $0.1028
  • В сутках 24 часа → за сутки: $0.1028 × (24 / 20) = $0.1234
  • За год (365 дней): $0.1234 × 365 = $45.04
  • Минус комиссии на вход/выход: $45.04 − $0.32 = $44.72
  • Годовая доходность: ($44.72 / $1000) × 100% = 4.47%

Выводы:

  • На короткой дистанции (меньше недели) фарминг убыточен из-за gas
  • Реальная годовая доходность примерно совпала с заявленной (4.47% vs 4.31%)
  • На BSC можно фармить от $500, на Ethereum mainnet — от $5000

Для сравнения: если бы я разместил $10 000 вместо $1000, комиссии остались бы те же ($0.32), а доход вырос бы в 10 раз:

  • Годовой доход: $450.40
  • Годовая доходность: ($450.40 − $0.32) / $10 000 = 4.50%

Сравнение: Stargate vs другие протоколы (таблица)

Протокол Тип пула Сеть APR Gas на вход/выход Мин. сумма IL риск
Stargate USDT (single) BSC 4.31% $0.32 $500 Нет
PancakeSwap BNB/BUSD BSC 18.5% $0.40 $300 Средний
AAVE USDC (lending) Polygon 3.8% $0.08 $200 Нет
Curve 3pool (DAI/USDC/USDT) Ethereum 2.1% $12–25 $5000+ Низкий
Uniswap V3 ETH/USDC (concentrated) Arbitrum 15–40% $1.50 $1000 Высокий
Beefy Finance AUTO (auto-compound) BSC 12% $0.20 $200 Нет (single)

Легенда:

  • IL риск: Низкий (стейблы), Средний (волатильная пара), Высокий (concentrated liquidity или мемкоины)
  • Мин. сумма: рекомендуемая сумма, чтобы gas не съел больше 5% годовой доходности

Мой личный выбор для пассивного дохода:

  1. AAVE (Polygon) — 3.8% APR, lending USDC, zero IL, газ копейки
  2. Stargate (BSC) — 4–5% APR, single-token пулы, нет IL
  3. Curve (Arbitrum) — 5–8% APR на стейблах, низкий газ, надёжность

Для более рискованных стратегий (если готов к IL):

  1. PancakeSwap (BSC) — 15–25% APR на BNB/BUSD, средний риск
  2. Uniswap V3 (Arbitrum) — 20–50% APR на ETH/USDC, но нужно активно управлять позицией

FAQ

Q1: Что делать, если интерфейс протокола показывает "Pending", но транзакция уже прошла?

Открой BscScan/Etherscan и проверь статус транзакции напрямую. Если там Success — обнови страницу протокола (Ctrl+F5), отключи и подключи MetaMask заново. Если это не помогло — подожди 5–10 минут, иногда интерфейсы тормозят. Главное — не отправляй транзакцию повторно, пока не убедился в block explorer, что первая не прошла.

Q2: Могу ли я потерять деньги, если дам unlimited approve?

Сам approve не приводит к потере денег. Но если в смарт-контракте есть уязвимость (или это скам), злоумышленник сможет вывести все токены, на которые ты дал разрешение. Для крупных протоколов (Uniswap, AAVE, Curve) с аудитом и историей — риск минимальный. Для новых протоколов — всегда давай approve только на конкретную сумму.

Q3: Как понять, сколько я реально зарабатываю с учётом комиссий?

Формула: (годовая доходность в $ − gas fees на вход/выход) / сумма вклада × 100%. Пример: положил $1000 под 10% APR, заплатил $5 комиссий → реальная доходность = ($100 − $5) / $1000 = 9.5%. Для коротких позиций (меньше месяца) комиссии съедают намного больше, чем кажется.

Q4: Что такое LP-токены и зачем их стейкать отдельно?

LP-токены — это расписка, что ты внёс ликвидность в пул. Сам по себе депозит в пул не приносит фарминговые награды (в большинстве протоколов), ты получаешь только часть комиссий от обменов. Чтобы получать награды в нативном токене протокола (STG, CAKE и т.д.), нужно застейкать LP-токены в farming контракт. Это отдельная транзакция.

Q5: Как часто нужно забирать (claim) награды, чтобы не терять на gas?

Зависит от сети и суммы наград. На BSC/Polygon, где gas ~$0.04–0.10, можно забирать раз в неделю при доходе $10–20/месяц. На Ethereum mainnet (gas $5–15) имеет смысл claim раз в месяц или когда накопилось $100+. Некоторые протоколы (Beefy, Yearn) делают auto-compound — автоматически реинвестируют награды, тогда claim вообще не нужен.

Что дальше

Фарминг в DeFi — это основа пассивного дохода в крипте, но начинать стоит с простых, проверенных протоколов и небольших сумм. Я рекомендую попробовать Stargate или AAVE на Polygon — там минимальные комиссии и zero impermanent loss.

Если хочешь разобраться глубже в стратегиях с доходностью 15–30% годовых, подписывайся на мой Telegram-канал https://t.me/serg_defi — там я разбираю новые протоколы, показываю реальные транзакции и делюсь тем, что сам тестирую.