StrategyLab

Eight strategies,
in plain English.

What each one does, when it tends to work, and when it fails. The explanations are the tool’s own. The failures are included on purpose.

Backdrop: real BTC-USD daily candles, 1 Oct 2024 to 29 Sep 2026, Coinbase Exchange.

Trend following

SMA crossover

Buy when the short-term average price climbs above the long-term average.

Fast average
20 candles (2 to 100)
Slow average
50 candles (5 to 300)

What it does

Follows trends. It buys when the average price of the last 20 candles rises above the average of the last 50 candles, and sells when it drops back below. It does well when prices trend for a long time and loses small amounts over and over when prices move sideways.

When it tends to work

Long, clean trends. One entry near the start, one exit after the turn, and a lot of sitting still in between.

When it fails

Sideways markets. The averages cross back and forth, and each false start costs a small loss plus two sets of fees. It is also always late: by design it gives up the first and last part of every move.

Account valueBuy & holdBTC-USD price (own scale)Ticks: buys below, sells above

Return+7.23%
Buy & hold+37.37%
Max drawdown−32.22%
Trades9
Example runDefault settings on BTC-USD daily candles, 1 Oct 2024 to 29 Sep 2026, Coinbase Exchange. $10,000 start, 0.1% fee, 0.05% slippage. Not a forecast.
BTC-USD price with the 20 and 50 candle averages; buy arrows where the fast average crossed above the slow one, sell arrows where it crossed back.
Fig. 1SMA 20 / 50 in the tool: the two averages and every crossing.Example data
Trend following

EMA crossover

Like the SMA crossover, but the averages weight recent prices more heavily.

Fast average
12 candles (2 to 100)
Slow average
26 candles (5 to 300)

What it does

Follows trends, a little faster than the SMA version. It uses exponential averages, which give recent candles more weight. It buys when the 12-candle average rises above the 26-candle average and sells when it drops back below. Faster signals also mean more false starts.

When it tends to work

Trends that start abruptly. Weighting recent candles gets it in earlier than the simple-average version.

When it fails

Choppy markets, more so than the SMA version: quicker signals mean more false starts and more fees.

Account valueBuy & holdBTC-USD price (own scale)Ticks: buys below, sells above

Return+2.31%
Buy & hold+37.37%
Max drawdown−32.48%
Trades13
Example runDefault settings on BTC-USD daily candles, 1 Oct 2024 to 29 Sep 2026, Coinbase Exchange. $10,000 start, 0.1% fee, 0.05% slippage. Not a forecast.
Buy the dip

RSI mean reversion

Buy after a sharp drop, sell once the price has recovered.

RSI length
14 candles (2 to 50)
Buy when RSI falls below
30 (5 to 45)
Sell when RSI rises above
55 (40 to 90)

What it does

Bets that sharp drops bounce back. RSI is a 0 to 100 score of how hard the price has been falling or rising over the last 14 candles. It buys when RSI falls below 30 (heavily sold) and sells once RSI climbs back above 55. It works in ranging markets and gets hurt when a drop keeps going, which is why a stop-loss matters here.

When it tends to work

Ranging markets, where sharp drops are overreactions that recover within days or weeks.

When it fails

A real downtrend. It buys the first sharp drop, the drop keeps going, and nothing in the rule tells it to get out. That is what the stop-loss setting is for.

Account valueBuy & holdBTC-USD price (own scale)Ticks: buys below, sells above

Return−13.48%
Buy & hold+37.37%
Max drawdown−27.53%
Trades4
Example runDefault settings on BTC-USD daily candles, 1 Oct 2024 to 29 Sep 2026, Coinbase Exchange. $10,000 start, 0.1% fee, 0.05% slippage. Not a forecast.
BTC-USD price with buy and sell arrows, and the RSI line in a lower panel with the 30 and 55 levels marked.
Fig. 2RSI mean reversion in the tool: the score sits in its own panel under the price.Example data
Buy the dip

Bollinger band reversion

Buy when the price falls out of its normal range, sell when it returns to average.

Average length
20 candles (5 to 100)
Band width
2 std dev (1 to 4)

What it does

Bets that a stretched price snaps back. The bands mark a normal range around the 20-candle average (2 standard deviations either side). It buys when a candle closes below the lower band and sells when the price is back at the average. Like all dip-buying, it struggles when a fall turns into a real downtrend.

When it tends to work

Quiet, range-bound stretches where the price keeps returning to its average.

When it fails

Breakdowns. A close below the lower band is also how every large fall begins, and the exit (back at the average) can be a long way off.

Account valueBuy & holdBTC-USD price (own scale)Ticks: buys below, sells above

