Backtesting & Validation

How Turnover and Trading Costs Change a Backtest

Same schedule. Three strategies. Very different trading bills.

A backtest that ignores trading costs is describing a portfolio nobody can own. The cost of a single trade is small, but how often a strategy trades decides whether that small cost stays small or quietly eats the result.

Published · Insight 008

The basics

What turnover is, and why it multiplies costs

Turnover measures how much of a portfolio is bought and sold at each rebalance. If a three-stock portfolio keeps all three holdings, turnover is zero. If it replaces all three, it sells 100% of the portfolio and buys 100% back, for 200% of the portfolio traded.

Trading costs are usually quoted in basis points per trade, where one basis point is 0.01%. A cost of 10 basis points on 200% of the portfolio costs 0.20% at that rebalance. Repeat that every month and it adds up to more than 2% a year.

Cost 01

Bid-ask spread

Buying at the ask and selling at the bid loses the gap between them on every round trip, even with zero commission.

Cost 02

Market impact

Larger orders can move the price before they are filled, especially in less liquid stocks or at the open and close.

Cost 03

Taxes and timing

In a taxable account, frequent selling can turn long-term gains into short-term gains. Most backtests, including these, leave taxes out.

Annual cost drag is roughly the cost per trade, times the share of the portfolio traded at each rebalance, times the number of rebalances in a year.

A real comparison

Three strategies, one schedule

Market Data Hunter tested three stock-ranking ideas on the same point-in-time S&P 500 universe from 2015 to 2026. All three rebalanced every 20 trading days, about 12.6 times a year, and held equal-weight portfolios of the top 3, 5 or 10 stocks. The table shows the Top 3 portfolios.

StrategyHoldings replaced (of 3)Traded per rebalanceYearly drag at 10 bpsYearly drag at 25 bps
100-point score2.9193%≈ 2.4%≈ 6.1%
63-day momentum2.2143%≈ 1.8%≈ 4.5%
Trend Quality1.066%≈ 0.8%≈ 2.1%

Top 3 portfolios, 144 rebalances, January 2015 to May 2026. Traded weight counts both sales and purchases as a share of the portfolio. Yearly drag is the per-rebalance cost times 12.6 rebalances, before compounding.

The 100-point score replaced nearly its entire portfolio every month. Trend Quality replaced about one stock in three. At the same cost per trade, the first paid roughly three times as much.

What it did to the results

Costs widened losses and shrank gains

The backtests were run at four cost levels, from zero to 25 basis points per trade. The next table shows the Top 3 average return versus SPY per 20-day period at three of them.

StrategyNo costs10 bps25 bps
100-point score−0.31%−0.51%−0.80%
63-day momentum+0.83%+0.69%+0.47%
Trend Quality+1.34%+1.27%+1.17%

Average excess return over SPY per 20-trading-day period, Top 3 portfolios. Costs are fixed assumptions per one-way trade, not measured trading costs.

Going from zero to 25 basis points cost the 100-point score almost half a percentage point every period, more than its entire gap to the market before costs. Trend Quality lost about a sixth of a point. For the 63-day momentum Top 10 portfolio, 25 basis points was enough to turn a small average gain into a small loss.

Why they differ

Slow signals trade less

The likely reason is how fast each signal changes. Trend Quality averages a stock's distance from its 200-day average over 63 trading days, so a single day's move barely shifts the ranking and the leaders tend to stay leaders.

A 63-day price change compares just two prices, so it can jump when either end of the window moves. The 100-point score also awarded points for a single day's volume against its 20-day average, which can flip from one rebalance to the next.

Faster

Point-in-time signals

A change between two dates or a one-day reading reacts quickly, so rankings reshuffle often.

Slower

Averaged signals

Signals built from many days of data move gradually, which keeps holdings, and costs, more stable.

Trade-off

Speed is not free

A faster signal must earn more before costs just to break even after them.

Turnover is part of a strategy's design, not an afterthought. Two signals with the same pre-cost return can have very different after-cost results.

Checklist

Questions to ask about costs in any backtest

01

Are trading costs included at all, and at what level?

02

Is the cost charged on both the buy and the sell?

03

How much of the portfolio is replaced at each rebalance?

04

How many times a year does the strategy rebalance?

05

Does the result survive a higher cost assumption, such as 25 basis points?

06

Are the stocks liquid enough for the assumed cost to be realistic?

07

Are taxes relevant for the account the strategy would run in?

08

Is the edge before costs large compared with the yearly cost drag?

For a sense of what long-run market returns look like before any active trading, try the S&P 500 Return Calculator. A strategy that trades every month has to beat that buy-and-hold baseline after its own costs.