Opens in a new tab
Repulse MTF Indicator MT5

Repulse MTF is a multi-timeframe oscillator for MetaTrader 5 built by mladen, designed to display a smoothed measure of buying versus selling pressure taken from the current chart or from any other timeframe you choose — without needing to switch charts. It’s a free instant download for the subwindow, and its whole reason for existing is the timeframe input: you can watch, say, H1 momentum while trading off an M15 chart.

What Repulse Actually Calculates

The underlying iRepulse() function computes two raw pressure readings for each bar over an inpPeriod-bar window (15 by default): a “positive” reading built from 3×close − 2×lowest_low − open, scaled by 100 and divided by close, and a “negative” reading built from open + 2×highest_high − 3×close, scaled the same way. Both raw readings are then smoothed with a deliberately slow exponential moving average — the alpha is 2 / (1 + period×5), so with the default period of 15 the effective EMA length is roughly 76 bars, not 15. The plotted value is simply the smoothed positive EMA minus the smoothed negative EMA, colored gray/green/red depending on whether the result is positive, negative, or flat.

When inpTimeFrame is left at its default (current chart timeframe), the indicator runs this calculation directly and plots it like any ordinary single-timeframe oscillator. When you set inpTimeFrame to a higher period (M5 through monthly, or a relative “next/second/third higher timeframe” option), the indicator instead opens a handle to its own logic running on that higher timeframe and copies its value across onto the current chart’s bars. With inpInterpolate left at its default of true, instead of a blocky step from one higher-timeframe value to the next, the code smooths a ramp of values across the lower-timeframe bars that fall inside each higher-timeframe bar.

How to Read It

On a single timeframe, treat it like a slow, heavily-smoothed momentum line: sustained readings on one side of zero indicate persistent buy or sell pressure over the effective smoothing window, and the gray/green/red coloring makes zero-line crosses easy to spot at a glance. In MTF mode, the value shown at every bar on your chart is effectively “what is the higher timeframe’s Repulse reading right now,” letting you filter lower-timeframe entries by higher-timeframe pressure without switching windows.

Key Input Parameters

  • inpTimeFrame (Current time frame): which timeframe the Repulse value is read from — current, any fixed timeframe, or the next/second/third higher timeframe relative to the chart.
  • inpPeriod (15): period feeding the EMA smoothing of the raw positive/negative pressure readings (effective EMA length is roughly period×5).
  • inpInterpolate (true): smooths the value across lower-timeframe bars within a higher-timeframe bar instead of a blocky step; only relevant in MTF mode.

How the Multi-Timeframe Handle Actually Works

Under the hood, selecting a higher timeframe doesn’t just re-run the same formula with a longer bar duration — it opens a genuine iCustom handle pointing at a second, independent instance of the indicator running on that higher timeframe, and copies its already-computed buffer values across onto your chart’s bar times. The code detects the start of each new higher-timeframe bar by comparing time[i] / PeriodSeconds against the previous bar’s mark, and only issues a fresh CopyBuffer call at that boundary; every lower-timeframe bar inside the same higher-timeframe period otherwise just repeats the last copied value (or, with interpolation on, ramps toward it). This is a fairly elegant way to avoid recalculating the higher-timeframe logic redundantly on every lower-timeframe bar, but it also means the indicator’s file name is used internally (via getIndicatorName(), which parses the file’s own path) to build the iCustom call — so renaming the compiled file can break the MTF handle entirely.

Honest Limitations

This is the one area where accuracy matters most: when inpTimeFrame is set to a higher timeframe and inpInterpolate is left on (both true by default in practical MTF use), the code recalculates the interpolated segment on every tick, using the still-forming, not-yet-closed higher-timeframe bar’s live value as one endpoint of the ramp. As that live value keeps changing until the higher-timeframe bar closes, the interpolated values on bars that were already plotted get rewritten right along with it — a real repaint, not just the ordinary “the last bar updates” behavior every live indicator has. On the current timeframe alone (the default inpTimeFrame setting, with no MTF handle involved at all), the calculation is a straightforward forward-only EMA and does not repaint. If you rely on this indicator for MTF confirmation, be aware that the interpolated portion of the higher-timeframe bar is a live estimate until that bar closes, and can shift. It’s also worth noting the indicator has no alert or notification logic built in, and the MTF mode depends on sufficient history being available on the higher timeframe — the code explicitly checks for and warns about missing higher-timeframe data via the timeFrameCheck() function rather than silently failing.

Download the Repulse MTF Indicator MT5
  • inpTimeFrame (default tf_cu (Current time frame)) — Timeframe the Repulse value is read from: current, a fixed timeframe, or next/second/third higher relative timeframe.
  • inpPeriod (default 15) — Period feeding the EMA smoothing of the raw positive/negative pressure readings.
  • inpInterpolate (default true) — Smooths values across lower-timeframe bars within a forming higher-timeframe bar instead of a blocky step.

FAQs About the MT4 Repulse MTF Indicator MT5

Repulse MTF Indicator MT5

Repulse MTF is a multi-timeframe oscillator for MetaTrader 5 built by mladen, designed to display a smoothed measure of buying versus selling pressure taken from the current chart or from any other timeframe you choose — without needing to switch charts. It's a free instant download for the subwindow, and its whole reason for existing…

Download the Repulse MTF Indicator MT5

One Quick Step

Enter your name and email and check your inbox for the download link.