Разработка торгового бота для DEX (Uniswap, PancakeSwap)

Мы занимаемся разработкой торговых ботов для DEX — систем, которые ищут и исполняют арбитражные возможности за миллисекунды. Наши боты работают на уровне конкурентов: задержка в 100 миллисекунд стоит денег, mempool — поле боя, а неправильная логика может привести к sandwich-атаке. Используем собстве

Направления блокчейн-разработки

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1450
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1309
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1004
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1270
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    719
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    1011

Мы занимаемся разработкой торговых ботов для DEX — систем, которые ищут и исполняют арбитражные возможности за миллисекунды. Наши боты работают на уровне конкурентов: задержка в 100 миллисекунд стоит денег, mempool — поле боя, а неправильная логика может привести к sandwich-атаке. Используем собственную ноду, Flashbots и оптимизированные контракты Uniswap V3. В этой статье разберем архитектуру трех типов ботов (арбитражный, снипер, маркет-мейкинг), техническую реализацию на viem/ethers.js и как защититься от MEV.

Три типа DEX-ботов

Тип бота Цель Сложность Риски
Арбитражный Извлечение прибыли из ценовых расхождений между DEX Высокая (конкуренция MEV) Sandwich-атаки, высокая latency
Sniper Покупка токенов при создании пула Средняя Honeypot, rugpull
Market Making Заработок на спреде через AMM LP Средняя Impermanent loss, волатильность

Получите консультацию по вашему проекту — мы разработаем бота под вашу стратегию.

Как работают DEX-боты?

Арбитражный бот

Находит ценовые расхождения между DEX и извлекает прибыль. Например: ETH стоит $2000 на Uniswap V3 и $2003 на Curve — покупаем на Uniswap, продаём на Curve, $3 прибыли минус gas. На mainnet арбитраж ETH/USDC — занятая ниша с жёсткой конкуренцией. Более реалистичные ниши: новые токены в первые часы торгов (низкая конкуренция), мультихоп маршруты через 3+ пулов, L2 сети (меньше конкурентов, дешевле газ), экзотические пары на менее популярных DEX.

Sniper бот (new listing)

Отслеживает создание новых пулов на Uniswap (событие PoolCreated в Factory) или добавление ликвидности в новый пул. При детекте — мгновенно покупает токен в расчёте на price discovery pump. Технически: WebSocket подключение к Ethereum node, слушаем pending transactions в mempool и PoolCreated события. При детекте — сборка и отправка транзакции с высоким gas priority fee. Риски: honeypot токены, rugpull, MEV competition. Базовые защиты: симуляция sell транзакции перед покупкой, проверка контракта на verified source code, проверка distribution supply.

Market making bot

Выставляет bid/ask ордера вокруг mid-price, зарабатывает на spread. На Uniswap V3 реализуется через управление range positions — бот открывает narrow range position и ребалансирует при выходе цены за диапазон. Uniswap V3 SDK предоставляет все инструменты: расчёт оптимального range через tickToPrice, симуляция fees earned через Pool.computeSwapStep.

Как защититься от sandwich-атак?

Ваши транзакции видны в mempool и могут быть атакованы: бот видит вашу покупку на $10K, вставляет свою покупку до и продажу после. Защиты:

  • Private RPC: Flashbots Protect, MEV Blocker — транзакции не попадают в public mempool
  • Tight slippage: 0.1-0.3% для ликвидных пар делает sandwich unprofitable
  • TWAP исполнение: разбить большой ордер на части

Средняя экономия на комиссиях за счёт private mempool составляет до 30%.

Почему собственная нода критична для скорости?

Провайдер Латенция Стоимость Применимость
Infura 50-200 мс Бесплатно/платно Прототипы
Alchemy 30-150 мс Платно Средние проекты
Собственная нода (Erigon) 1-5 мс Высокая (сервер) Конкурентный трейдинг

Для конкурентного арбитража собственная нода обязательна. Также используем eth_feeHistory для оценки gas и Flashbots для атомарных bundle. Снижение latency на 95% даёт преимущество в гонке за прибыль.

Как запустить базового арбитражного бота: пошаговая инструкция

  1. Выберите стратегию и целевые пары (например, ETH/USDC на Uniswap V3)
  2. Настройте RPC-провайдер: собственная нода или Alchemy
  3. Разверните смарт-контракты (если требуется кастомная логика)
  4. Запустите скрипт на Node.js с viem/ethers.js
  5. Настройте мониторинг через Telegram-бота и Grafana
Типичные ошибки при разработке DEX-бота - Использование Quoter V2 on-chain вместо математического расчёта (медленно) - Отсутствие защиты от sandwich (слиппаж более 0.5%) - Работа без тестов на testnet перед мейннетом - Неправильная конфигурация gas fee (не угадал блок)

