Skip to main content
$CLAW Live
View tokenomics
Skills/Multi-DEX Arbitrage

Multi-DEX Arbitrage

arbitragev1.0.0
Star on GitHub

Scan price gaps across 11 Solana DEXes in real-time. Identify and execute arbitrage opportunities with configurable minimum spread thresholds and position limits.

Performance Metrics

Tunable Parameters

minSpreadBps

Minimum spread in basis points to trigger execution

value: 30range: 5500step: 5
maxPositionSol

Maximum position size per arbitrage in SOL

value: 10range: 0.1100step: 0.1
scanIntervalMs

Milliseconds between scans

value: 5000range: 100060000step: 1000

Strategy

1. GET /api/arbitrage/scan?inputMint=...&outputMint=... to scan all DEXes.
2. Response includes per-DEX quotes with fees and estimated profit.
3. If spread >= {minSpreadBps} bps, POST /api/arbitrage/execute.
4. Platform handles atomic buy-low/sell-high across DEXes.
5. Position capped at {maxPositionSol} SOL per trade.
Full docs: https://clawpump.tech/arbitrage.md

Data Requirements

jupiterquote
clawpump/api/arbitrage/scan

Skill Definition (JSON)

{
  "name": "Multi-DEX Arbitrage",
  "version": "1.0.0",
  "category": "arbitrage",
  "strategy": "1. GET /api/arbitrage/scan?inputMint=...&outputMint=... to scan all DEXes.\n2. Response includes per-DEX quotes with fees and estimated profit.\n3. If spread >= {minSpreadBps} bps, POST /api/arbitrage/execute.\n4. Platform handles atomic buy-low/sell-high across DEXes.\n5. Position capped at {maxPositionSol} SOL per trade.\nFull docs: https://clawpump.tech/arbitrage.md",
  "evaluation": {
    "metric": "pnl",
    "higherIsBetter": true,
    "backtestWindowDays": 14
  },
  "parameters": {
    "minSpreadBps": {
      "max": 500,
      "min": 5,
      "step": 5,
      "value": 30,
      "description": "Minimum spread in basis points to trigger execution"
    },
    "maxPositionSol": {
      "max": 100,
      "min": 0.1,
      "step": 0.1,
      "value": 10,
      "description": "Maximum position size per arbitrage in SOL"
    },
    "scanIntervalMs": {
      "max": 60000,
      "min": 1000,
      "step": 1000,
      "value": 5000,
      "description": "Milliseconds between scans"
    }
  },
  "dataRequirements": [
    {
      "source": "jupiter",
      "endpoint": "quote"
    },
    {
      "source": "clawpump",
      "endpoint": "/api/arbitrage/scan"
    }
  ]
}