Backtesting Arena

Backtesting Arena

PricingBlogBuild SaaS
🧭How it works🥋Strategies📖Wiki📓Glossary🎓How-To📚Reports
🧭Market State Today
🧱Market Structure₿BTC × Macro📈Market Pulse
🌀Arena Pulse
🌡Arena Heat Chart
🎯Dip Decision Tool
💶DCA vs. Lump Sum
🔗Portfolio Correlation
💧Liquidity Fair Value
🌍Macro Regime
🌐Market Pulse (Multi-Asset)soon
📊Bitcoin Charts
📍Max Pain History
🧘Bitcoin Lifestyle Calculator
📖Bitcoin Wiki
🔥Altcoin SeasonPro
💎Altcoin Screener
📥Market Charts
📊Strategy InsightsPro
🌍Market InsightsPro🔬Filter InsightsElite
🧪Edge Library
🥇Edge Leaderboard
📡Live Tracking
⏳Volatility InsightsPro
🏅Arena Score
💼Portfolio
₿Crypto
📈Tokenized RWAPro
📋My Backtests
⚖️Active vs Passive
🔔Alerts
🚦Signal Status
🤖Grid Bot Testing
🧪Strategy Mixersoon
🏆Winner's List
🎰Backtest Roulette
🌡️Sentiment
💡Improvements
🎁Referral
💬Telegram
🦋Bluesky
👥Reddit
𝕏X (Twitter)
🧭How it works
🥋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 worksPricingLeaderboardAPIImpressumDatenschutzAGBCookie-HinweisKontakt
📘 Built with Claude — how this platform was built in 70h (guide + boilerplate)→
Backtesting Arena

Backtesting Arena

PricingBlogBuild SaaS
🧭How it works🥋Strategies📖Wiki📓Glossary🎓How-To📚Reports
🧭Market State Today
🧱Market Structure₿BTC × Macro📈Market Pulse
🌀Arena Pulse
🌡Arena Heat Chart
🎯Dip Decision Tool
💶DCA vs. Lump Sum
🔗Portfolio Correlation
💧Liquidity Fair Value
🌍Macro Regime
🌐Market Pulse (Multi-Asset)soon
📊Bitcoin Charts
📍Max Pain History
🧘Bitcoin Lifestyle Calculator
📖Bitcoin Wiki
🔥Altcoin SeasonPro
💎Altcoin Screener
📥Market Charts
📊Strategy InsightsPro
🌍Market InsightsPro🔬Filter InsightsElite
🧪Edge Library
🥇Edge Leaderboard
📡Live Tracking
⏳Volatility InsightsPro
🏅Arena Score
💼Portfolio
₿Crypto
📈Tokenized RWAPro
📋My Backtests
⚖️Active vs Passive
🔔Alerts
🚦Signal Status
🤖Grid Bot Testing
🧪Strategy Mixersoon
🏆Winner's List
🎰Backtest Roulette
🌡️Sentiment
💡Improvements
🎁Referral
💬Telegram
🦋Bluesky
👥Reddit
𝕏X (Twitter)
🧭How it works
🥋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›EMA Trend Bias
EMA Trend Bias master

EMA Trend Bias Strategy

Two EMAs plus an ATR-based neutral zone — like the commercial Larsson Line, but tunable, transparent, and backtested. Choose your bias.

Try in Arena →View Live Insights →

Quick Facts

Type:
Trend Following · Volatility
Plan:
Pro
Asset Classes:
Crypto · Tokenized RWA
Indicators:
EMA · ATR

Platform Backtest

ⓘ
CAGR
+30.0%
Win Rate
56%
Max DD
-32%

Default parameters · BTCUSDT · 1d · 4 years · B&H +31.0%

How It Works

EMA Trend Bias uses the same core logic as well-known commercial trend-following indicators (e.g. the so-called "Larsson Line"): two exponential moving averages combined with an ATR-based neutral zone. The difference here: you can tune the parameters yourself and backtest before spending several hundred dollars on a closed indicator.

The strategy works on two layers:

Layer 1 — 3 trend states (derived from the EMA difference and the ATR corridor):

  • BULLISH (yellow): fast EMA clearly above slow EMA, gap > ATR × multiplier
  • BEARISH (blue): fast EMA clearly below slow EMA, gap < −ATR × multiplier
  • NEUTRAL (grey): fast and slow EMAs within the ATR corridor — undecided

Layer 2 — 4 trading modes (which state transitions trigger BUY/SELL):

  • Bearish Bias: Grey → Yellow = BUY · Yellow → Grey = SELL — conservative, only on clear confirmed trends
  • Bullish Bias: Blue → Grey = BUY · Grey → Blue = SELL — early entries, early exits
  • Cautious: Grey → Yellow = BUY · Grey → Blue = SELL — symmetric, fires only out of the neutral zone
  • Aggressive: Blue → Grey = BUY · Yellow → Grey = SELL — early everything, more trades

