Розробка торгового бота для DEX на Arbitrum
Arbitrum One — L2 з найвищим TVL серед Ethereum роллапів. Низький газ (транзакція в Uniswap v3 коштує $0.05-0.30 замість $3-15 на mainnet), висока швидкість (блок кожні ~250ms), багата екосистема DEX: Uniswap v3, Camelot, GMX, Ramses, Pendle. Для торгових ботів — привабливе середовище саме через дешевий газ: стратегії з малою прибутком на угоду стають рентабельними.
Специфіка Arbitrum для торгових ботів
Sequencer та MEV
Arbitrum використовує централізований sequencer (оператор Offchain Labs). Це означає:
- Немає публічного мемпулу в традиційному сенсі — sequencer приймає транзакції по черзі
- Класичний frontrunning через gas price аукціон практично відсутній — sequencer обробляє транзакції в порядку отримання (FCFS)
- MEV існує, але менше ніж на L1 — арбітраж між DEX залишається, sandwich значно складніше
Для арб-бота це хороша новина: менше конкуренції від sandwich-ботів, чесне FCFS-виконання. Для стратегій, залежних від front-running — Arbitrum не найкраща середовище.
Latency до sequencer критична. Географічно sequencer знаходиться в конкретному датацентрі. Для конкурентних арб-стратегій — close proximity до sequencer endpoint означає різницю в 10-50ms, що може бути рішучим.
Nitro та gas ціноутворення
Після переходу на Nitro (серпень 2022) Arbitrum використовує L2 gas price, який складається з L2 computation + L1 calldata cost. Gas price динамічно змінюється залежно від навантаження. На відміну від Ethereum, на Arbitrum немає priority fee аукціону — базовий алгоритм FCFS.
При високій навантажинні на L1 (Ethereum congestion) cost L1 calldata зростає — ефективний газ на Arbitrum теж росте. Бот повинен враховувати це при розрахунку рентабельності.
Стратегії для Arbitrum DEX
Кросс-DEX арбітраж
Ціна ETH/USDC на Uniswap v3 Arbitrum відрізняється від ціни на Camelot Arbitrum. Арб-бот замічає розхідження, купує на дешевшій, продає на дорогій. З врахуванням газу $0.10-0.50 — рентабельно навіть при розхідженні 0.1-0.2%.
Технічно: локальний кеш стану пулів (резерви оновлюються через події Swap, Sync), розрахунок потенціального profit без RPC-запитів, відправлення транзакції при profit > threshold.
// Псевдокод логіки арбітража
async function checkArb(token0: Address, token1: Address) {
const priceUni = await getUniswapV3Price(token0, token1)
const priceCamelot = await getCamelotPrice(token0, token1)
const spread = Math.abs(priceUni - priceCamelot) / Math.min(priceUni, priceCamelot)
if (spread > MIN_PROFIT_THRESHOLD) {
const optimalAmount = calculateOptimalArbAmount(priceUni, priceCamelot, poolReserves)
const estimatedProfit = calculateProfit(optimalAmount, spread)
const gasCost = await estimateGasCost()
if (estimatedProfit > gasCost * PROFIT_MULTIPLIER) {
await executeArbitrage(optimalAmount, ...)
}
}
}
Просторовий арбітраж через flash loans
Для стратегій без власного капіталу — flash loan через Aave v3 на Arbitrum (доступен). Заём на початку транзакції, арбітраж, повернення долгу + premium (0.05% для більшості токенів) наприкінці тієї ж транзакції.
На Arbitrum це особливо привабливо: flash loan на $1M коштує $500 premium, але транзакція обходиться в $0.20-0.50 газа vs $15+ на mainnet.
Лендинговий арбітраж
Процентні ставки на Aave Arbitrum та Compound v3 Arbitrum розходяться при дисбалансі спроса та пропозиції. Бот займає по низькій ставці, вносить як ліквідність в протокол з високою ставкою. Ризик: ставки змінюються, позицію потрібно мониторити.
MEV-захист для користувачів протоколів
Якщо розробляється не арб-бот, а торговий бот для клієнтів — важливо захистити їх транзакції. На Arbitrum Flashbots працює через MEV Blocker або через прямо відправлення в sequencer без публічного мемпулу. Додатково — використання commit-reveal scheme для приховування intent транзакції.
Інфраструктура
Нода близько до sequencer або Arbitrum-специфічний RPC з низькою latency (Alchemy Arbitrum, QuickNode). WebSocket для event streaming. Redis для кеша стану пулів. PostgreSQL для історії сделок та аналітики.
Моніторинг: Tenderly для дебаггінгу failed транзакцій на Arbitrum (підтримує симуляцію), Grafana + Prometheus для метрик бота.
| Компонент | Рішення |
|---|---|
| Мова | TypeScript / Rust |
| RPC | Alchemy Arbitrum WebSocket |
| Flash loans | Aave v3 Arbitrum |
| DEX | Uniswap v3, Camelot, GMX |
| Кеш | Redis |
| БД | PostgreSQL |
Часові орієнтири
Простий кросс-DEX арб-бот для Arbitrum — 1-2 тижні. Мультистратегійний бот з flash loans, моніторингом та управлінням ризиками — 3-5 тижнів.
Вартість розраховується після обговорення стратегій та вимог до інфраструктури.







