Backtesting gets a bad reputation because many traders do it the wrong way. They tweak rules until a chart looks perfect, then wonder why live results don’t match. A good backtest is simpler: prove your idea works “well enough” without special treatment, and learn how it behaves when the market isn’t friendly. Here’s a plain-English way to do that for stocks or crypto.
Start with a clear, short idea
Write your strategy in one or two sentences a friend could follow. For example: “Buy pullbacks to yesterday’s high that hold above it on the next candle; sell at the prior swing high or end of day.” If your rules need a paragraph and three exceptions, they’ll probably crumble outside your test.
Pick data that reflects real life
Choose symbols you’d actually trade and a period that includes good and bad conditions—trend, chop, panic, quiet. For crypto, include weekends and overnight action. For stocks, include earnings seasons and a couple of rough months. The goal isn’t the “best year ever”; it’s a mix that looks like the world you’ll face.
Measure what matters, not everything
Track a few simple numbers: average win, average loss, win rate, and what an average trade makes after costs. Add two guardrails: deepest drawdown (worst dip) and how long it took to recover. If a strategy makes money but takes months to heal after a rough patch, will you realistically stick with it? If not, adjust size or rules until the ride is bearable.
Don’t “peek” at the future
Design your rules without looking at the results bar-by-bar, then test them. If you keep changing rules to fix each past loss, you’re teaching the system yesterday’s answers. A quick safeguard: split your history in two. Build on the first chunk; check on the second without touching the rules. If it only works where you trained it, it isn’t ready.
Keep costs and slippage honest
Include fees, spreads, and a little “friction” for getting in and out—especially on small caps and thin crypto pairs. If you trade news or breakouts, add a bit more to reflect fast moves. A strategy that survives with realistic costs is far stronger than one that needs perfect entries to shine.
Sizing rules: small, steady, repeatable
Use a steady percent-of-account or a fixed dollar risk per trade in the test. Avoid pumping size after a win or shrinking it after a loss—the backtest won’t match your real behavior. If volatility changes a lot, consider translating your dollar risk into size using the distance to your stop, so each trade risks roughly the same cash.
One knob at a time
When you tweak, change a single setting and retest. If you change three things and it looks better, you won’t know which one helped. Aim for “works across a range” rather than “perfect at one number.” If a rule only wins when a lookback is exactly 13 but fails at 12 or 14, that’s fragile.
Walk it forward before going live
After your first split test, roll the window: move your “build” period forward a bit, keep the same rules, and check the next slice of data. Do this two or three times. You’re asking, “Can these rules travel through time without help?” If the answer is yes—with reasonable dips—you’re close.
From test to trading without shocks
Start small. Trade a fraction of your planned size and mirror the backtest rules exactly—same entry, same exit, no extra trades. Track any slippage or missed fills so you can update assumptions. After a few weeks, compare live results to your “expected” numbers. If they’re in the same neighborhood, scale slowly.
A weekly checklist you can actually do
1) Re-read your one-sentence rules. 2) Run the same test on last week’s data—no changes. 3) Log average win, average loss, win rate, net per trade, max dip, and days to recover. 4) If results slip, change one knob or reduce size; don’t rebuild everything. 5) Keep notes on market conditions so you learn when your idea shines or struggles.
Bottom line
A trustworthy backtest isn’t a trophy chart—it’s a realistic rehearsal. Keep the rules short, include rough markets, add honest costs, and prove the idea on data it hasn’t seen. If it holds up without special treatment, you’ve built something you can take from spreadsheet to screen with confidence.