A step-by-step checklist for backtesting crypto trading strategies without hiding costs, leakage, overfitting, or execution constraints.
Reviewed by Alphora Research
Updated June 20, 2026
What to remember
Data version and point-in-time assumptions
Strategy rules and parameter values
Fee, slippage, funding, and borrow assumptions
Benchmark and out-of-sample split
Short answer
Define the exact trading rules, gather point-in-time market data, model fees and slippage, run the strategy across realistic historical windows, and judge the result with drawdowns, turnover, stability, and out-of-sample behavior rather than headline return alone.
Step 1: specify the rules before testing
Write down the universe, signal formula, rebalance timing, position sizing, exposure caps, and exit rules before looking at the result. Rules that change after seeing the chart are part of the research process, not clean validation.
Step 2: use realistic crypto data
Crypto backtests often fail because they use clean candle data but ignore funding, exchange outages, changing liquidity, delistings, spread, borrow constraints, and timestamp alignment. The data model should match what the strategy would have known at decision time.
Step 3: evaluate risk and robustness
Review maximum drawdown, volatility, turnover, Sharpe or Sortino, hit rate, capacity, tail periods, parameter sensitivity, and whether the edge survives a separate evaluation window. A tradeable strategy needs a durable process, not one lucky equity curve.
What to record for every run
Every backtest run should leave enough evidence for another researcher to understand what changed. That means logging the data snapshot, code version, parameters, cost model, evaluation window, benchmark, and reason the run was created.
Data version and point-in-time assumptions
Strategy rules and parameter values
Fee, slippage, funding, and borrow assumptions
Benchmark and out-of-sample split
Notes on what would invalidate the result
When to stop testing
A backtest loop should stop when new changes mostly explain the past instead of improving the process. If each iteration adds another exception, filter, or parameter to fix one historical drawdown, the research is probably overfitting.
The idea needs too many exceptions to survive
Small parameter changes reverse the conclusion
The edge disappears after realistic costs
Paper behavior does not resemble the backtest
How Alphora fits in
Alphora's public docs and catalogue are organized around explicit signals, strategy construction, validation notes, and implementation caveats so traders can keep the research workflow inspectable.