Skip to content

Crypto data for backtesting: the chore before the strategy

Before you can test a single idea you need years of clean price data, funding rates and each coin's trading rules. Building that pipeline is a project of its own, and the mistakes in it end up inside your results. Here is what good data needs and where homemade versions go wrong.

It is bigger than it looks

One year of 1-minute bars is 525,600 rows for a single coin. Multiply by hundreds of coins and several years and you are managing a serious dataset: downloading it politely from exchange APIs that rate-limit you, storing it in a format you can query quickly, and keeping it current every day.

What good backtesting data needs

  • 1-minute (or finer) bars. Hourly or daily bars hide the intraday wicks that trigger stops and liquidations.
  • Consistent timestamps. One timezone (UTC) and no silent shifts between files.
  • Gaps that are visible. Missing bars should be known and handled, not interpolated away.
  • Funding rates, because holding a perpetual across a funding time costs or pays money.
  • Instrument rules: tick size, lot size and leverage limits per coin, as they applied at the time.
  • Enough history before the test period for indicators to warm up. A 200-day average is meaningless on day one.
  • An honest universe. Ask which coins are included and whether ones that faded or were delisted are part of what the strategy is tested on.

A quick audit of any dataset

Whether you built it or bought it, a few checks catch most of the damage before it reaches a result.

  • Count bars per day. A full UTC day of 1-minute bars is 1,440. Days well short of that point to gaps.
  • Look for flat runs. Many identical closes in a row usually mean a feed stalled and the last price was repeated.
  • Check each bar is possible. The high must be at least the open and close, and the low at most; the volume must not be negative.
  • Check order. Timestamps must be strictly increasing, with no duplicates after a merge.
  • Compare a sample with a second source. A handful of random days will show a systematic offset.
  • Look at the odd coins. Newly listed ones, renamed symbols and thin markets are where errors cluster.

Where do-it-yourself pipelines break

The common failures are quiet ones: a bad tick that creates a fake trade, a symbol that changed name, a day of missing bars filled with the last price, a timezone off by 5.5 hours. Each can flatter a strategy without raising an error. You find out when a live account disagrees with the backtest.

What the Lab already holds

The Lab keeps years of 1-minute bars for 900 Binance USDⓈ-M perpetuals, with funding rates and instrument data, refreshed twice a day. You choose coins and dates and run; there is nothing to download.

History matters at the edges too. Each coin is loaded with the warm-up its indicators need, sized per coin. If a coin was listed too recently for a filter to be ready, the run says which coin and until when, rather than trading without the filter and not telling you.

Common questions

Can I bring my own data?
The Lab runs on its own curated Binance perpetuals dataset, so results are comparable and reproducible. If you need an instrument it does not cover, the data is the first thing to check.
Why 1-minute bars?
Because stops, targets and liquidations happen inside bars. With 1-minute bars, and the trade tape for exact exits, a backtest sees the wicks that coarser data hides. See backtesting.

Updated . Read this page as Markdown. Trading leveraged crypto derivatives can lose more than your margin; nothing here is investment advice.