PerpForge
Get started

Backtest dossier · EMA Cross

Does the EMA Cross 12/26 work on ETH?

A perpetual futures backtest of EMA Cross 12/26 on real ETH market data. We lead with the verdict (is the edge real?), never the headline return.

What is the EMA Cross 12/26?

The EMA crossover is a trend-following signal. An EMA is computed at two speeds: a fast one over a short window and a slow one over a longer one. When the fast average crosses above the slow one, recent price is accelerating, read as an emerging uptrend, and the strategy enters long. When the fast crosses back below, it exits, and on the short side it bets the price falls.

Trend-followers share a personality, and it matters for reading these numbers. They win a minority of their trades (often 25 to 45 percent) and survive on a few big winners while cutting many small losers. They make money in sustained trends and bleed in chop, where every false breakout is a losing trade. So a low win rate is normal here, not a failure by itself. The question is whether the winners are big enough to pay for the losers.

More on the EMA Cross family
Win pattern
Minority wins, by design. 25 to 45 percent is healthy for this family.
Makes money when
Markets trend. Loses in chop and whipsaw.
Edge is
Symbol-dependent. Real on some markets, absent on others.

The same signal, both directions. A real, well-measured track record.

EMA Cross 12/26ETH·15m·
Long
Inconclusive
Short
Inconclusive
Did it make money?
+14.3% in-sample
−16.9% in-sample
How consistently?
Steadily. Sharpe 0.41
Consistently downward. Sharpe −0.66
Can we rule out luck?
No. Sharpe 0.41 ± 0.70
Profitable, but a coin flip.
No. Sharpe −0.66 ± 0.82
The 95% range still crosses zero.
Could you live through it?
−9% drawdown
~4 years underwater · a punishing drawdown, verdict still open.
−22% drawdown
~6 years underwater · a punishing drawdown, verdict still open.
Real Binance perpetual-futures · both sides, 7309 tradessource ↗

Why you can trust this read

Consider the long-side strategy, and walk it up the ladder. Did it trade enough to judge? 3654 trades clears the 30-trade floor, the minimum before any read is worth trusting. Did it make money? It returned +0.07% on this history. But a return says nothing about whether it repeats. For that we test the edge itself: we run the strategy's Sharpe ratio through a significance test and read the conservative low end of the plausible range. Here the conservative end sits at or below zero (Sharpe lower bound -0.29), so the edge is statistically zero, indistinguishable from luck.

The win rate supports that call without driving it. On its own a win rate lies to you: flip a coin 10 times, get 7 heads, and a "70% win rate" is noise. So we bound it. Here 3654 long trades pin the win rate to 25.2% to 28.0% with 95% confidence: a solid measurement. The two are independent. A strategy can win a minority of its trades by design and still make money on a few large winners, so a well-measured win rate can sit beside a statistically-zero edge. The edge test above, not the win rate, is the verdict.

Read the full method: “Is my strategy just luck?”

How we tested this, and why it's a fair test

  • This variant's periods are matched to the 15m timeframe by construction. We do not test a scalping pair on a daily chart.
  • Both directions ran on the same ETH candles. The short side is the control: if long works and short fails, that gap is a rising-market fingerprint, not a removed bias.
  • We read the edge at 2× leverage, high enough to matter, low enough that the verdict is not an artifact of losses truncated by liquidation.
  • The five leverage rungs share one set of trades, so they are one experiment at five zoom levels, not five independent proofs.

A fair test is not a perfect one. Every result here is in-sample, measured on the same history the strategies were selected from, so read it as a ceiling, not a forecast. And the engine does not yet model funding or slippage, so a fair comparison between strategies is still not a faithful copy of live trading.

Full method: the EMA Cross family

The numbers behind the verdict

LongShort
Win rate27% ± 1.426% ± 1.4
Wins / losses971 / 2683946 / 2709
Profit factor1.060.91
Expectancy+$0.39-$0.46
Avg win+$26.26+$18.89
Avg loss-$8.97-$7.22
Avg duration7h 12m6h 43m
Longest run8W / 18L5W / 21L

Dollar figures are on the $10,000 test account · 5% per trade. Your numbers scale with your sizing.


Across the leverage ladder · the cliff, not a returns flex

LeverageLong returnShort returnLong outcomeShort outcome
+0.04%-0.05%SurvivedSurvived
reading+0.07%-0.11%SurvivedSurvived
10×+0.22%-0.95%SurvivedHeavy loss
50×-0.71%-13.03%Heavy lossHeavy loss
100×-0.51%-18.12%Heavy lossHeavy loss

Higher leverage does not find an edge that 2× missed. It just finds the liquidation cliff faster. Read 2× for the signal. Read 50× as where the account dies.

This is the clean baseline. Curious whether a stop, a different symbol, or a different EMA pair changes the verdict? Run your own variant, free


What this backtest does, and does not, simulate

Honesty about the gaps is part of the receipt. What we model, and what we do not.

Trading fees — Yes. A flat cost charged on both the entry and the exit of every trade.
Liquidation — Yes. Force-close when losses eat through your margin.
Funding ratesNo. The recurring payment that keeps a perp tethered to spot. Not modeled, so real results would be slightly worse.
Bid/ask spread & market impact — Yes. Every fill is charged the gap between the buy and sell price, plus a little extra for larger trades in a thin market. We size it conservatively, so real fills may cost slightly more.
What our engine does and does not model

The data behind these numbers

Every result here is a deterministic replay over public Binance candles. The candles are Binance's own public data, so you can pull the exact same input. The strategy is ours: its config and the computed analytics download together, so you can reproduce the backtest or argue with it.

Source
Binance
Market
ETH-PERP
Interval
15m
Window
2020-09-14 – 2026-07-04

The strategy config and the computed analytics behind this verdict. The candles are Binance public data ↗. Pull the same input yourself.


Methodology

Starting equity
$10,000
Position size
5% of equity
Trading fee
3 bps / side
Bid/ask spread
1 bps / side
Impact model
Y = 0.5 · σ · √(Q/V)
Leverage read
Edge test
Sharpe t-test
Win-rate CI
Wilson 95%
in-sample · Binance · Sep 2020 – Jul 2026flat fees + conservative slippage · no funding · as of Jul 2026

Slippage uses a two-term model: a fixed spread per fill plus a √-law impact term calibrated to Binance order-book depth (Donier-Bonart 2015, Y = 0.5 default). The calibration is a conservative lower bound. Depth-driven impact may be slightly larger in practice. Stop-loss exits fill at the trigger price with a small volatility haircut proportional to the candle's price range, always adverse to the trigger, never better.

Computed by a deterministic replay engine over the full candle history above. Edge significance runs the Sharpe ratio through a t-test against zero. That test assumes trades are independent; trend-following trades cluster within trends, so read significance as a floor, not a guarantee. Win-rate confidence uses the Wilson score interval at 95%. In-sample means the backtest ran on the same history the fleet was selected from. Treat it as a ceiling, not a forecast. This is 1 of 52 EMA Cross variants tested on that same history; with that many, a few will look good by luck alone, which is why we rank by significance, not raw return.

How this page is assembled. The family overview, the significance method, and the simulator's known gaps are standardized across every page, so every result is judged the same way. The data and the verdict are specific to this backtest.


our baseline · your variant

Test your own variant against this data.

We ran the clean no-stop baseline. Run the variant we did not: add a stop, a volatility filter, your own symbol or leverage. All on the same engine and the same significance test. Find out whether your version has a real edge before you risk real money.

Run your own variant Free account, no card