Where Crypto Backtest Data Comes From: Exchange APIs, Aggregators, and Institutional Feeds

Two traders test the same strategy on the same coin and get different results. The rules are identical, the fees are identical, and neither trader made a mistake. The difference was baked in before either backtest started: they used different price data.
Where historical data comes from is the most underrated decision in backtesting. This guide explains the three families of crypto historical data sources, why they disagree, and what to demand before trusting any backtest.
The Three Families of Crypto Historical Data Sources
Almost every crypto price series in existence descends from one of three sources:
Exchange APIs. Every major exchange publishes historical candles and trades through its own API. This is ground truth for that venue: the actual prices that traded on Binance, Coinbase, or Kraken
Aggregators. Services that combine prices across many venues into a single blended series. Excellent for display and reference, less suited to trade-level simulation, because the blended price is not a price anyone could have traded
Institutional data providers. Companies that collect venue-level data at scale, clean it consistently, and license it to funds and platforms. Kaiko is the established example in crypto
The distinctions are not marketing. Each family answers a different question, and backtesting asks a specific one: what could this strategy have actually bought and sold?
Here is a concrete way to apply that test. Take a strategy you can already describe in plain English, for example "Buy BTC when the 20-period EMA crosses above the 50-period EMA, and exit when it crosses back below", and before reading a single metric, ask which venue produced the candles behind it. If that question has no clear answer, you have found the first thing to fix.
Why the Same Coin Has Different Histories
Even between two exchange APIs, the same coin produces different series. That is normal, and understanding why explains most backtest confusion:
Venues quote different prices. BTC on one exchange and BTC on another can differ by meaningful amounts in fast markets. A strategy tested on one venue's series did not trade the other's prices
Candles are constructed, not discovered. Daily bars depend on time zone cutoffs and how a provider defines the close. Two providers can honestly report different daily closes for the same coin
Gaps and outages happen. Exchanges go down, pairs get halted, APIs fail. Whether a provider forward-fills, interpolates, or leaves gaps changes every indicator computed afterward
Pairs disappear. Coins get delisted and delisted pairs vanish from history. Data that only contains today's survivors makes strategies look better than reality, because failures quietly disappear
Wicks matter more than opens. For stop logic and fill simulation, the extreme prices inside a candle decide results. Providers that smooth or approximate wicks change backtest outcomes without changing the chart
What Good Backtest Data Looks Like
Strip away the labels and good backtest data has four properties:
Venue-level provenance. You know exactly which exchange each series came from, not just which aggregator packaged it
Enough resolution. Tick or trade-level data for fill-sensitive strategies; reliable bar data for slower ones
Consistency over time. The same collection and cleaning rules applied across the entire window, so a five-year test is not three different datasets stitched together
Survivorship awareness. Delisted pairs are handled honestly, so the test does not quietly winnow history down to winners
How CoinQuant Handles Data Provenance
CoinQuant's design choices answer the provenance question directly. Backtests run on exchange data collected by Kaiko, one of the established institutional market data providers, rather than on a blended display price.
That means:
The candle behind a result comes from a venue. BTCUSDT data is Binance BTCUSDT data, not an average of venues
The history runs deep. Coverage goes back to 2017 for BTC
Simulation is tick-accurate. Fills are simulated against granular data instead of idealized signal prices, which matters most for strategies that trade often
Costs are modeled by default. A 0.1% taker fee is applied and reported, so the result reflects trading reality
The practical effect is that a CoinQuant backtest is reproducible in a way a blended-price backtest cannot be: the same strategy on the same market produces the same numbers, and those numbers describe a market that actually existed.
Five Questions to Ask Any Data Source
Before trusting a backtest, ask where its data came from. These five questions separate serious sources from convenient ones:
Which venue produced this series? If the answer is "a blend," you are testing a market that never traded
How are gaps and outages handled? The method should be documented, not silent
Does the history include dead pairs? Survivorship bias flatters results without leaving a trace
What resolution is available? Bar data for slow strategies, tick data for fill-sensitive ones
Who cleans it, and how consistently? A five-year backtest needs five years of consistent treatment

Why This Matters More in Crypto Than Anywhere Else
Traditional markets have decades of consolidated, regulated data infrastructure. Crypto grew up venue by venue, in public, in real time. The data exists, but it exists in fragments, and whoever assembles those fragments decides what your backtest sees.
That is why serious platforms pay to license institutional-grade feeds instead of scraping whatever is convenient. The cost is not the point; the point is that the numbers behind a decision need a chain of custody. An institutional provider is not used because it is expensive, but because it is auditable.
The biggest backtest illusions in crypto are not caused by bad strategy logic. They come from a series that looks like a market and is not one.
Common Mistakes to Avoid
Backtesting on a blended display price. If no one could trade it, you cannot claim you tested it
Mixing data sources across a window. Different cleaning rules mid-test break the comparison
Ignoring survivorship. Histories that exclude delisted pairs make every strategy look smarter
Treating wick accuracy as a detail. Stops and fills live inside wicks; approximation changes results
Asking "how much data" instead of "which data." Five years of the wrong series beats nothing, but only barely
The Practical Lesson
Crypto data descends from three families: exchange APIs, aggregators, and institutional providers, and they answer different questions
The same coin has genuinely different histories across venues, candle conventions, and cleaning methods
Good backtest data is venue-level, consistently cleaned, resolution-appropriate, and honest about delistings
CoinQuant runs backtests on Kaiko-collected exchange data with BTC coverage back to 2017, tick-accurate simulation, and costs modeled by default
A backtest is only as honest as its data. Check the provenance before you check the returns, and your test results will start meaning something after the trade as well as before it.
Backtest your strategy free on venue-level data and see the difference provenance makes. Start on CoinQuant
Disclaimer:
Key Takeaway