Even spacing makes a ribbon easy to read. The moving average ribbon indicator draws eight averages from ten bars to eighty in steps of ten, shaded from blue through gold to crimson. It marks the bar where all eight settle into perfect order.
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 | 10: MA10, MA20, MA30, MA40, MA50, MA60, MA70, MA80, Buy, Sell |
| Alerts | popup, push notification, email, sound |
| Inputs | 10 |
The visual side
Eight lines plus two marks on price.
`MA10` traces dodger blue as the quickest.
`MA50` traces gold at width 2 through the middle.
`MA80` traces crimson at width 2 as the slowest.
`Buy` prints lime with arrow 233.
`Sell` prints red with arrow 234.
- MA10: line, dodger blue, width 1
- MA20: line, deep sky blue, width 1
- MA30: line, turquoise, width 1
- MA40: line, medium sea green, width 1
- MA50: line, gold, width 2
- MA60: line, orange, width 1
- MA70: line, tomato, width 1
- MA80: line, crimson, width 2
- Buy: arrow, lime, width 2, arrow code 233
- Sell: arrow, red, width 2, arrow code 234

How it builds its numbers
One number sets all eight
`BasePeriod` `10` is the first length and the step. The lines run 10, 20, 30 and so on up to 80 bars.
One recipe
`MAMethod` `MODE_EMA` picks exponential for every line, and `AppliedPrice` `PRICE_CLOSE` feeds them all. Change either and the whole ribbon follows.
The stack
A buy needs every line above the next slower one, quickest on top. The mirrored order produces the sell.
Reading day to day
Blue on top, crimson at the bottom: a rising stack.
Evenly fanned lines mean a steady trend.
A twisted ribbon means no agreement.
Gold marks the fifty-bar middle.
`ArrowOffsetPts` `12` sets the mark gap.
Warm-up needs about eighty bars.
Alert channels in this build: popup, push notification, email and sound, one message per closed bar.
A completed eight-line stack is what reports. `EnableAlerts` is the master switch; the popup and the speaker playing `SoundFile` ship on, while push and email wait.
Every Moving Average Ribbon Indicator input
Core settings
| Setting | What it does | Default |
|---|---|---|
BasePeriod |
Shortest MA period (step = BasePeriod). First length and step size, `10`. | 10 |
MAMethod |
0=SMA 1=EMA 2=SMMA 3=LWMA. Recipe for all eight lines, `MODE_EMA`. | MODE_EMA |
AppliedPrice |
Price every line reads, `PRICE_CLOSE`. | PRICE_CLOSE |
Display settings
| Setting | What it does | Default |
|---|---|---|
ArrowOffsetPts |
Arrow distance from bar in points. Mark gap in points, `12`. | 12 |
Alert settings
| Setting | What it does | Default |
|---|---|---|
EnableAlerts |
Master switch for stack news, `true`. | on |
EnablePopup |
Popup, `true`. | on |
EnablePushNotify |
Push to phone, `false`. | off |
EnableEmail |
Email, `false`. | off |
EnableSound |
Speaker, ships on, `true`. | on |
SoundFile |
Speaker file, `”alert.wav”`. | alert.wav |

Where to run it
An eighty-bar slow end needs a chart with history behind it. EURUSD H1 is the reference chart, where a full stack forms a few times a month. On M5 the ribbon twists often. On D1 a stack can hold for months.
Known limits
A full eight-line stack forms late in a move.
Twisted ribbons give no signal for long periods.
Eight lines crowd a busy chart.
The speaker route ships on.
Copy the compiled Moving Average Ribbon 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 Moving Average Ribbon Indicator for MT4 and MT5
The zip holds the compiled Moving Average Ribbon 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
What lengths does BasePeriod 10 produce?
Ten, twenty, thirty and so on up to eighty bars. The base is both the first length and the step, so changing it rescales the whole ribbon at once.
Which line is MA50 and why is it thicker?
The fifty-bar line, drawn gold at width 2. It marks the middle of the ribbon, which makes the halfway point of the fan easy to find.
What order must MA10 to MA80 reach for a Buy?
Each line above the next slower one, with the ten-bar line on top and the eighty-bar line at the bottom. Anything less leaves the ribbon twisted and prints nothing.
Does MAMethod change the stack test?
Only through the line shapes. Every recipe goes through the same order test; weighted and exponential lines settle into a stack sooner than simple ones.
Are results guaranteed?
No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Moving Average Ribbon 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
- The core method is documented in Volume-weighted average price on Wikipedia.
- Additional market context is at Distance To Lows at StockCharts ChartSchool.
