Backtesting ArenaBacktesting Arena
PricingBlogBuild SaaS
🧭How it works🎬Guide🥋Strategies📖Wiki📓Glossary🎓How-To📚Reports
🧭Market State Today
🧱Market Structure🗺Context Chart₿BTC × Macro📈Market Pulse
🌀Arena Pulse
🌡Arena Heat Chart
🔍Wyckoff Reality Check
🌍Macro Regime
🌐Market Pulse (Multi-Asset)soon
📊Bitcoin Charts
📍Max Pain History
📖Bitcoin Wiki
🔥Altcoin SeasonPro
💎Altcoin Screener
🎯Alts vs Bitcoin
📥Market Charts
📊Strategy InsightsPro
🌍Market InsightsPro🔬Filter InsightsElite
🧪Edge Library
🥇Edge Leaderboard
📡Live Tracking
⏳Volatility InsightsPro
🏅Arena Score
💼Portfolio
₿Crypto
⚡Leverage BacktestPro
📈Tokenized RWAPro
📋My Backtests
⚖️Active vs Passive
🔔Alerts
🚦Signal Status
🤖Grid Bot Testing
🧪Strategy Mixersoon
🎯Dip Decision Tool
💶DCA vs. Lump Sum
🔗Portfolio Correlation
🧘Bitcoin Lifestyle Calculator
🪜Ladder Stacking
🏆Winner's List
🎰Backtest Roulette
🌡️Sentiment
💡Improvements
🎁Referral
💬Telegram
🦋Bluesky
👥Reddit
𝕏X (Twitter)
🧭How it works
🎬Guide
🥋Strategies
📖Wiki
📓Glossary
🎓How-To
📚Reports
🏠Overview
📖API Docs (interactive)
🔑Keys & Plans
📜OpenAPI 3.1
📦Postman Collection
🤖llms.txt
🧩skill.md
📝 BlogBuild SaaS💳 Pricing
LoginSign up

⚠ Not financial advice. All backtests are historical simulations — no guarantee of future results.

Study the Past — Improve your Future.

🟠Backtesting Arena· © 2026
How it worksVideo guidePricingLeaderboardAPIFor AI AgentsImpressumDatenschutzAGBCookie-HinweisKontakt
📘 Built with Claude — how this platform was built in 70h (guide + boilerplate)→
Backtesting ArenaBacktesting Arena
PricingBlogBuild SaaS
🧭How it works🎬Guide🥋Strategies📖Wiki📓Glossary🎓How-To📚Reports
🧭Market State Today
🧱Market Structure🗺Context Chart₿BTC × Macro📈Market Pulse
🌀Arena Pulse
🌡Arena Heat Chart
🔍Wyckoff Reality Check
🌍Macro Regime
🌐Market Pulse (Multi-Asset)soon
📊Bitcoin Charts
📍Max Pain History
📖Bitcoin Wiki
🔥Altcoin SeasonPro
💎Altcoin Screener
🎯Alts vs Bitcoin
📥Market Charts
📊Strategy InsightsPro
🌍Market InsightsPro🔬Filter InsightsElite
🧪Edge Library
🥇Edge Leaderboard
📡Live Tracking
⏳Volatility InsightsPro
🏅Arena Score
💼Portfolio
₿Crypto
⚡Leverage BacktestPro
📈Tokenized RWAPro
📋My Backtests
⚖️Active vs Passive
🔔Alerts
🚦Signal Status
🤖Grid Bot Testing
🧪Strategy Mixersoon
🎯Dip Decision Tool
💶DCA vs. Lump Sum
🔗Portfolio Correlation
🧘Bitcoin Lifestyle Calculator
🪜Ladder Stacking
🏆Winner's List
🎰Backtest Roulette
🌡️Sentiment
💡Improvements
🎁Referral
💬Telegram
🦋Bluesky
👥Reddit
𝕏X (Twitter)
🧭How it works
🎬Guide
🥋Strategies
📖Wiki
📓Glossary
🎓How-To
📚Reports
🏠Overview
📖API Docs (interactive)
🔑Keys & Plans
📜OpenAPI 3.1
📦Postman Collection
🤖llms.txt
🧩skill.md
📝 BlogBuild SaaS💳 Pricing
LoginSign up
Strategies›Bull Market Support Band (20W SMA / 21W EMA)
Bull Market Support Band (20W SMA / 21W EMA) master

Bull Market Support Band (20W SMA / 21W EMA) Strategy

Long while the weekly close sits above both the 20-week SMA and the 21-week EMA, cash below both — no change while the close is inside the band. Defined on weekly candles with 20/21: any other periods or interval are a new trial, not a tuning. Every result reports its week anchor (Binance weeks start Monday UTC, KuCoin-sourced pairs Thursday UTC) and its band width.

