Skip to main content

Documentation Index

Fetch the complete documentation index at: https://uncoded.ch/docs/llms.txt

Use this file to discover all available pages before exploring further.

EMA-cross trend-following is the classic trend-capture recipe. Buy when EMA(20) crosses above EMA(50) on hourly candles (uptrend confirmation). Stop buying when EMA(20) crosses below (uptrend break). Late entries vs the absolute peak — but with more reliable trend confirmation than catching the bottom.

Goal

Capture sustained uptrends on BTCUSDT (or other symbol) by entering after a confirmed EMA cross-up and exiting after a confirmed cross-down.

When to pick this recipe

You expect trending markets

Trend-following works when trends are durable. Multi-week or multi-month trends are the sweet spot.

You're running a trend-capable mode

Pair with FullBullMarket (Mode 1) or Tsl2Sell (Mode 7) — modes designed to ride trends. BasicMode works but caps at the sell ladder; trend-followers want to capture more.

You can tolerate late entries

EMA crosses happen after the move is already in progress. You miss the first 5–15% of any rally. The trade-off: confirmation that the move is real.

You can tolerate whipsaw losses

In chop, EMAs cross frequently with no follow-through. You’ll have small losing trades. Net-positive only if the trend periods deliver enough to overcome chop losses.

When NOT to pick this recipe

  • Pure sideways/chop regimes — EMAs whipsaw constantly. Net negative after fees and slippage.
  • High-frequency scalping — the 1h timeframe is slow by design. Don’t use this for quick trades.
  • Extreme low-liquidity altcoins — slippage on entry/exit erodes the trend-capture P&L.
  • First-week operators — let modes run alone first; recipes are level-2 patterns.

Prerequisites

  • Trend-capable mode (FullBullMarket or Tsl2Sell) running on the target pair.
  • SignalEditor + SignalsBot running.
  • Capital allocated to the mode (~$10,000–$20,000).
  • Mode’s canBuy set to false by default (the recipe will flip it on/off).

Setup steps

1

Create the strategy

SignalEditor → New Strategy. Name: ema-cross-trend-btcusdt-1h.
2

Add a Price node

Symbol: BTCUSDT. Timeframe: 1h.
3

Add two EMA indicators

  • EMA(20) — connected to Price.
  • EMA(50) — connected to Price.
4

Add the cross-up condition

Drop a Condition node. Choose crossover (EMA(20) crosses above EMA(50)).
5

Attach a trigger (entry)

Trigger node, mode once_per_bar_close. Webhook payload writes canBuy: true for the mode.
6

Build the mirror exit strategy

New strategy: ema-cross-trend-btcusdt-1h-exit. Same EMAs, but condition is crossunder (EMA(20) crosses below EMA(50)). Webhook payload writes canBuy: false.
7

Optional: add ADX filter

To reduce chop whipsaws, add an ADX(14) indicator and an additional condition ADX > 25. AND with the cross condition. ADX measures trend strength — > 25 is the classic “trend is real” threshold.Reduces firing frequency but improves selectivity.
8

Preview each strategy

Confirm entry strategy fires 1–4 times per month on BTCUSDT 1h (rough expectation). Exit strategy fires after each entry.
9

Backtest combined behavior

Run the trend-capable mode + recipe pair through the Backtester for 1+ year of historical data. Validate equity curve and drawdown.Compare against the same mode without recipe gating.
10

Forward-test on small capital

$1,500–$3,000 allocation for 2–4 weeks. Trend-following recipes need longer forward-test windows because trend events are infrequent.
11

Promote if validated

Scale to full capital after forward-testing.

Expected behavior

On BTCUSDT 1h, expect entries roughly 1–4 times per month in normal regimes. More in volatile markets, less in stable ones. With ADX filter, frequency drops further.
Trend-following holds tend to be longer than mean-reversion. Days to weeks per round-trip. Tsl2Sell or FullBullMarket sell logic rides the move.
Trend-following has a lower win rate than mean-reversion (typically 40–55% vs 60–80%). But winners are larger than losers, so net-positive expectancy.If you’re sensitive to win-rate variance, mean-reversion may suit better. If you want the upside of trend capture, accept the lower win rate.

Common mistakes

BasicMode’s sell ladder caps at +5%. The recipe enables buying during a trend, but BasicMode exits at +5% and misses the rest of the rally.Fix: pair with FullBullMarket or Tsl2Sell.
Without ADX gating, the recipe fires on every minor cross — including the many small crosses during chop.Fix: add ADX(14) > 25 condition for chop regimes.
For a 1h timeframe strategy, once_per_minute is meaningless — bars close once per hour. Use once_per_bar_close.
Trend events are infrequent on 1h timeframe. A 1-week forward test may not include any entry signal — you can’t validate a strategy you haven’t observed.Fix: forward-test for at least 4 weeks.

What’s next

RSI Mean-Reversion

The mean-reversion alternative.

Multi-Timeframe

Combine trend with faster entry timing.

FullBullMarket Mode

Pair with this mode for trend rides.

Backtester

Validate trend-following on historical bull/bear regimes.
Last modified on May 3, 2026