Funding & Coordination

Who funded whom, redistribution signals, coordination detection. Built for trading workflows.

latest_native_in

Last native MON received by a wallet. Primary funding signal: "when was this wallet last funded?"

GET /api/latest_native_in?address=0x...

Returns: latestNativeIn (from, amount, amountWei, txHash, blockNumber, timestamp, source), historicalCoverageStartBlock

The source field indicates how the funding was detected:

  • "direct" — a standard wallet-to-wallet MON transfer (high confidence)
  • "internal" — MON received via a contract interaction such as delegation, staking, or bridge (fallback when no direct transfer exists)

Use case: Fresh wallet detection, funding recency for sniper bots.

wallet_funding_source

First native MON ever received by a wallet. Answers: "who originally funded this wallet?"

GET /api/wallet_funding_source?address=0x...

Returns: firstFunding (from, amount, txHash, blockNumber, timestamp, source), historicalCoverageStartBlock

Same source field as latest_native_in ("direct" or "internal").

Use case: Origin tracing, launchpad tools, fresh vs exchange-funded detection.

funding_recipients

Wallets this address has funded (parent view). "Who has this wallet sent MON to?"

ParamDefaultDescription
addressFunder address
blocks10000Look back window (blocks)
limit100Max recipients
GET /api/funding_recipients?address=0x...&blocks=10000&limit=100

Use case: Coordination detection, bundler/funder analysis.

recent_token_transfers_out

Token transfers from a wallet. Redistribution signal: "is this wallet moving tokens to others?"

ParamDefaultDescription
addressWallet address
blocks10000Look back window
limit50Max transfers
GET /api/recent_token_transfers_out?address=0x...&blocks=10000&limit=50

Use case: Fresh wallet snipe detection (funded + token buy), redistribution tracking.

funding_chain

Recursively trace a wallet's funding source back N hops. Follows the money trail from wallet to original funder.

GET /api/funding_chain?address=0x...&depth=5
ParamDefaultDescription
addressWallet to trace
depth5Max hops to trace (max 10)

Response:

{
  "address": "0xabc...",
  "chain": [
    { "hop": 1, "funded": "0xabc...", "funder": "0xdef...", "amount": "1.5", "txHash": "0x...", "blockNumber": 72300000, "timestamp": "...", "source": "direct" },
    { "hop": 2, "funded": "0xdef...", "funder": "0x123...", "amount": "100.0", "txHash": "0x...", "blockNumber": 72100000, "timestamp": "...", "source": "direct" }
  ],
  "depth": 2
}

Use case: Trace fresh wallets back to CEX hot wallets or bundler addresses. Identify funding rings.

coordinated_wallets

Find all wallets funded by the same source as the given wallet. Detects bundler/sniper coordination.

GET /api/coordinated_wallets?address=0x...&limit=50

Response:

{
  "address": "0xabc...",
  "funder": "0xdef...",
  "coordinated": [
    { "address": "0x111...", "amount": "1.5", "txHash": "0x...", "blockNumber": 72300000, "timestamp": "..." },
    { "address": "0x222...", "amount": "1.5", "txHash": "0x...", "blockNumber": 72300001, "timestamp": "..." }
  ],
  "count": 2
}

Use case: Sybil detection, wash trading identification, multi-wallet strategy analysis.

Typical Polling Workflow

Today, bots poll these endpoints in a loop to detect "fresh wallet bought token":

  1. Poll latest_native_in for funding
  2. Poll recent_token_transfers_out for token buys
  3. Combine logic locally

Real-time signals are live via /ws/signals — subscribe to wallet_funded and wallet_token_buy for push-based events with funding_age latency data.