Try in Arena →View Live Insights →

Quick Facts

Type:
Trend Following · regime
Plan:
Pro
Asset Classes:
Crypto
Indicators:
SMA(20W) · EMA(21W)

Platform Backtest

ⓘ
Not enough data yet.

How It Works

The Bull Market Support Band is the space between two weekly lines: the 20-week simple moving average and the 21-week exponential moving average. The rule reads the weekly close relative to that band, not the lines relative to each other.

  • Long — the weekly close is above both lines
  • Cash — the weekly close is below both lines
  • Inside the band — nothing changes; the previous state is held

The third line is the defining feature. It turns two lines into a hysteresis zone: the price has to cross the whole band before the state flips, which is what separates the BMSB from a plain crossover (Golden Cross, EMA Cross) or a single-line regime. Signals are read on the confirmed weekly close and filled at the open of the following week. The band width is reported as a diagnostic: when the two lines almost coincide, the hysteresis is inert and the rule behaves like a one-line filter.

The strategy is defined on weekly candles with periods 20 and 21. Both are exposed as parameters, but any other value is a new trial, not a tuning of the same strategy — and it counts as one in the multiple-testing correction.

Entry & Exit Rules

▲Entry

  • ●Weekly close is above both the 20-week SMA and the 21-week EMA → enter long at the open of the next week
  • ●After the 21-week warm-up, start long only if the first confirmed close is above both lines; inside or below the band starts in cash

▼Exit

  • ●Weekly close is below both lines → sell to 100% cash at the open of the next week
  • ●Weekly close inside the band (including a tie with one line) → hold the previous state, no trade
  • ●Open position is marked to the last close at the end of the backtest

Parameters

NameDefaultRangeDescription
SMA period (weeks)205–100Length of the simple moving average on weekly closes. 20 is the definition; any other value is a new trial.
EMA period (weeks)215–100Length of the exponential moving average on weekly closes, seeded with the SMA of the first 21 values. 21 is the definition.

Live Backtest

The pre-baked mini-backtest is refreshed daily — check back soon or start a live run in the Arena.

Run in Arena →

Pseudo-Code

expand
// Long-only, weekly candles, hysteresis band
sma = SMA(close, 20)
ema = EMA(close, 21)   // seeded with SMA(21)
upper = max(sma, ema); lower = min(sma, ema)
state = flat            // after 21-week warm-up
for each confirmed weekly close:
  if close > upper: next = long
  elif close < lower: next = flat
  else: next = state    // inside the band: hold
  if next != state: order at NEXT week's open
  state = next

Strengths & Weaknesses

+Strengths

  • ●Hysteresis: a weekly close inside the band changes nothing, so a single noisy week cannot flip the position
  • ●Decisions on confirmed weekly closes — few trades, no intra-week trigger
  • ●Reports its own band width, so you can see when the two lines coincide and the band effect is absent
  • ●Every parameter deviation is declared as a new trial, which keeps the multiple-testing count honest

−Weaknesses

  • ●Weekly candles mean very few decisions per market — on most pairs the sample is too small for a verdict
  • ●Enters late and exits late by construction; it cannot catch bottoms or tops
  • ●When the band is thin, the hysteresis is inert and the rule collapses into a one-line regime filter
  • ●The 21-week warm-up removes the first five months of every pair's history from the evaluation window

Frequently Asked Questions

Why does it show a mismatch note on daily candles?+

The band is defined on weekly candles. SMA(20) and EMA(21) on daily candles are a different indicator that only shares the name — the run still executes, but the result carries `definition_interval_mismatch` so nobody reads it as the BMSB.

How is this different from Golden Cross or EMA Cross?+

Those rules act when the two lines cross each other. The BMSB ignores the lines' order and reads the close against the band — and it does nothing while the close is between the lines. That hold-inside rule is the whole difference.

Why does my chart show a different band?+

Our weekly candles open on Monday 00:00 UTC (reported as `interval_anchor` in every result). A chart with a different week start or exchange feed draws different weekly closes and therefore a different band.

Related Strategies

Index Regime (200-Day Trend)

Invested above the 200-day line, cash below. Meb Faber's classic trend filter — roughly Buy & Hold returns at a fraction of the drawdown.

SMA

Golden Cross

The classic trend-following signal — when the 50-day SMA crosses above the 200-day SMA, the trend has flipped bullish.

SMA

EMA Cross

The configurable trend-switcher — two exponential moving averages cross, and the trade direction flips. Faster than Golden Cross, simpler than EMA Trend Bias.

EMA

Don't want to backtest yourself?

Check out our Strategy Insights Reports — pre-baked deep-dives with historical results, comparisons, and market context.

📊 View Reports →

Ready to backtest?

Open the Arena →