← Back to all products
$15
Searcher Starter Kit
Searcher bot templates for building MEV strategies — arbitrage, liquidations, sandwich, backrun.
TypeScriptJSONPythonMarkdown
📁 File Structure 27 files
searcher-starter-kit/
├── LICENSE
├── README.md
├── package.json
├── security-notes.md
├── src/
│ ├── python/
│ │ └── searcher_kit/
│ │ ├── __init__.py
│ │ ├── mempool/
│ │ │ ├── __init__.py
│ │ │ └── watcher.py
│ │ ├── searcher.py
│ │ └── strategies/
│ │ ├── __init__.py
│ │ ├── arbitrage.py
│ │ └── base.py
│ └── ts/
│ ├── config.ts
│ ├── execution/
│ │ ├── bundle-sender.ts
│ │ └── simulation.ts
│ ├── index.ts
│ ├── mempool/
│ │ ├── decoder.ts
│ │ └── watcher.ts
│ ├── searcher.ts
│ ├── strategies/
│ │ ├── arbitrage.ts
│ │ ├── backrun.ts
│ │ ├── base.ts
│ │ └── liquidation.ts
│ ├── types/
│ │ └── searcher.ts
│ └── utils/
│ └── profitability.ts
├── test/
│ ├── python/
│ │ └── test_searcher.py
│ └── ts/
│ └── searcher.test.ts
└── tsconfig.json
📖 Documentation Preview README excerpt
Searcher Starter Kit
MEV searcher bot framework — arbitrage, liquidation, and backrunning strategies with Flashbots integration.
Price: $14.99 | License: MIT | Languages: TypeScript + Python
What's Inside
A complete MEV searcher framework with three battle-tested strategy templates, mempool monitoring, bundle construction, and Flashbots relay submission.
TypeScript SDK (`src/ts/`)
| Module | Description |
|---|---|
searcher.ts | Core engine — mempool → strategies → bundles → Flashbots |
strategies/arbitrage.ts | Cross-DEX arbitrage detector |
strategies/liquidation.ts | Lending protocol liquidation finder |
strategies/backrun.ts | Transaction backrunning strategy |
mempool/watcher.ts | WebSocket mempool subscription |
mempool/decoder.ts | ABI-free calldata decoder for DEX/lending selectors |
execution/bundle-sender.ts | Flashbots relay bundle submission |
execution/simulation.ts | Local bundle simulation via eth_callBundle |
utils/profitability.ts | Profit calculation, gas estimation, viability checks |
Python SDK (`src/python/`)
| Module | Description |
|---|---|
searcher.py | Async searcher engine with block tracking |
strategies/base.py | Abstract base strategy with stats tracking |
strategies/arbitrage.py | Cross-DEX arbitrage strategy |
mempool/watcher.py | WebSocket mempool stream (async generator) |
Quick Start (TypeScript)
npm install
cp .env.example .env # Add your RPC URLs and private key
npx tsx src/ts/index.ts
import { Searcher, ArbitrageStrategy, LiquidationStrategy, loadConfig } from "@cryptoforge/searcher-starter-kit";
const config = loadConfig();
const searcher = new Searcher(config);
// Register strategies
searcher.addStrategy(new ArbitrageStrategy(config));
searcher.addStrategy(new LiquidationStrategy(config));
// Start searching
await searcher.start();
Quick Start (Python)
... continues with setup instructions, usage examples, and more.
📄 Code Sample .py preview
src/python/searcher_kit/searcher.py
# ═══════════════════════════════════════════════════════════════════════
# Searcher Starter Kit — Core Searcher Engine (Python)
# Main loop: watch mempool → detect opportunities → build & submit bundles
# ═══════════════════════════════════════════════════════════════════════
from __future__ import annotations
import asyncio
import logging
import time
from dataclasses import dataclass, field
from typing import Optional
from web3 import Web3
from .mempool.watcher import MempoolWatcher
from .strategies.base import BaseStrategy, Opportunity, StrategyStats
logger = logging.getLogger(__name__)
@dataclass
class SearcherConfig:
"""Configuration for the MEV searcher engine."""
rpc_url: str
ws_rpc_url: str
flashbots_relay_url: str = "https://relay.flashbots.net"
private_key: str = ""
enabled_strategies: list[str] = field(default_factory=lambda: ["arbitrage"])
min_profit_wei: int = 10**15 # 0.001 ETH
max_gas_price_gwei: int = 100
target_blocks_ahead: int = 1
dex_addresses: list[str] = field(default_factory=list)
lending_addresses: list[str] = field(default_factory=list)
log_level: str = "info"
class Searcher:
"""
Core MEV searcher engine.
Orchestrates the full MEV searching loop:
1. Subscribe to mempool via WebSocket
2. Route transactions to registered strategies
3. Strategies evaluate and return opportunities
4. Build bundles from opportunities
5. Simulate bundles locally
6. Submit profitable bundles to Flashbots
"""
# ... 175 more lines ...