Backtesting software for swing traders

You hold for days to weeks, you make decisions on daily or 4-hour bars, and you want to know whether the setup you have been trading by eye actually works. Most backtesting advice is written for people who need tick data and sub-second fills. You do not, and the tool that suits them is often the wrong one for you.

A question that recurs on r/swingtrading is how to validate a setup before trading it live, and the replies tend to name a tool without asking what the setup needs. Swing trading has its own list — a short one — and the operating system, the data feed and the price tier matter less than whether the tool covers that list.

This page lays out what a swing backtest needs and does not need, surveys the tool families with each one's genuine strength named first, puts them side by side on the properties that decide whether a backtest is honest, and ends with who should stay with what they already have.

What a swing backtest needs that a day-trading backtest does not

Holding overnight and over weekends changes the problem in four ways, and a backtester built for intraday work can get every one of them wrong while still looking sophisticated.

  1. Gaps. A stop at 2% below entry is a promise the market does not keep when the stock opens 8% down on earnings. The backtester has to fill the stop at the open, not at the stop price. Many do not by default, and the difference is the whole left tail of your trade distribution.
  2. Adjustments. Dividends and splits happen while you are holding. Unadjusted data makes a dividend look like a loss and a split look like a crash; adjusted data with the wrong adjustment method leaks. The data guide covers which to use.
  3. Trade count. A daily-bar swing strategy on one instrument might produce twenty trades a year. Ten years is two hundred trades, which is roughly the minimum for the error bars to say anything — see how many trades a backtest needs. The tool has to make long histories easy, because trade count is your binding constraint.
  4. Costs at the right scale. A day trader's edge lives or dies on the spread. A swing trader's edge is larger per trade and the spread matters less — but slippage on a gap open, and borrow cost on a multi-week short, matter more. The cost model needs those two, not tick-level fill simulation.

And what you do not need: tick data, order-book replay, sub-second latency modelling, or intrabar fill simulation beyond the stop-versus-target question. Tools that lead with those features are solving a day trader's problem, and their cost — in money, setup, or complexity — buys you nothing.

The tool families, with their real strengths

Chart-native platforms

TradingView is where most swing traders already are, and its Strategy Tester lets you write the setup in Pine Script on the same chart you trade from, with a large library of community scripts to start from. For a rule you can see on a chart, nothing is faster to try. Its limits — history depth that varies by plan, intrabar fills that are approximations, no machine learning, and repainting that is easy to write — are covered in the TradingView page. For a swing trader on daily bars the history limit is the one that bites: two hundred trades needs a decade, and whether you get a decade depends on your plan.

Scan-and-test platforms

TrendSpider's strength is defining a setup as a scan — automated trendlines, multi-timeframe conditions, pattern recognition — and testing what the scan finds. If your swing setup is "stocks breaking a trendline on rising volume", that is genuinely hard to express elsewhere and easy there. Where it stops is compute metering, thin honesty settings and no machine learning; the TrendSpider page goes through each.

Desktop portfolio backtesters

AmiBroker is the swing trader's classic: fast, portfolio-level backtesting across hundreds of symbols with ranking and position limits, decades of history, and a scripting language built for exactly this. If your strategy is "buy the top five by momentum each month", it is the reference tool. It is Windows-only and code-required, and the AmiBroker page covers what that costs on a Mac or Linux machine.

Code libraries

Backtrader, backtesting.py, vectorbt and a pandas script handle daily bars well and give you total control over gaps, adjustments and costs — because you write all of it. That is the strength and the cost in one sentence. Every honesty guardrail is yours to build and yours to forget. The backtesting guide is the checklist the libraries do not enforce.

Local no-code research labs

A newer family: tools that run on your own machine, need no code, and ship with honest defaults — next-bar fills, costs on, a time split with an embargo gap, walk-forward validation — rather than leaving them for you to remember. Their limits are usually scope: one instrument at a time rather than a portfolio, and a smaller indicator library than the chart platforms. The local vs. cloud page covers what local buys and costs.

Side by side

