Artículo

Backtesting in Trading: What It Is and How to Backtest a Strategy

Backtesting is testing a trading strategy's rules on historical price data to see how the strategy would have performed. Backtesting lets a trader check an idea without risking real money. A good backtest only describes the past, and past results do not guarantee future results.

Key Takeaways

  • Backtesting tests a trading strategy's rules on historical price data to show how the strategy would have performed in the past, without risking real money.
  • Backtesting follows six steps, which are defining exact rules, choosing the data, running the backtest and logging every trade, adding trading costs, reviewing the results and retesting with out of sample data.
  • Backtest results need to be read together, because a high win rate can hide a losing strategy if the average loss is bigger than the average win. Check profit factor, gross profit, P&L, maximum drawdown and expectancy too.
  • Overfitting is a main reason a strong backtest fails in live trading, because rules tuned too closely to past data match chance patterns. Out of sample data is the main check against overfitting.
  • MT4 and MT5 both have a built in Strategy Tester that runs an Expert Advisor (EA) over historical price data and reports the results.
  • A good backtest does not guarantee future profits, so the usual next step after backtesting is forward performance testing on a demo account, then forward test in live market conditions before live trading at a small size.

What Is Backtesting in Trading?

Backtesting in trading is the process of testing a trading strategy’s rules on historical price data and broader historical data to see how the strategy would have performed in the past without risking real money. The trader applies the same rules to past prices without placing a single real trade.

For intermediate to advanced retail traders, especially those trading forex, CFDs and other markets on MetaTrader 4 or MetaTrader 5, backtesting is a practical way to evaluate a trading system before risking capital. It helps filter out weak ideas, spot where strategy rules need work, and build confidence through proper backtesting rather than guesswork. A strategy that would have lost money over several years of past data can be dropped before it costs anything.

Any trading idea can be backtested as long as the idea can be written as exact rules. A rule such as “buy when the price looks cheap” cannot be tested, because two traders would read the same chart differently. A rule that says exactly when to enter, when to exit and how much to risk can be tested manually on historical charts, with tools such as fx replay, or through automated testing using clean historical data. In this guide, you’ll see how backtesting works step by step, the difference between manual and automated methods, how to start backtesting on MT4 and MT5, which key metrics and performance metrics to review, and the common mistakes that can create false confidence, especially when there is not enough data or transaction costs are ignored.

Backtesting also has an honest limit. It evaluates past performance, but it cannot prove a strategy works in future markets. Markets change, slippage and execution matter, and a strong backtest still needs comparison with forward testing, scenario analysis and a sensible move into live trading. So what actually happens when you run a backtest?

How Does Backtesting Work?

Backtesting works by applying a strategy's rules to past prices and recording every trade those rules would have taken. The backtesting process has four stages.

StageWhat Happens
1. RulesThe trader writes the strategy as exact rules for entries, exits and risk.
2. Past pricesThe rules are applied to past prices one bar at a time, as if each bar were happening live. A bar is one period on the chart, such as one hour or one day.
3. Simulated tradesEvery trade the rules would have taken is recorded, with its entry price, exit price and result.
4. ResultsThe performance metrics are measured, for example net profit, win rate and maximum drawdown.

Diagram of how backtesting works in four stages: trading rules, past prices, simulated buy and sell trades, and backtest results

A simplemoving average crossover makes a clear example strategy. Asimple moving average (SMA) is the average closing price over a set number of bars. A stop loss closes a losing trade at a set price, and a take profit closes a winning trade at a set price. The example rules below are for illustration only and have no real results attached.

  • The entry is a buy when the 20 period SMA crosses above the 50 period SMA.
  • The stop loss sits 30 pips below the entry price. A pip is a small unit of price change in a currency pair.
  • The take profit sits 60 pips above the entry price.

After the first backtest, the trader can change one setting, such as the SMA periods, and run the backtest again to compare the results. Changing one setting at a time and retesting is how most traders refine a strategy, and that process takes time worth understanding. But changing settings too often can create false confidence if the edge comes from random luck rather than a robust strategy.

