Ten of the most watched average lengths, from 5 to 200 bars, on one chart. The top 10 moving average indicator draws them all in a blue-to-red ribbon, averages the five fastest into one group and the five slowest into another, and marks the bar where the two groups cross.
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 | 12: MA 1, MA 2, MA 3, MA 4, MA 5, MA 6, MA 7, MA 8, MA 9, MA 10, Ribbon Buy, Ribbon Sell |
| Alerts | popup, push notification, email, sound |
| Inputs | 20 |
Plots, colours and placement
Ten lines and two marks on price.
`MA 1` traces deep sky blue as the fastest.
`MA 5` traces medium orchid at the fast edge.
`MA 10` traces red at width 2 as the slowest.
`Ribbon Buy` prints lime at width 3.
`Ribbon Sell` prints red at width 3.
- MA 1: line, deep sky blue, width 1
- MA 2: line, dodger blue, width 1
- MA 3: line, royal blue, width 1
- MA 4: line, medium slate blue, width 1
- MA 5: line, medium orchid, width 1
- MA 6: line, orchid, width 1
- MA 7: line, salmon, width 2
- MA 8: line, tomato, width 2
- MA 9: line, orange red, width 2
- MA 10: line, red, width 2
- Ribbon Buy: arrow, lime, width 3, arrow code 233
- Ribbon Sell: arrow, red, width 3, arrow code 234

What the build works out
Ten lengths
`Period1` `5` up to `Period10` `200` cover the common settings: 5, 10, 20, 30, 50, 75, 100, 125, 150 and 200.
Two groups
The average of lines 1 to 5 is the fast group; lines 6 to 10 form the slow group. `MaMethod` `MODE_EMA` applies to all ten.
Group cross
A buy prints when the fast group moves above the slow group. `SignalCooldown` `3` spaces the marks.
How to read the signals
Blue lines above red lines favour buyers.
Thin fast lines react first.
Thick slow lines show the long trend.
A mark means the groups swapped order.
`ArrowGapPips` `8.0` spaces the marks.
Warm-up needs about two hundred bars.
Alert channels in this build: popup, push notification, email and sound, one message per closed bar.
Group crosses report once per closed bar. `EnableAlerts` is the master switch, and the popup is the route live from the start.
Every Top 10 Moving Average Indicator input
Core settings
| Setting | What it does | Default |
|---|---|---|
Period1 |
MA 1 (fastest). Fastest line, `5`. | 5 |
Period2 |
MA 2. | 10 |
Period3 |
MA 3. | 20 |
Period4 |
MA 4. | 30 |
Period5 |
MA 5 (fast-group edge). Edge of the fast group, `50`. | 50 |
Period6 |
MA 6 (slow-group edge). Edge of the slow group, `75`. | 75 |
Period7 |
MA 7. | 100 |
Period8 |
MA 8. | 125 |
Period9 |
MA 9. | 150 |
Period10 |
MA 10 (slowest). Slowest line, `200`. | 200 |
MaMethod |
Method for every line (SMA/EMA). Recipe for all ten, `MODE_EMA`. | MODE_EMA |
AppliedPrice |
Applied price (0..6). Price fed to every line, `PRICE_CLOSE`. | PRICE_CLOSE |
SignalCooldown |
Min bars between arrows. Bars between marks, `3`. | 3 |
Display settings
| Setting | What it does | Default |
|---|---|---|
ArrowGapPips |
Arrow offset from bar (pips). Mark gap in pips, `8.0`. | 8.0 |
Alert settings
| Setting | What it does | Default |
|---|---|---|
EnableAlerts |
Master alert switch. Master alert switch, `true`. | on |
EnablePopup |
Popup alert. Popup, `true`. | on |
EnablePushNotify |
Push to mobile MetaTrader. | off |
EnableEmail |
Email alert. | off |
EnableSound |
Sound alert. | off |
SoundFile |
Sound file name. | alert.wav |

Where to run it
Ten lines need a chart with trends. EURUSD H1 is the reference chart, with a group cross every week or two. On M15 the fast group turns often. On D1 the 50 and 200 lines are the ones traders cite.
What it misses
Group crosses come late by design.
Ten lines crowd a small chart.
The 200-bar line needs long history.
Only a popup is switched on at first.
Copy the compiled Top 10 Moving Average 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.
Related on forexmt4systems.com: Moving Average Crossover Strategy.
Download the Top 10 Moving Average Indicator for MT4 and MT5
The zip holds the compiled Top 10 Moving Average 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
Which lengths make up the MA 1 to MA 5 fast group?
Five, ten, twenty, thirty and fifty bars by default, set by `Period1` to `Period5`. Their average is compared against the average of the slower five lines.
What does MaMethod MODE_EMA change?
It makes all ten lines exponential, so each one reacts faster than a simple average of the same length. Switch to simple averages for a slower, steadier ribbon.
Which group cross triggers a Ribbon Buy mark?
The bar where the average of the fast group moves from at or below the slow group’s average to above it. `SignalCooldown` then waits three bars before another mark.
Can Period1 through Period10 take other lengths?
Yes. Every length is its own input. Keep them in rising order so the fast and slow groups still mean what their names say, or the group cross loses its logic.
Are results guaranteed?
No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Top 10 Moving Average Indicator as one input. Always backtest before trading live.
Category: this is part of our Trend collection. Browse more Trend for MetaTrader, or explore every MT4 indicator and MT5 indicator on the site.
External references
- For background on this concept, see Top-ups on Wikipedia.
- For broader market context, see Support And Resistance at StockCharts ChartSchool.