Return−11.26%
Buy & hold+37.37%
Max drawdown−39.10%
Trades12
Example runDefault settings on BTC-USD daily candles, 1 Oct 2024 to 29 Sep 2026, Coinbase Exchange. $10,000 start, 0.1% fee, 0.05% slippage. Not a forecast.
Breakout

Donchian breakout

Buy when the price breaks above its recent high, sell when it breaks a recent low.

Breakout lookback
20 candles (5 to 200)
Exit lookback
10 candles (2 to 100)

What it does

Buys strength. It buys when a candle closes above the highest high of the previous 20 candles, and sells when a candle closes below the lowest low of the previous 10 candles. It catches big moves and gives back part of each one before it gets out. Most trades are small losses, paid for by a few large wins.

When it tends to work

Markets that make big, sustained moves. A few large wins pay for everything else.

When it fails

Ranges with false breakouts. It buys new highs that immediately fail, over and over. Expect a low win rate even when it is profitable.

Account valueBuy & holdBTC-USD price (own scale)Ticks: buys below, sells above

Return+33.99%
Buy & hold+37.37%
Max drawdown−32.96%
Trades10
Example runDefault settings on BTC-USD daily candles, 1 Oct 2024 to 29 Sep 2026, Coinbase Exchange. $10,000 start, 0.1% fee, 0.05% slippage. Not a forecast.
BTC-USD price with the 20-candle high and 10-candle low channels drawn as stepped lines, and arrows at breakouts.
Fig. 3Donchian breakout in the tool: the channel it has to break.Example data
Momentum

MACD signal cross

Buy when momentum turns up, sell when it turns down.

Fast average
12 candles (2 to 50)
Slow average
26 candles (5 to 100)
Signal line
9 candles (2 to 30)

What it does

Trades changes in momentum. MACD is the gap between a fast (12) and a slow (26) exponential average; the signal line is a 9-candle average of that gap. It buys when MACD crosses above its signal line and sells when it crosses back below. It reacts sooner than a plain crossover and trades more often.

When it tends to work

Markets where momentum shifts are followed by a move large enough to cover the costs.

When it fails

Flat, noisy stretches. It trades more often than a plain crossover, so fees and slippage weigh more.

Account valueBuy & holdBTC-USD price (own scale)Ticks: buys below, sells above

Return−1.79%
Buy & hold+37.37%
Max drawdown−36.37%
Trades30
Example runDefault settings on BTC-USD daily candles, 1 Oct 2024 to 29 Sep 2026, Coinbase Exchange. $10,000 start, 0.1% fee, 0.05% slippage. Not a forecast.
Steady buying

Dollar-cost averaging

Buy a fixed dollar amount on a schedule, whatever the price.

Amount per buy
$100 (10 to 5000)
Buy every
7 candles (1 to 90)

What it does

Buys $100 worth every 7 candles, no matter what the price is doing, and never sells. You buy more units when the price is low and fewer when it is high. Buying stops when the cash runs out. It removes the timing decision; it does not remove the risk of the asset falling.

When it tends to work

When you want the asset over a long period and do not want to pick an entry. Buying on a schedule averages your price.

When it fails

It is not a way to avoid losses. If the asset falls for the whole period, every purchase is under water. It also never sells.

Account valueBuy & holdBTC-USD price (own scale)Ticks: buys below, sells above

Return−2.07%
Buy & hold+37.37%
Max drawdown−40.60%
Buys100
Example runDefault settings on BTC-USD daily candles, 1 Oct 2024 to 29 Sep 2026, Coinbase Exchange. $10,000 start, 0.1% fee, 0.05% slippage. Not a forecast.
Benchmark

Buy & hold

Buy once and do nothing. The yardstick every other strategy has to beat.

No settings. It only uses the trading rules: starting cash, fee and slippage.

What it does

Buys at the start of the test and holds to the end. It never sells. Every other strategy is compared with this, because a strategy that cannot beat simply holding is not worth the effort.

When it tends to work

Any market that ends higher than it started. It pays one fee and misses nothing.

When it fails

It sits through every fall in full. The max drawdown number shows how deep that was. It is here as the yardstick, not as advice.

Account valueBuy & holdBTC-USD price (own scale)Ticks: buys below, sells above

Return+37.37%
Buy & hold+37.37%
Max drawdown−53.08%
Buys1
Example runDefault settings on BTC-USD daily candles, 1 Oct 2024 to 29 Sep 2026, Coinbase Exchange. $10,000 start, 0.1% fee, 0.05% slippage. Not a forecast.

Simulated results. Hypothetical performance has limits and is not a guarantee of future returns. Educational use only, not investment advice. Risk disclosure

Pick one and change a number.

Every strategy on this page is in the tool with these defaults. Move a slider and the result re-runs at once.

Try it freeSee pricing

Simulated results. Hypothetical performance has limits and is not a guarantee of future returns. Educational use only, not investment advice. Risk disclosure