Tool families for swing trading, on the properties that decide whether a backtest is honest
Chart platformScan-and-testDesktop portfolioCode libraryLocal no-code lab
Daily / 4H barsYesYesYesYesYes
History depthTieredTieredYour dataYour dataPreloaded, 10+ yrs
Gap fills honest by defaultNoVariesConfigurableYour jobNext-bar fills
Costs modelledBasicBasicConfigurableYour jobYes, on by default
Walk-forwardNoNoYes, scriptedYour jobYes
Machine learningNoNoNoYes, with librariesYes
Portfolio backtestsNoLimitedYesYesNo
Runs quotaPlan-dependentMeteredNoneNoneNone
Coding neededPine ScriptNoAFLPythonNo

The portfolio row is the honest one to read twice. If your swing strategy is a ranking across a universe — buy the strongest ten, rotate monthly — the desktop backtesters and the code libraries are the only families that test it properly, and no amount of single-instrument honesty substitutes.

The six settings to check, whatever you choose

Any tool in any family produces an honest swing backtest or a flattering one depending on six settings, and the no-code guide turns them into a checklist for judging a tool.

Free tools and the question of what is worth paying for

Two questions appear together on r/Daytrading and r/swingtrading: which backtesting tool is worth paying for, and what to use when you cannot pay for any. The honest answer to both is that the price is a poor guide. A free code library with the six settings done right beats a paid platform with them hidden, and a paid platform you already use beats a free one you will not learn. Judge the tool on the settings above, then on whether it covers your strategy's shape — single instrument or portfolio — and only then on what it costs. Plan tiers change; check current plans rather than trusting any page's numbers, including this one.

A quick decision tree

  1. Is your strategy a ranking across a universe? Yes: a desktop portfolio backtester or a code library. Nothing else tests it.
  2. Is the setup something you draw on a chart? Yes: start on your chart platform, then validate the survivor somewhere with walk-forward and honest costs.
  3. Is the setup a scan? Yes: a scan-and-test platform, with the same second step.
  4. Do you write Python, or want to? Yes: a code library, with the six-setting checklist taped to the monitor.
  5. Single instrument, no code, and you want the honest defaults done for you? A local no-code lab.

Stay where you are if

Where Wise Apple sits

Wise Apple is a local no-code research lab whose natural timeframes are exactly the swing trader's: 1-hour, 4-hour, daily and weekly bars, with ten-plus years of stock, ETF and crypto history preloaded, so the two-hundred-trade problem is usually solved before you start. Next-bar fills, the cost models, a chronological split with Embargo Bars, and a Walk-Forward Window are on by default; nineteen machine-learning models are on the bench; every trade sits in a candle-by-candle journal with CSV export; and alerts fire at the same timeframes to Telegram, Discord, email, SMS or a webhook. It tests one instrument at a time, so a ranked-basket strategy is not something it can test. It places no trades, runs in the browser on your own machine, and is early research software from one builder. If your swing strategy is one instrument and one set of rules, it is a fit; if it is a portfolio, the desktop backtesters above are the right answer and this page says so.

Questions swing traders ask about backtesting software

What is the best backtesting software for swing trading?

It depends on the strategy's shape. A ranked basket across many stocks needs a portfolio backtester such as AmiBroker or a Python library. A chart-drawn setup can start in TradingView's Strategy Tester. A single-instrument rule with no code is where local no-code labs fit. Whichever family, judge it on gap handling, costs, a chronological split, walk-forward, and trade-level inspection.

How do I backtest a swing trading strategy without coding?

Write the entry, exit and sizing rules down as explicit conditions first. Then use a tool that exposes fill timing, costs, a time-based split and walk-forward as settings — TradingView for chart rules, a scan platform for scan rules, or a local no-code lab for rule-plus-model strategies. Check the trade count: on daily bars you usually need a decade to get enough trades to trust.

Do I need tick data to backtest swing trades?

No. Swing decisions are made on daily or 4-hour bars, and bar data is enough provided the backtester fills stops at the open when the price gaps through them and resolves bars where a stop and a target both fall inside the range conservatively. Tick data adds cost and complexity without changing a daily-bar result.

Why does my swing trading backtest ignore gaps?

Many backtesters fill a stop at the stop price by default, even when the next open is far below it. That removes the worst losses from the backtest and flatters the strategy. Look for a setting that fills at the open on a gap, or inspect the trade list for stop-outs filled exactly at the stop price on days the instrument opened well past it.