Техническая реализация

Работа с Uniswap V3

Uniswap V3 — наиболее распространённый DEX для ботов. Ключевые контракты:

  • UniswapV3Factory — создание пулов
  • SwapRouter02 — исполнение свопов (V3 + backward compatible V2)
  • Quoter V2 — off-chain котировки без газа
  • UniversalRouter — универсальный маршрутизатор (поддерживает V2, V3, и другие протоколы)
import { ethers } from "ethers"; import { Pool, Route, Trade, SwapRouter } from "@uniswap/v3-sdk"; import { CurrencyAmount, TradeType, Percent } from "@uniswap/sdk-core"; const quoter = new ethers.Contract(QUOTER_V2_ADDRESS, QuoterV2ABI, provider); const amountOut = await quoter.callStatic.quoteExactInputSingle({ tokenIn: WETH_ADDRESS, tokenOut: USDC_ADDRESS, fee: 3000, amountIn: ethers.utils.parseEther("1"), sqrtPriceLimitX96: 0 }); 

Для production заменяем callStatic котировки на собственный математический расчёт через on-chain state — это быстрее и не зависит от Quoter availability. Используем whitepaper Uniswap V3 как основу для gas optimization.

Speed: как попасть в нужный блок

Задержка — это деньги. Уровни оптимизации:

RPC уровень: Infura/Alchemy вносят 50-200ms latency. Собственная Ethereum нода (geth или erigon) — 1-5ms.

Mempool мониторинг: через eth_subscribe("newPendingTransactions") получаем хэши pending транзакций. Flashbots Protect API даёт доступ к private mempool.

Gas strategy: EIP-1559 транзакции. maxFeePerGas должен быть достаточным для включения в блок. Для срочных транзакций — maxPriorityFeePerGas выше медианы текущего блока.

Bundle через Flashbots: для arb транзакций, которые нужно включить атомарно — Flashbots MEV-Boost. Защита от frontrunning.

Защита от MEV на собственный бот

Используем private RPC, tight slippage и TWAP-исполнение. Дополнительно проводим audit смарт-контрактов на reentrancy и oracle manipulation.

PancakeSwap и мультичейн

PancakeSwap V3 (BNB Chain) — аналогичная архитектура Uniswap V3, те же SDK концепции. BNB Chain: блок каждые 3 секунды (быстрее Ethereum), cheaper gas. PancakeSwap также на Ethereum и Arbitrum. Мультичейн бот работает с несколькими RPC providers. viem предпочтительнее ethers.js для TypeScript проектов — лучшая типизация, treeshaking, встроенный multicall.

import { createPublicClient, http } from "viem"; import { mainnet, bsc, arbitrum } from "viem/chains"; const clients = { ethereum: createPublicClient({ chain: mainnet, transport: http(ETH_RPC) }), bsc: createPublicClient({ chain: bsc, transport: http(BSC_RPC) }), arbitrum: createPublicClient({ chain: arbitrum, transport: http(ARB_RPC) }) }; 

Стек и инфраструктура

TypeScript + viem/ethers.js. Node.js worker threads для параллельной обработки. Redis для кэширования состояния пулов. PostgreSQL для истории сделок и PnL. Деплой на VPS с низкой latency до Ethereum nodes (Hetzner Frankfurt, AWS eu-west). PM2 для process management + Telegram алерты.

Что входит в работу

  • Архитектурная схема взаимодействия компонентов
  • Исходный код бота с комментариями (TypeScript/viem)
  • Деплой на ваш VPS или облако
  • Настройка мониторинга (Telegram alerts, Grafana)
  • Документация по эксплуатации и восстановлению
  • Обучение вашего специалиста (1 час онлайн)

Ориентиры по срокам

Базовый арбитражный бот для одной DEX-пары — 3-5 дней. С мультиDEX routing, mempool мониторингом и Flashbots интеграцией — 1-2 недели. Sniper бот с симуляцией sell — 3-5 дней. Market making bot с Uniswap V3 LP management — 1-1.5 недели. Стоимость рассчитывается индивидуально после аудита стратегии.

Наш опыт и гарантии

Мы — команда из 5 senior-разработчиков с суммарным опытом 7+ лет в Solidity и блокчейн-инфраструктуре. Запустили 15+ торговых систем для клиентов из США и ЕС. Работаем с Ethereum, BNB Chain, Arbitrum, Optimism, Polygon. Свяжитесь с нами — мы оценим ваш проект и предложим оптимальное решение. Закажите разработку бота под ключ с гарантией результата.