The leman signal indicator runs four filters in sequence and prints nothing unless all four pass. A fast and slow average set the trend. A momentum reading confirms it, a MACD sign agrees, and a volatility check makes sure the market is moving at all.
This build ships as a compiled .ex4 for MT4 and .ex5 for MT5; the screenshots below come from EURUSD H1.
| Platforms | MT4 (.ex4) + MT5 (.ex5) |
|---|---|
| Chart window | Main price chart |
| Plots | 2: Leman BUY, Leman SELL |
| Alerts | popup, push notification, email, sound |
| Inputs | 17 |
What the Leman Signal Indicator draws on the chart
Leman BUY sits under the low of a bar where all four filters passed on the long side.
Leman SELL sits above the high on the short side.
This build plots none of the four readings. Only the markers appear.
- Leman BUY: arrow, lime green, width 2, arrow code 233
- Leman SELL: arrow, tomato, width 2, arrow code 234

How the Leman Signal Indicator calculates its values
Trend and momentum
The first filter compares an average at FastEMA against one at SlowEMA. Their order sets the direction the rest of the chain looks for.
The second reads momentum over RSIPeriod and needs it above RSIBullLevel for a buy or below RSIBearLevel for a sell. Both default to 50.0, so this asks which side of the midpoint the reading sits.
The MACD sign
The third filter looks at the sign of a MACD built from MACDFast, MACDSlow and MACDSignal. It has to point the same way as the first two.
Three filters over the same price series will often agree, which is worth remembering. This is a stack of confirmations rather than independent evidence.
The volatility floor
The fourth filter compares ATR over ATRPeriod against its own average over ATRAvgPeriod. The current reading has to sit above that average.
That is the one filter measuring something the other three do not. It skips the dead stretches where the first three can all agree while nothing moves.
How to read the signals
An arrow means four conditions passed together, which is a much narrower event than any one of them.
The volatility floor is what stops markers appearing in flat conditions.
Marker spacing scales with ATR through ArrowOffsetATR, so it reads consistently across instruments.
This build draws none of the four readings, so you cannot check a marker against them without loading them separately.
Alert channels in this build: popup, push notification, email and sound, one message per closed bar.
Alerts cover popup, push, email and sound when all four filters pass. A bar time check keeps it to one alert per closed bar.
Every Leman Signal Indicator input
Core settings
| Setting | What it does | Default |
|---|---|---|
FastEMA |
Fast EMA period (trend). FastEMA is the quick average in the trend filter. It defaults to 5. | 5 |
SlowEMA |
Slow EMA period (trend). SlowEMA is the slower one at 13. | 13 |
RSIPeriod |
RSI momentum period. RSIPeriod is the momentum lookback, 7 by default, which reacts quickly. | 7 |
RSIBullLevel |
RSI level for bullish bias. RSIBullLevel is the floor a buy needs momentum to clear, 50.0 by default. | 50.0 |
RSIBearLevel |
RSI level for bearish bias. | 50.0 |
MACDFast |
MACD fast EMA. MACDFast is the quick length behind the third filter, 12 by default. | 12 |
MACDSlow |
MACD slow EMA. | 26 |
MACDSignal |
MACD signal SMA. | 9 |
ATRPeriod |
ATR period. ATRPeriod is the current volatility reading at 14. | 14 |
ATRAvgPeriod |
ATR average lookback (volatility filter). ATRAvgPeriod is the window that reading gets compared against, also 14. | 14 |
Display settings
| Setting | What it does | Default |
|---|---|---|
ArrowOffsetATR |
Arrow offset as fraction of ATR. ArrowOffsetATR spaces a marker from its candle as a fraction of ATR, 0.6 by default. | 0.6 |
Alert settings
| Setting | What it does | Default |
|---|---|---|
EnableAlerts |
(see inputs panel) | on |
EnablePopup |
(see inputs panel) | on |
EnablePushNotify |
(see inputs panel) | off |
EnableEmail |
(see inputs panel) | off |
EnableSound |
(see inputs panel) | off |
SoundFile |
(see inputs panel) | alert.wav |

Settings that fit your chart
The screenshot uses EURUSD H1. Four filters agreeing is a narrow condition, so markers are naturally sparse and H1 gives enough of them to be useful. On H4 and daily they become rare. On M5 the fast pair crosses often while the MACD lags, so the chain rarely completes.
When the Leman Signal Indicator fails
Four readings from one price series are not four independent opinions. Three of them can agree for the same underlying reason.
A 5 and 13 pair is fast, so the trend filter is the loosest link in the chain rather than the strictest.
Both momentum thresholds sit at the midpoint, which asks very little of that filter.
This build plots none of the four readings, so a marker that looks wrong has nothing on the chart to check against.
Copy the compiled Leman Signal Indicator file into your MQL4/Indicators folder, and the MT5 build into MQL5/Indicators, then restart the terminal and drag it onto a chart. The step-by-step guide with screenshots is at how to install MT4 and MT5 indicators.
Background reading on the method behind the Leman Signal Indicator: Fund governance on Wikipedia, Candlevolume at StockCharts ChartSchool.
Download the Leman Signal Indicator for MT4 and MT5
The zip holds the compiled Leman Signal Indicator build for MT4 and MT5, plus a short README. Compiled files only, no source. Enter your email below and the download link arrives in your inbox.
Download this indicator free
Enter your email and the file is yours. You also get the full MT4 and MT5 library.
FAQ
Does ATRPeriod or RSIPeriod do the most filtering?
The ATR one, because it measures something the other three do not. Trend, momentum and MACD all come from the same price series and often agree together. The volatility floor is the only filter that can veto them all when nothing is actually moving.
Are RSIBullLevel and RSIBearLevel both at 50.0 useful?
They are the loosest setting that filter can have. Fifty is the midpoint, and when a fast average already sits above a slow one the reading is usually above it too. Moving RSIBullLevel to 55 or 60 makes the check do real work.
Why are FastEMA and SlowEMA as fast as 5 and 13?
It makes the trend filter responsive rather than strict, so the chain reacts to shorter moves. The effect is that this filter passes often and the later ones do the selecting. Lengthening SlowEMA tightens the trend condition considerably.
Can I see the MACDFast reading on the chart?
Not from this build. It declares two plots and both are markers, so every reading stays inside the calculation. Loading a separate average pair, momentum reading and MACD at the same settings shows you what produced a marker.
Are results guaranteed?
No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Leman Signal Indicator as one input. Always backtest before trading live.
Category: this is part of our Trend collection. Also, plainly, browse more Trend for MetaTrader, or explore every MT4 indicator and MT5 indicator on the site.
External references
- The core method is documented in Fund governance on Wikipedia.
- Additional market context is at Candlevolume at StockCharts ChartSchool.
