Currency Strength Meter Indicator: 8 Lines From ROC

Written by Dominic Walsh · Published · Last updated

The currency strength meter indicator ranks eight major currencies in one pane. Each line is a rate of change reading, averaged across every pair that holds that currency. USD, EUR, GBP, JPY, AUD, CAD, CHF and NZD each get their own colour. A zero line splits the strong side from the weak side.

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 Separate window (levels 0)
Plots 8: USD, EUR, GBP, JPY, AUD, CAD, CHF, NZD
Alerts popup, push notification, email, sound
Inputs 12

What the Currency Strength Meter Indicator draws on the chart

USD (blue), EUR (gold), GBP (crimson) and JPY (orchid) take the first four buffers.

AUD (green), CAD (orange), CHF (silver) and NZD (turquoise) fill the rest.

A zero line runs across the pane. Above it a currency has gained over the lookback, below it the currency has lost ground.

ShowLabels adds a legend of currency names, so the colours are readable without guessing.

  • USD: line, dodger blue, width 2
  • EUR: line, gold, width 2
  • GBP: line, crimson, width 2
  • JPY: line, medium orchid, width 2
  • AUD: line, lime green, width 2
  • CAD: line, dark orange, width 2
  • CHF: line, silver, width 2
  • NZD: line, turquoise, width 2
EURUSD H1 pane: the currency strength meter indicator with USD leading and JPY at the bottom.
EURUSD H1 pane: the currency strength meter indicator with USD leading and JPY at the bottom.

How the Currency Strength Meter Indicator calculates its values

Rate of change, pair by pair

For every pair holding a given currency, the code reads the close now and the close LookbackPeriod bars ago. That difference becomes a percentage of the older price.

One such number is the raw contribution of one pair. A pair moving up adds to its base currency and takes away from the quote currency.

Averaging into one score

Each currency appears in several pairs, so the readings get summed and divided by how many contributed. That average is the currency score.

The score is then multiplied by 1.5 before it reaches a buffer. Scaling keeps the eight lines spread across a readable range instead of bunched near zero.

How far back the pane fills

MaxBarsBack caps the drawn history at 600 bars by default, and older bars stay empty.

That cap keeps the first pass quick. Eight currencies across many pairs means a lot of history reads per bar, so covering a whole chart would be slow.

How to read the signals

Whichever line sits at the top of the pane is the strongest currency over the lookback, and the bottom line is the weakest.

Pairing the top line against the bottom one is the usual way traders use a meter.

Lines crossing each other matter more than the level of any single line.

Everything bunched near zero means no currency is leading, which is a poor condition for this reading.

Alert channels in this build: popup, push notification, email and sound, one message per closed bar.

Alerts cover popup, push, email and sound, and they fire when a currency clears StrengthHighThresh or drops under StrengthLowThresh. A bar time check keeps it to one alert per closed bar.

Every Currency Strength Meter Indicator input

Core settings

Setting What it does Default
LookbackPeriod ROC lookback bars. LookbackPeriod is how many bars back each rate of change measures. It defaults to 14. A longer setting gives a slower, steadier ranking. 14
StrengthHighThresh Strong currency threshold (alert). StrengthHighThresh is the level a currency has to reach for a strong alert, 6.0 by default. 6.0
StrengthLowThresh Weak currency threshold (alert). StrengthLowThresh is the matching weak side at -6.0. -6.0

Display settings

Setting What it does Default
MaxBarsBack Bars to draw back (history). MaxBarsBack limits how much history the pane draws, 600 bars by default. Raise it if you scroll back often. 600
ShowLabels Show currency legend. ShowLabels draws the currency legend. It defaults to true. on
LabelFontSize Legend label font size. LabelFontSize sets the legend text size, 9 by default. 9

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
Inputs panel for the currency strength meter indicator showing LookbackPeriod and MaxBarsBack.
Inputs panel for the currency strength meter indicator showing LookbackPeriod and MaxBarsBack.

Settings that fit your chart

The screenshot uses EURUSD H1. A meter is a cross market reading, so the chart it sits on decides the timeframe rather than the symbols it measures. H1 and H4 give a ranking that holds for a session or two. On M1 the ordering reshuffles constantly and the crossings stop meaning much.

When the Currency Strength Meter Indicator fails

Rate of change is a blunt measure. A currency that gapped at the open reads as strong for LookbackPeriod bars afterwards, whether or not it still moves.

The meter needs every pair it reads to sit in Market Watch. A missing symbol quietly drops out of that currency average and skews the score.

That 1.5 scaling is fixed in the code. It changes how the lines look and nothing about the underlying ranking.

A meter gives you the ordering, not the entry. Two currencies far apart can stay far apart for days with no clean setup between them.

Copy the compiled Currency Strength Meter 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.

Download the Currency Strength Meter Indicator for MT4 and MT5

The zip holds the compiled Currency Strength Meter 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.

  • 1,380+ indicators
  • MT4 and MT5 files
  • No spam, unsubscribe any time

FAQ

How does the meter score a currency that sits in several pairs?

It reads every pair holding that currency, works out a rate of change over LookbackPeriod bars for each one, then averages those readings. A currency appearing in six pairs gets a six-way average. That is why one odd pair moves the score far less than it would move a single chart.

What does StrengthHighThresh at 6.0 actually trigger?

It sets the level a currency line has to reach before a strong alert fires. StrengthLowThresh does the mirror at -6.0 on the weak side. Both work on the scaled score you see in the pane, so raising the threshold makes alerts rarer without changing any line.

Why is MaxBarsBack capped at 600 bars by default?

Eight currencies across many pairs means a lot of history reads on every bar. Capping the drawn range at 600 keeps the first calculation quick. Raise MaxBarsBack if you scroll back often, and expect the pane to take longer to fill when you do.

Can I read direction from a single USD line alone?

Not reliably. A meter ranks currencies against each other, so the useful information is the gap between two lines rather than the height of one. USD rising while every other line rises too tells you little. USD rising while NZD falls is the readable case.

Are results guaranteed?

No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Currency Strength Meter Indicator as one input. Always backtest before trading live.

Category: this is part of our Sessions collection. Next, plainly, truly, browse more Sessions for MetaTrader, or explore every MT4 indicator and MT5 indicator on the site.

External references

Dominic Walsh - Forex trader and MT4/MT5 developer

About the author

Written by Dominic Walsh, a Forex trader and MT4/MT5 indicator, Expert Advisor and script developer. Every tool on forexmt4systems.com is tested on live charts before release and ships with ready-to-use compiled MT4 (.ex4) and MT5 (.ex5) files. Learn more about the trader and developer behind this site.

How we build, test and correct every tool: Editorial & Testing Policy. Trading carries risk; see the disclaimer.

Leave a Comment