Every session starts with a gap — and most rules ignore it
This is the single biggest difference between backtesting a stock and backtesting an index future, and it breaks more imported strategies than anything else. CRTLAB's equity data is regular trading hours only — 09:30 to 16:00 New York. So the chart jumps straight from yesterday's close to today's open, and everything that happened in between lands as a gap.
A setup written on NAS100, which trades nearly around the clock, quietly assumes price is continuous. Move it to AAPL and that assumption breaks every single morning. Before you log a single trade, decide explicitly: does an overnight gap through your level count as a touch, an invalidation, or nothing at all? Whichever you pick, write it down before you test — deciding gap by gap while you replay is how hindsight gets into a sample.
The open is a different market to the rest of the day
The first half hour carries the overnight order imbalance and the opening auction. Volatility, spreads and volume in that window look nothing like 11:00, and a setup measured across the whole session is really two different edges averaged into one number that describes neither.
Replay it and tag each trade with the time it triggered. If your win rate at the open and your win rate at midday differ sharply, you do not have one edge with variance — you have two setups sharing a name, and you should test them separately.
Earnings are a scheduled coin flip inside your sample
Four times a year every one of these names gaps on a number no chart could have predicted. Leave earnings in your backtest without a rule and a handful of trades will dominate your results in both directions — the sample stops describing your setup and starts describing your luck with announcements.
Pick a rule and hold it: skip the week, close before the print, or trade through it deliberately and accept the variance. Then log which trades were earnings-adjacent so you can segment them out afterwards and see the edge with and without.
Seventeen tickers, but not seventeen independent tests
NVDA, AMD, MU, AVGO, QCOM, ARM and INTC are all semiconductors. QQQ is the index they sit inside, and TQQQ is that index at three times leverage. On a broad risk-off day most of them fall together, so a setup that looks like it worked across seven names may have worked once, on one move, counted seven times.
That inflates your apparent sample and hides your real drawdown — the day they all lose together is a single event your statistics never priced. Treat correlated names as one test, and read how many trades you actually need before you trust the number.
TQQQ deserves its own warning: leveraged ETFs reset daily, so their multi-day path decays away from three times the index. A swing setup proved on QQQ does not transfer to TQQQ by multiplying the result.
How to backtest stocks in CRTLAB
Load the ticker, jump to a date, and step forward one candle at a time with the future hidden. Mark entry, stop and target as you would live; the trade is logged and scored automatically, and the position size calculator converts your risk and stop distance straight into a share count.
US equities used to be the one part of the catalogue behind a plan. They are not any more — all seventeen names and ETFs open on the first chart, on the full history we hold, with every tool. There is no upgrade step between you and NVDA.
What you spend is candles: one per bar advanced, 10,000 free sample first, or unlimited at $14.99 a month. On a daily stock chart that is years of bars, which is why equities are the cheapest thing on the site to backtest properly.
History runs back to May 2018 for most names — around eight years, covering the 2018 correction, the 2020 crash and recovery, the 2022 bear market and everything since. Two exceptions are honest to know up front: COIN lists from its April 2021 IPO and ARM from September 2023, so both carry less history than the rest.
A page per ticker — pick the one you trade
Each of the seventeen has its own door, and each one opens a chart already loaded with that name. They are not seventeen copies of this page: every one carries the thing that is specific to backtesting that instrument — the ticker splice on META, the rebalancing decay on TQQQ, the overnight crypto move already inside COIN's opening gap, the regime change buried in NVDA's archive.
Semiconductors (seven, and they move together): NVDA · AMD · AVGO · QCOM · MU · INTC · ARM
Frequently asked questions
Which US stocks can I backtest?
Seventeen: NVDA, TSLA, AAPL, MSFT, AMZN, META, GOOGL, AMD, NFLX, AVGO, QCOM, MU, INTC, ARM, COIN, plus the QQQ and TQQQ ETFs. All replay candle by candle on regular-hours history.
Is stock backtesting free?
CRTLAB is free to try. You get all seventeen US stocks and ETFs, with every tool the product has, for your first 10,000 candles of replay — roughly two hours of stepping through a chart, no card needed. After the sample, unlimited replay is $14.99 a month, cancel any time. Equity data is regular-hours only and split-adjusted, so a 2020 Tesla chart shows the price you would have paid after the split, not before it.
How far back does the stock data go?
Most names run from May 2018, about eight years. COIN starts at its April 2021 IPO and ARM at its September 2023 IPO, so those two are shorter.
Does the data include pre-market and after-hours?
No. It is regular trading hours only, 09:30 to 16:00 New York. That is deliberate — it is the session where the volume is — but it does mean every day opens with a gap, which your rules need to account for.
Can I backtest a strategy across several stocks at once?
You can test them one at a time and compare. Be careful reading the combined result though: many of these names are semiconductors or move with the Nasdaq, so correlated winners can look like independent confirmation when they are really one market move counted several times.
