Skip to main content
Concepts learning path · 3 of 3. You know what prediction markets are and what smart money means. This page covers the machinery — how Predexon captures, indexes, and serves the data you read.

The pipeline

Predexon runs its own indexing pipeline end to end — from our own blockchain nodes to the API response you read. Nothing is proxied from a venue’s public feed, which is why the data is both faster and more complete than what the venues publish.

Stage by stage

1

Capture — own nodes with mempool access

We run our own blockchain nodes rather than paying an RPC provider. That gives us the mempool: pending transactions are visible before they confirm, which is how the pending-trades channel streams fills up to 5 seconds ahead of Polymarket’s RTDS. In parallel, dedicated recorders capture every orderbook update from each venue, 24/7 — the raw stream behind tick history.
2

Index — custom decoders per venue

Each venue gets its own indexer: contract ABIs decoded, chain reorgs handled, gaps backfilled. When a protocol upgrades, we update the decoder — you never see the seam. This is the part that quietly breaks in self-built pipelines; it’s our full-time job.
3

Normalize — one schema across venues

Polymarket prices are 0–1 decimals; Kalshi’s are 0–100 cents. Field names, timestamps, and identifiers differ everywhere. The normalization layer maps everything into one consistent shape, so GET /v2/kalshi/trades reads like GET /v2/polymarket/trades.
4

Compute — analytics indexed from the chain

Wallet P&L, smart-money classification, leaderboards, and cohort stats are computed from the complete on-chain history — every trade since 2020, not a sample. That’s why a wallet’s P&L on Predexon matches what the chain says, block for block.
5

Serve — REST, WebSocket, and Parquet

The same underlying data reaches you three ways: REST for state, WebSocket for change, and bulk Parquet for the raw tick stream. Pick per use case; the shapes stay consistent.

Why this is hard to replicate

Data freshness & finalization

  • WebSocket events arrive sub-second; pending-trade events arrive before on-chain confirmation.
  • REST reads reflect indexed state within seconds of confirmation.
  • Tick history datasets are finalized daily through the previous calendar day — finalized means gap-checked and immutable.

Next

Data & Signals overview

Every endpoint, organized by what it’s for.

Tick history & data credits

How the raw tick datasets are priced and delivered.