The reversal dot indicator drops a dot at a five-bar pivot, but only sometimes. RSI has to agree. A pivot low needs the reading at or below `RsiBuyMax`, and a pivot high needs it at or above `RsiSellMin`. A cooldown then keeps the dots from clustering.
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: Reversal Dot Buy, Reversal Dot Sell |
| Alerts | popup, push notification, email, sound |
| Inputs | 13 |
What the Reversal dot Indicator draws on the chart
Reversal Dot Buy is a lime dot below a qualifying pivot low.
Reversal Dot Sell is a red dot above a qualifying pivot high.
Both use a round marker rather than a pointer, hence the name.
A Comment panel reports the live state when `ShowDiagnostic` is on.
- Reversal Dot Buy: arrow, lime, width 3, arrow code 159
- Reversal Dot Sell: arrow, red, width 3, arrow code 159

How the Reversal dot Indicator calculates its values
The pivot test
p takes the bar index plus `FractalWidth` `2`. A pivot low needs its low strictly below every low within two bars on each side. Two plus two plus one gives the familiar five-bar Williams window.
The RSI condition
iRSI fills an array at `RsiPeriod` `14`. A dot on a pivot low needs the reading at or below `RsiBuyMax` `45.0`. A pivot high needs it at or above `RsiSellMin` `55.0`. Pivots outside those bands leave no dot.
The cooldown
distance measures bars since the last dot in the same direction. `CooldownBars` `5` blocks a second one inside that gap. Pivots cluster in a choppy stretch, and without the gap the chart fills with dots describing one wobble.
How to read the signals
A dot means a pivot that also had momentum on the right side.
The two-bar confirmation means every dot arrives two bars late.
Gaps between dots are often the cooldown rather than a lack of pivots.
Tighten `RsiBuyMax` toward 35 for a much stricter condition.
Alert channels in this build: popup, push notification, email and sound, one message per closed bar.
`EnableAlerts` starts on and `EnablePopup` carries the text. `EnablePushNotify`, `EnableEmail` and `EnableSound` begin false. `SoundFile` picks the clip. Pivots confirm on closed bars, and the guard allows one dot message per bar.
Every Reversal dot Indicator input
Core settings
| Setting | What it does | Default |
|---|---|---|
RsiPeriod |
RSI confirmation period. RSI length behind the condition, default `14`. | 14 |
RsiBuyMax |
dot fires only if RSI <= this on a bullish pivot low. Ceiling for RSI on a pivot low, default `45.0`. | 45.0 |
RsiSellMin |
dot fires only if RSI >= this on a bearish pivot high. Floor for RSI on a pivot high, default `55.0`. | 55.0 |
CooldownBars |
minimum bars between consecutive dots same direction. Bars enforced between same-direction dots, default `5`. | 5 |
DotOffsetPoints |
offset of dot from the candle wick, in points. Dot distance from the wick in points, default `20`. | 20 |
Display settings
| Setting | What it does | Default |
|---|---|---|
FractalWidth |
bars on each side of the pivot (Williams 5-bar = 2). Bars each side of the pivot, default `2` for a five-bar window. | 2 |
ShowDiagnostic |
Comment() panel with live state. Draws a Comment panel with the live state, default `true`. | on |
Alert settings
| Setting | What it does | Default |
|---|---|---|
EnableAlerts |
Master switch for the dot alerts, default `true`. | on |
EnablePopup |
Terminal dialog on a new dot, default `true`. | on |
EnablePushNotify |
Phone push on a new dot, default `false`. | off |
EnableEmail |
Mail delivery on a new dot, default `false`. | off |
EnableSound |
Sound playback on a new dot, default `false`. | off |
SoundFile |
Wav clip for the dot alert, default `alert.wav`. | alert.wav |

Settings that fit your chart
A five-bar pivot with a momentum condition suits charts that swing rather than drift. EURUSD H1 is the reference chart, where a pivot covers five hours. On M5 the pivots come fast and `CooldownBars` earns its keep. On H4 each dot marks a turn worth noticing.
When the Reversal dot Indicator fails
A five-bar window is small, so plenty of pivots are noise that happened to pass the RSI test.
`RsiBuyMax` `45.0` sits close to the middle, which makes the condition looser than it sounds.
The cooldown hides a genuine second pivot as readily as a duplicate.
Copy the compiled Reversal dot 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 Reversal dot Indicator: Benjamin Graham formula on Wikipedia, New 52 Week Highs And Lows For Exchanges at StockCharts ChartSchool.
Download the Reversal dot Indicator for MT4 and MT5
The zip holds the compiled Reversal dot 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 does RsiBuyMax at 45.0 require?
The reading at or below 45 on the pivot low bar. That keeps dots to pivots that formed while momentum was already soft. Lower it toward 35 for a much stricter condition, at the cost of many fewer dots.
How wide a window does FractalWidth create?
Five bars in total, two each side of the pivot plus the pivot itself. That is the classic Williams window. It also means a dot cannot appear until two newer bars have closed, so every mark is two bars late.
Why do the Reversal Dot plots use a round marker?
Because the tool marks a location rather than a direction. A pointer would suggest an entry, while a dot simply says a qualifying pivot formed here. `DotOffsetPoints` `20` keeps it clear of the wick.
What is in the ShowDiagnostic panel?
The live state of the tests, printed with Comment in the chart corner. It tells you why a pivot did or did not produce a dot, which saves guessing. Set it false once you trust the settings.
Are results guaranteed?
No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Reversal dot Indicator as one input. Always backtest before trading live.
Category: this is part of our Signal and Forecast collection. Browse more Signal and Forecast for MetaTrader, or explore every MT4 indicator and MT5 indicator on the site.
External references
- For background on this concept, see Benjamin Graham formula on Wikipedia.
- For broader market context, see New 52 Week Highs And Lows For Exchanges at StockCharts ChartSchool.
