Data provenance
Where the data comes from
Every external source behind a Scienter number, what it feeds, how often it refreshes, and how far back it goes. Sources we are not currently calling are listed as such rather than omitted.
Last updated: 2026-09-02
1
The sources
Transcribed from the integrations themselves rather than from a count. Where a provider requires a credential this deployment does not hold, the row says not configured — that is a fact about us, not a judgement about the provider.
Refresh cadence describes what the code does when it runs. The engine that runs it is not currently deployed to a public host, so treat every cadence below as the designed one and check status for what is actually reachable right now.
| Provider | Chain / venue | What it feeds | Refresh | Backfill depth |
|---|---|---|---|---|
| HyperliquidThe source for every track-record score on this site. Public, keyless, read-only — no order path by construction. | Hyperliquid | Funding rates, liquidations, open interest, candles, leaderboard, vault index and vault detail | Per engine run; funding is hourly at source | Venue history, capped at 2,000 rows per query with no cursor |
| Binance · Coinbase · BitfinexStored locally so that "this pattern has fired 47 times" is a query rather than a guess. | Centralised venues | OHLC bars (1m / 5m / 1h / 1d) for a fixed pair list | Hourly updater | 5 years |
| Bybit · OKX · Kraken · DeribitRead-only public REST. A signal is checked against venues that have never heard of the one it came from. | Centralised venues | Cross-venue price checks; Deribit adds implied-volatility skew | On demand | None retained beyond the query |
| OKX (copy trading) | OKX | Copy-lead trader scanning | Per scan run | Whatever the endpoint exposes |
| Polymarket | Polygon | Prediction-market leaderboard scanning | Per scan run | Whatever the endpoint exposes |
| Bitcoin (on-chain) | BTC | Alternative-data signal | Per engine run | Chain history |
| HeliusCredit-metered, requires HELIUS_API_KEY. Also the Solana ground-truth instrument for the provider benchmark, and excluded from that scoreboard for exactly that reason. | SOL | Wallet transaction monitoring (large buys) | Real-time where configured | Provider-dependent |
| Block explorers (Etherscan family)A yardstick, not a ranked provider. Scoring it on the accuracy board would publish a 100% that measures nothing. | ETH · BASE · BSC | Transaction and holder ground truth | On demand | Chain history |
| Kolscan · CieloNot configuredPaid. Dormant without KOLSCAN_API_KEY / CIELO_API_KEY. | SOL | Wallet leaderboards | Per scan run | Provider-dependent |
| CryptoQuant · GlassnodeNot configuredPaid. Dormant without CRYPTOQUANT_API_KEY / GLASSNODE_API_KEY. | Cross-chain | Exchange netflow (accumulation / distribution) | Provider cadence, typically daily | Provider-dependent |
| Nansen · Arkham · Dune · KaitoNot configuredBenchmarked rather than relied upon — these are the providers scored on /leaderboard/providers. Dormant here without credentials, and a dormant cell is published as "not configured" rather than counted against the provider. | Cross-chain | Wallet labels, holder counts, volume attribution, social velocity | On demand, when benchmarked | Provider-dependent |
| ArbitrumNot configuredNot wired to any feed in this codebase. Listed so its absence is explicit rather than inferred from a gap. | ARB | — | — | — |
2
What we do with it
We do not resell provider data. We compute derived intelligence from it. Nothing on this site republishes a third party's dataset; what is published is a statistic, a rank or a written judgment computed from data we are licensed or publicly permitted to read.
The distinction is enforced in code, not only in policy. The social and research integrations are aggregate-out by construction: only derived numbers — a z-score, a sentiment float, a narrative label — are persisted, never the raw payload. Where a provider's terms restrict redistribution, the integration is written so that redistribution is not possible from what we store.
The market-data clients are a stricter case again: public REST, keyless, read-only, with no order path anywhere in the codebase. A credential in the environment is honoured where it raises a rate limit and is never required.
3
Coverage, outages, and what breaks first
Provider outages affect coverage. When a source is unreachable the product is designed to lose a feed rather than to invent one — the honest output of a missing provider is a missing number, and every surface that can be empty says why it is empty.
- A missing engine is reported as a missing engine. Endpoints answer
503with the reason rather than404, because 404 is a claim about the subject when the truth is a claim about our deployment. - A fetch failure is never stored as a zero. The shared HTTP helper raises rather than returning a default, so a hole in five years of history cannot be silently recorded as a real zero-volume bar.
- Rate limits are backed off, not treated as outages. A 429 from a free public endpoint is the expected shape of “slow down”. Retries are capped, exponential and jittered.
- A schema change is recorded as a coverage failure, never as a wrong answer. When a provider moves a response field, the benchmark records an error with the field name in it rather than scoring the provider as inaccurate.
There is no uptime commitment attached to free access. Paid tiers carry one; it is set out in the service-level commitments and current subsystem health is on the same page.
4
Corrections
If a row here is wrong, or a provider believes we have mischaracterised their data or their terms, write to [email protected].
How the numbers are computed from these inputs is set out in the methodology.