Why Do Traders Backtest a Strategy?

Traders backtest to find out whether a strategy would have worked before risking real money on it. Backtesting gives traders five practical benefits.

  • No real money is at risk, because a losing strategy shows up in the backtest, not in the trading account.
  • A backtest is fast and covers years of past data in hours or days.
  • Traders get a chance to adjust by changing a rule, retesting and comparing the two backtest results.
  • Fewer bad strategies reach live trading, because strategies that never worked in the past can be dropped before they cost money.
  • Traders gain confidence to follow the rules, because a trader who has seen a strategy survive losing streaks in a backtest is more likely to stick to the rules during a live losing streak—but only with proper backtesting, since poor testing can create false confidence.

Confidence from a backtest is built on evidence from the past, so a backtest still gives no certainty about the future. Getting these benefits depends on following each backtesting step properly.

How to Backtest a Trading Strategy Step by Step

To backtest a trading strategy, define the strategy's rules, choose the data, run the backtest and log every trade, add trading costs, review the results, then retest with out of sample data. The six backtesting steps work for both manual and automated backtesting, and each step builds on the one before it. The first step starts with the rules.

Define the Trading Strategy You Want to Backtest

Every rule in a trading strategy must be exact enough that two traders following the rule would take the same trades; write down these strategy rules before the backtest starts.

  • The entry rule says exactly when to open a trade.
  • The exit rule says exactly when to close a trade.
  • The stop loss sets where a losing trade is closed.
  • The take profit sets where a winning trade is closed.
  • Risk per trade sets how much of the account each trade can lose, for example 1%.
  • Filters add any extra rules, such as trading only during certain hours.

These rules form the trader's trading system and should stay the same rules through testing.

Position sizing, meaning how many units to trade for that level of risk, should also be fixed before the backtest. The example below turns one vague rule into an exact rule.

Vague RuleExact Rule
Buy when the trend looks strong.Buy EUR/USD on the 1 hour chart when the 20 period SMA closes above the 50 period SMA. Place a stop loss 30 pips below entry and a take profit 60 pips above entry. Risk 1% of the account per trade.

Exact rules still need the right data to be tested on.

Choose Historical Market Data for Your Backtest

The data for a backtest is the historical price data for one market, on one timeframe, over one test period, also called the testing period.

  • The market is the instrument you want to trade, for example a currency pair such as EUR/USD.
  • The timeframe is the chart period the strategy uses, such as 1 hour or daily.
  • The test period is the span of dates the backtest covers.

The testing period should cover different market conditions, includingrising, falling and sideways markets, and both calmer phases and high volatility. The test period should also produce enough trades to judge the result, and the FAQ on how many trades you need gives common guide numbers. Use clean historical data from a trusted source when selecting historical data, because wrong prices create trades that never could have happened.

Run the Backtest and Log Every Trade

A backtest is run either by hand on a chart or with software that applies the rules automatically, and the Manual vs Automated Backtesting section compares the two methods. Either way, log every trade the rules would have taken.

  • Entry date, time and price
  • Exit date, time and price
  • Result in money or pips
  • A short note, such as why the trade was taken

Do not change the rules halfway through a backtest. If a rule needs changing, finish the current backtest, then run a new backtest with the new rule. The logged results only become realistic once trading costs are added.

Add Trading Costs to the Backtest

A backtest must include transaction costs, because real trades pay the spread, commission and slippage. Thespread is the difference between the buy price and the sell price. Commission is a charge per trade on some accounts. Slippage is the difference between the expected price and the price a trade actually fills at.

A backtest without trading costs shows better results than a trader would really get, and ignoring them can make a strategy that looked profitable lose money. For example, using made up numbers, a strategy that averages 5 pips of profit per trade before costs keeps only 3 pips per trade if trading costs average 2 pips per trade.

Diagram showing how trading costs cut a backtest’s profit: 5 pips gross minus spread, commission and slippage leaves 3 pips net

Review the Backtest Results

