Разработка бота для мониторинга новых токенов
На Ethereum каждый день создаётся 200-500 новых ERC-20 токенов. Большинство — скам или мусор. Но среди них несколько раз в неделю появляются токены с реальным сообществом и ликвидностью, которые за первые часы после листинга показывают 5-20x. Проблема в том, что к моменту, когда информация о новом токене появляется на CoinGecko или в Telegram-каналах, первые покупатели уже зафиксировали прибыль. Мониторинг нужно вести на уровне блокчейна, а не новостных агрегаторов.
Что именно мониторим и как
PairCreated event как точка входа
Для Uniswap V2 и всех его форков (SushiSwap, PancakeSwap, BaseSwap) сигнал создания нового торгового пула — событие PairCreated(address token0, address token1, address pair, uint) от Factory контракта.
Подписка через WebSocket:
const filter = {
address: UNISWAP_V2_FACTORY,
topics: [ethers.id("PairCreated(address,address,address,uint256)")]
};
provider.on(filter, (log) => {
const [token0, token1, pair] = decodeEvent(log);
analyzeNewPair(token0, token1, pair);
});
Для Uniswap V3 — PoolCreated(address token0, address token1, uint24 fee, int24 tickSpacing, address pool) от V3 Factory. Важное отличие: в V3 один и тот же токен может иметь несколько пулов с разными fee tiers (0.01%, 0.05%, 0.3%, 1%). Ликвидность нужно суммировать по всем пулам.
Фильтрация скама: чеклист on-chain проверок
Получив адрес нового токена, за 100-200ms нужно выполнить серию проверок:
Honeypot детекция. Симулируем sell транзакцию через eth_call с impersonation: берём адрес крупного holder, вызываем approve + transfer. Если simulation reverts — токен не продать (honeypot). Если transfer fee > 10% — тоже красный флаг.
Ownership проверка. Читаем owner(). Если owner не renounced (не address(0)) — владелец может вызвать mint() или изменить tax. Renounced ownership не гарантирует безопасность, но отсутствие renounce — явный риск.
Liquidity lock. Проверяем, залочены ли LP токены через Unicrypt или Team.Finance. Незалоченная ликвидность — rug pull вектор: создатель в любой момент может вывести весь ETH/BNB из пула.
Contract source. Если контракт не верифицирован на Etherscan — дополнительный риск. Для верифицированных проверяем наличие mint, pause, blacklist функций.
| Проверка | Красный флаг | Как проверить |
|---|---|---|
| Sell simulation | Revert | eth_call simulation |
| Buy/sell tax | > 10% | Симуляция swap |
| Ownership | Not renounced | owner() |
| LP lock | Не залочена | Unicrypt API |
| Source code | Не верифицирован | Etherscan API |
| Max wallet | < 1% supply | maxWalletAmount() |
Анализ ликвидности и распределения
После базовой фильтрации — оцениваем реальный потенциал:
Initial liquidity. Первоначальная ликвидность в ETH/BNB — индикатор серьёзности проекта. < 0.5 ETH — скорее всего мусор. 5-50 ETH — интересный диапазон для early entry. > 50 ETH — серьёзный проект или хорошо организованный скам.
Holder distribution. Через ERC-20 Transfer events или Moralis API смотрим топ-10 holders. Если на 1-2 кошелька приходится 40%+ supply — риск dump высокий.
Creation transaction. Анализируем tx создателя токена: сколько ETH потрачено, были ли предыдущие токены от этого deployer адреса и как они закончились.
Архитектура системы мониторинга
Бот состоит из нескольких слоёв:
Event listener — WebSocket подключение к ноде, подписка на PairCreated от всех релевантных Factory контрактов. При получении события помещает задачу в очередь.
Analyzer — воркер, который забирает задачи из очереди и выполняет все on-chain проверки. Параллельно делает несколько eth_call, запросы к Etherscan API, симуляцию свапа.
Scorer — агрегирует результаты проверок в score от 0 до 100. Настраиваемые веса для каждого критерия.
Notifier — отправляет алерты только по токенам с score выше порога. Telegram bot с форматированным сообщением: адрес контракта, ключевые метрики, прямые ссылки на Etherscan и Dexscreener.
Для production использования: WebSocket через dedicated Alchemy/QuickNode endpoint или собственная нода. На public RPC с rate limiting вы будете пропускать 30-50% событий при высокой нагрузке.
Мультичейн расширение
Один и тот же архитектурный паттерн работает на всех EVM-совместимых чейнах: Ethereum, BSC, Base, Arbitrum, Polygon, Avalanche. Нужно только параметризовать Factory адреса и RPC endpoint. На BSC PancakeSwap Factory — самый активный, 500-2000 новых пар в день.
Для Solana мониторинг сложнее: Raydium создаёт пулы через initialize2 инструкцию, которую нужно парсить из Solana logs. Pump.fun добавил отдельный паттерн — graduation механизм при достижении $69k market cap, который можно мониторить через Program logs.
Ориентиры по срокам
Базовый бот для одного DEX с Telegram нотификациями — 3-5 дней. Мультичейн с расширенным анализом и honeypot детекцией — 1-2 недели. Стоимость рассчитывается индивидуально.







