The EMA 20/50 crossover is the trend filter in our signal engine. It tells us which direction the market is biased in the current timeframe — separating genuine trend signals from counter-trend noise.
An Exponential Moving Average (EMA) is the average closing price over a set period, with more weight given to recent candles. Unlike a Simple Moving Average (SMA), an EMA reacts faster to recent price changes.
| Pair | Signal | EMA 20 vs 50 |
|---|---|---|
| AUD/USD | SELL ★ | EMA20 below EMA50 |
| EUR/USD | SELL ★★ | EMA20 below EMA50 |
| GBP/USD | SELL ★ | EMA20 below EMA50 |
| NZD/USD | SELL ★ | EMA20 below EMA50 |
| USD/CAD | BUY ★ | EMA20 above EMA50 |
| USD/CHF | BUY ★★ | EMA20 above EMA50 |
| USD/INR | BUY ★★ | EMA20 above EMA50 |
A snapshot, not a live feed — the engine refreshes hourly. The signals page always shows the current set.
In our engine: We check whether EMA 20 is currently above or below EMA 50 — we do not wait for a fresh cross. If EMA 20 > EMA 50, the trend vote is BUY. If EMA 20 < EMA 50, the trend vote is SELL. This means EMA continuously votes on trend direction, not just at crossover moments.
| Indicator | Reading | Called | What the engine does with it |
|---|---|---|---|
| EMA 20 / 50 | 20 above 50 | uptrend | casts a BUY vote |
| EMA 20 / 50 | 20 below 50 | downtrend | casts a SELL vote |
The 20/50 pair is a widely used combination that balances sensitivity (responding quickly to trend changes) with reliability (filtering out short-lived noise). It is not magical — it is a convention that many traders watch, which creates self-fulfilling behaviour at crossover points.
Other popular combinations: 50/200 (longer-term, Gold Cross / Death Cross on Daily), 9/21 (shorter-term, for scalping). We chose 20/50 because it works well on H1, H4, and Daily — the three timeframes we analyse.
| Pair | RSI vote | MACD vote | EMA vote | Tally | Published | Decided by |
|---|---|---|---|---|---|---|
| AUD/USD | no vote | BUY | SELL | 1 BUY / 1 SELL | SELL ★ | votes tied |
| EUR/USD | BUY | SELL | SELL | 1 BUY / 2 SELL | SELL ★★ | majority |
| GBP/USD | no vote | BUY | SELL | 1 BUY / 1 SELL | SELL ★ | votes tied |
| NZD/USD | no vote | BUY | SELL | 1 BUY / 1 SELL | SELL ★ | votes tied |
| USD/CAD | no vote | SELL | BUY | 1 BUY / 1 SELL | BUY ★ | votes tied |
| USD/CHF | BUY | SELL | BUY | 2 BUY / 1 SELL | BUY ★★ | majority |
| USD/INR | SELL | BUY | BUY | 2 BUY / 1 SELL | BUY ★★ | majority |
A snapshot, not a live feed — the engine refreshes hourly. The signals page shows the current set.
This is why our engine requires multiple confirmations. A trade setup is strongest when:
All three agreeing = a ★★★ signal. Even then, signals can fail — always use stop-losses.