After the backtest finishes, review the key metrics and performance metrics together, because one number alone can make a weak strategy look strong. A high net profit with a large maximum drawdown is one example. The How to Read Backtest Results section explains each number, including gross profit, profitable trades, and P&L. A good result still needs one more check on data the strategy has never seen. Metrics such as Annual Return measure average annual growth, while the Sharpe Ratio helps assess risk adjusted returns, and a reading above 1.0 is generally favorable.

Retest With Out of Sample Data

Out of sample data is part of the historical price data that is kept aside and not used while building the strategy. Build and adjust the strategy on the first part of the data, then test the finished strategy once on the out of sample data, without changing anything.

For example, a trader might build the strategy on the first 70% of the data and keep the last 30% as out of sample data, though the split is only an example. If the results on the out of sample data hold up, the next step is to forward test the strategy on live data using the same rules.

Price chart split into 70% in-sample data for building a strategy and 30% out-of-sample data for checking backtest results

Walk forward testing repeats this build and check process over several new periods in a row. All six backtesting steps can be done by hand or with software.

Manual vs Automated Backtesting

Manual backtesting means replaying a chart and logging each trade by hand, while automated backtesting means software runs the strategy's rules over the data for you. The better method for a trader depends mostly on how exact the strategy's rules are.

FeatureManual BacktestingAutomated Backtesting
How it worksYou replay the chart bar by bar and log each trade by handSoftware runs your coded rules over the data
Best forStrategies that need judgementStrategies with fully exact rules
SpeedSlowFast
Coding neededNoSometimes (or a ready made Expert Advisor)
Main riskHindsight biasOverfitting

Manual Backtesting

Manual backtesting is a method where the trader uses replay on historical charts to step through setups one bar at a time, marks each trade as the rules would have taken it, and logs the result. Manual backtesting suits strategies that need some judgement, such as readingchart patterns, which software cannot easily copy.

The main risk in manual backtesting is hindsight bias, which happens when the trader can see what the chart did next and lets that knowledge shape the decision. To reduce hindsight bias, use the chart's replay mode or hide the right side of the chart so only past bars are visible.

Automated Backtesting

Automated backtesting is a method where the strategy's rules are written as code or set up in software, and the software runs those rules over the historical price data. In MetaTrader, a coded strategy is called an Expert Advisor (EA). Automated backtesting suits strategies with fully exact rules.

Automated backtesting is fast, and the software follows the rules every time with no emotion. The main risk in automated backtesting is overfitting. Changing a setting and rerunning the backtest takes seconds, which makes it easy to keep adjusting settings until the results look perfect.MetaTrader 4 andMetaTrader 5 both include a tool for running an automated backtest.

How to Backtest a Trading Strategy on MT4 and MT5

MetaTrader 4 (MT4) and MetaTrader 5 (MT5) both have a built in Strategy Tester that runs an EA on historical price data and reports the results. Tobacktest on MT4, follow these steps.

  1. Open the Strategy Tester from the View menu, or press Ctrl+R.
  2. Choose the EA you want to test.
  3. Choose the symbol, for example EUR/USD.
  4. Choose the model, either Every tick, Control points or Open prices only.
  5. Choose the timeframe and the date range.
  6. Set the spread.
  7. Tick Visual mode to watch the trades bar by bar, if you want to.
  8. Press Start.
  9. Read the backtest results in the Results, Graph and Report tabs.

Screenshot of the MT4 Strategy Tester with labelled steps to backtest an EA: Expert Advisor, symbol, model, date range, timeframe, spread and Start

The Strategy Tester in MT5 works the same way. MT5 offers testing modes including Every tick, 1 minute OHLC (the open, high, low and close price of each minute) and Open prices only. MT5 also adds 2D and 3D views for comparing optimisation results, which are the results of many different setting combinations.

The faster models in both platforms are less exact, because the faster models use fewer price points inside each bar. Strategy Tester results also depend on the quality of the historical price data in the platform. A Strategy Tester only runs EAs, so a strategy that needs judgement has to be backtested manually instead. Once the Strategy Tester finishes, the report shows the numbers to read.

How to Read and Evaluate Backtest Results

To read backtest results, traders should read the backtest's performance metrics together, because one good number can hide a weak strategy.