The ATR-based neutral zone is the key innovation: it adapts to current volatility. In quiet markets the neutral zone shrinks (signals fire faster); in volatile markets it expands (signals require larger moves to fire). This filters out a lot of false signals that simple EMA cross strategies suffer from.

Entry & Exit Rules

▲Entry

  • ●Trend state transition matches the chosen Trading Mode
  • ●Position is currently flat
  • ●ATR neutral zone width has been respected

▼Exit

  • ●Trend state transition matches the SELL trigger of the chosen mode
  • ●Position is currently long

Parameters

NameDefaultRangeDescription
Fast EMA Period305–100Fast exponential moving average period.
Slow EMA Period6010–200Slow exponential moving average period.
ATR Period605–200Lookback for the ATR (Average True Range) used to size the neutral zone.
ATR Multiplier0.30.05–2Width of the neutral zone in ATR units. Higher = wider neutral zone, fewer signals.

Live Backtest

Strategy CAGR
+30.0%
Buy & Hold CAGR
+31.0%
Trades
10
Win Rate
56%
Y-axis: Equity (USD, $10,000 starting capital)2022-07-23 → 2026-07-22

BTCUSDT · 1d · 4 years · default parameters · refreshed daily

Run with my own parameters →

Performance per Asset

Top-10 assets by average CAGR (1d interval), aggregated from community + platform backtests. Actual results depend on parameters and period.

AssetCAGRvs B&H★Win%YearsRuns
SOLUSDT+94.5%+39.5pp8139%5.814
FTMUSDT+74.0%-41.5pp—57%5.69
MATICUSDT+61.0%-45.3pp—58%5.48
BNBUSDT+52.5%-11.5pp5149%8.513
DOGEUSDT+45.9%-29.4pp—34%7.010
PENGUUSDT+41.7%+90.6pp0100%1.21
SUIUSDT+40.2%+54.4pp—58%3.17
ADAUSDT+39.7%+26.8pp8051%8.213
AXSUSDT+36.0%-5.5pp—64%5.612
STXUSDT+35.8%+43.3pp—52%6.52
pp = delta vs avg-B&H · ★ = robustness score 0-100 (CAGR / win-rate / drawdown / consistency).Full Insights →

Pseudo-Code

expand
// Compute indicators
fast = EMA(close, ema_fast)
slow = EMA(close, ema_slow)
atr  = ATR(close, atr_length)
gap  = fast - slow
zone = atr * atr_multiplier

// Classify state
if gap > zone:
  state = BULLISH (yellow)
else if gap < -zone:
  state = BEARISH (blue)
else:
  state = NEUTRAL (grey)

// Mode-specific entry/exit (example: Cautious)
if prev_state == NEUTRAL AND state == BULLISH:
  if position.is_flat:
    BUY
if prev_state == NEUTRAL AND state == BEARISH:
  if position.is_long:
    SELL

Strengths & Weaknesses

+Strengths

  • ●Volatility-adaptive — fewer false signals in choppy markets
  • ●4 modes give granular control over your trade frequency
  • ●Tunable replacement for closed-source paid indicators
  • ●Works on all asset classes including forex

−Weaknesses

  • ●5 parameters — easy to overfit
  • ●Mode choice strongly affects results — needs explicit choice, not a default
  • ●Lagging by design — late entries on fast moves
  • ●ATR multiplier too low collapses the neutral zone, too high dampens all signals

Frequently Asked Questions

Which trading mode should I start with?+

Start with **Cautious** — it's symmetric (BUY only out of neutral, SELL only into neutral) and gives the cleanest baseline. Once you understand the indicator, try Bearish Bias for trending markets (waits for confirmation) or Bullish Bias for ranging markets (early entries, early exits).

How is this different from the Larsson Line?+

The signal logic is the same family of trend-following techniques — both use two EMAs and an ATR neutral zone. Larsson Line is a closed commercial product with fixed parameters. EMA Trend Bias is open and tunable: pick your own EMAs, your own ATR multiplier, your own mode. We're not affiliated with the Larsson Line product.

What's the typical hit rate?+

Hit rates depend heavily on mode, asset, and timeframe. On Bitcoin weekly with the Cautious mode and default 30/60 EMAs, historically around 55–65 % win rate with a positive expectancy — but always check the live stats above the chart for the current observed values.

Related Strategies

WMA Trend Signal

Two weighted moving averages crossing — recent candles weight more, signals fire faster than SMA-based crosses. Validated on BTC weekly.

WMA

Golden Cross

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

SMA

OBV-MACD

Apply MACD logic to On-Balance Volume — combining volume confirmation with trend signals. Volume tells you the truth that price hides.

OBV · MACD

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 →