MetricWhat It MeansWhat to Watch
Net profitTotal profit or loss over the test, after costsCheck that costs were included
Number of tradesHow many trades the rules tookToo few trades can be luck
Win rateShare of trades that made moneyRead it together with average win and average loss
Average win and average lossTypical size of a winning and a losing tradeA low win rate can still work if winners are bigger than losers
Profit factorTotal money won divided by total money lostAbove 1 means it made more than it lost. It is based on gross profit and gross loss, and there is no official cut off
Maximum drawdownThe biggest fall from a peak in account value to a low before a new peakAsk whether you could accept that fall with real money
Annual ReturnMeasures the average annual growth rate of the investmentUse it to compare growth across tests of different lengths
Sharpe RatioAssesses risk adjusted returns; above 1.0 is generally favorableHigher values suggest better return for the risk taken
ExpectancyAverage result per trade over many tradesPositive means the rules made money on average in the test
Equity curveA chart of the account value over the testA steady rise is better than a few big jumps

Win rate needs to be read with the average win and the average loss. A strategy with a 40% win rate can still make money if the average win is much bigger than the average loss.

Profit factor above 1 means the strategy made more money than it lost during the backtest. Some traders use 1.5 as a minimum profit factor, but there is no official cut off.

Backtest equity curve chart marking a 29.6% maximum drawdown from a $135,000 peak to a $95,000 trough, with win rate and profit factor

Expectancy shows the average result per trade. For example, using made up numbers, a strategy that wins 40% of the time with an average win of $300 and loses 60% of the time with an average loss of $100 has an expectancy of $60 per trade. The sum is (0.4 × $300) minus (0.6 × $100), which equals $60.

Strong backtest results only count if the backtest was run fairly.

Common Backtesting Mistakes to Avoid

Most backtesting mistakes make a backtest look better than the strategy really is. Five common mistakes distort results and cause most of the problems.

Overfitting the Backtest

Overfitting, also called curve fitting, is adjusting a strategy's rules so closely to past data that the rules match chance patterns and fail on new data. Data dredging is a related mistake, where a trader tests many ideas on the same data until one idea looks good by chance. To avoid overfitting, keep the strategy's rules few and simple, and test the finished strategy on out of sample data.

Chart comparing an overfitted strategy’s strong backtest on in-sample data with much weaker results on out-of-sample data

Look Ahead Bias in Backtesting

Look ahead bias is using information in a trade decision that would not have been known at that moment. For example, a backtest that acts on a day's closing price before that day has ended uses a price no trader could have known. In manual backtesting, hindsight bias causes the same problem. To avoid look ahead bias, base each decision only on information available at that bar, and use a replay mode for manual backtesting.

Ignoring Trading Costs

Ignoring trading costs makes backtest results look better than live results, especially for strategies that trade often. A backtest should include the spread, commission and slippage on every trade. A backtest should also assume trades fill only at prices and hours a trader could really have traded.

Backtesting Too Few Trades

Backtesting too few trades is a mistake because a small number of trades can create false confidence or look good or bad because of random luck alone. A weak strategy can still win ten trades in a row. A larger number of trades gives a more reliable picture of how the strategy behaves, and traders need enough data; for high-frequency styles such as day trading, more trades and more data usually improve reliability, while the FAQ on how many trades you need covers the guide numbers traders commonly use.

Testing Only One Type of Market

Testing only one type of market means running a backtest over a period when prices mostly moved one way, such as a long rising market. A strategy tested only in a rising market may fail when markets fall or move sideways. A strategy that works on one currency pair may also fail on another currency pair. For share and index data, survivorship bias makes backtest results look better than they were, because the data leaves out companies that failed or were removed.

What Backtesting Cannot Tell You

Backtesting is only as accurate as its data, its trading costs and its rules, and even a careful backtest cannot tell you how a strategy will perform in the future. A careful backtest still has four limits.

  • A backtest cannot show how markets will behave next, because backtest results are based only on past data.
  • A backtest assumes the trader follows every rule perfectly, with no fear, greed or hesitation.
  • A backtest cannot fully copy live fills, slippage and sudden price jumps, so live trades can fill at worse prices.
  • A backtest cannot prove whether a strategy works or whether gains came from chance.

Forward performance testing checks what a backtest cannot, which is why traders should backtest first and then forward test before risking capital in live markets.

Backtesting vs Forward Performance Testing vs Scenario Analysis

Backtesting uses past prices, forward performance testing uses live prices as they arrive to forward test the strategy, usually on a demo account, and scenario analysis uses made up situations to see how a strategy might cope. A demo account is a trading account that uses virtual money.

Paper trading means recording trades on live prices without real money. Many traders use paper trading to mean the same thing as forward performance testing. The two terms overlap but are not always the same, because forward performance testing follows a strategy's fixed rules, while paper trading can be any practice trade made without real money.

FeatureBacktestingForward Performance TestingScenario Analysis
Data usedHistorical price dataLive prices as they arriveMade up situations
SpeedFast (years of data in a short time)Slow (weeks or months)Fast
Main questionWould these rules have worked in the past?Can I follow these rules in real time?What could happen if a certain event occurred?
Money at riskNoneNone on a demo accountNone

For a valid comparison, backtesting, forward performance testing, and live trading should follow the same rules.

Forward performance testing is also the first stage of moving a strategy from a backtest to live trading.

From Backtest to Live Trading

After a successful backtest, the next step is to test the strategy on live prices before risking capital. A good backtest is where that process starts. A common order has three stages.

  1. Run forward performance testing on ademo account for several weeks or months.
  2. Trade the strategy live at a small size.
  3. Compare the live results with the backtest results, and look into any big difference before trading larger, but only if the strategy is traded with the same rules used in the backtest and forward test.

Live results are usually somewhat weaker than backtest results, because live trading adds real slippage, real emotions and market conditions the backtest never saw. A small difference between live and backtest results is normal. A large difference is a reason to stop and review the strategy before risking more money.

Frequently Asked Questions

Can You Backtest a Trading Strategy for Free?

Yes, you can backtest a trading strategy for free. Manual backtesting on a chart costs nothing, and the Strategy Tester comes built into MT4 and MT5. Some backtesting tools charge for more historical price data or extra features. TMGM has a separate guide tofree forex backtesting software for traders who want more options.

Can ChatGPT Backtest a Trading Strategy?

Not on its own. ChatGPT and other AI chatbots have no built in price data or testing engine, so an AI chatbot cannot run a backtest by itself. An AI chatbot can help write code for a platform, such as an EA or a TradingView script, and help analyse a trade log. The backtest itself must still run on real data in a trading platform, and any AI output needs checking.

How Many Trades Do You Need for a Reliable Backtest?

There is no fixed number of trades for a reliable backtest. As a common guide, many traders aim for at least 100 trades spread across different market conditions, since too small a sample can create false confidence or make it hard to tell whether the edge is real rather than random luck. More trades usually give a more reliable picture, because a small number of trades can look good or bad by luck.

What Is Backtesting in Forex?

Backtesting in forex is the same backtesting process applied to currency pairs. For example, a trader might backtest a strategy on several years of past EUR/USD prices. A forex backtest should always include the spread, because the spread is one of the main trading costs in forex.

Does a Good Backtest Mean a Strategy Will Make Money?

No, a good backtest does not mean a strategy will make money. A good backtest shows the strategy would have worked on past data, but it does not guarantee actual trading success. Markets change, and live trading adds trading costs, slippage and emotions that a backtest cannot fully copy. Forward performance testing on a demo account is the usual next check before trading with real money, to see whether the strategy works before risking capital.

A group of expert analyst with strengths in fundamental and technical analysis, and years of experience in the Global Equity Markets, Forex, Precious Metals, Oils and other commodities, as well as Crypto, and so on.
Únete a más de 1.000.000 de clientes en nuestra galardonada plataforma de trading
1
Solicita una cuenta
real
2
Deposita fondos en tu
cuenta
3
Empieza a operar
al instante
Abrir cuenta