QQE Mod Scanner
- Indicators
-
Evgenii Sutulov
I build trading indicators, strategies, and dashboards that don't repaint.
Seven years doing this. MetaTrader 4, MetaTrader 5, TradingView.
Closed bars only. What you see is what happened.
The bar being formed never changes a published value. - Version: 1.3
- Activations: 20
QQE Mod Scanner is two products in one file. The first is the QQE Mod oscillator itself, in this chart's own sub-window: two independent QQE blocks over RSI, reduced to one histogram, a trailing line drawn around zero and a Bollinger filter on that line. The state it publishes is the combination of the two, bright when both blocks agree on a direction and grey when they do not.
The second is a board that runs the same calculation across a list of symbols on several timeframes at once. The board tells you which instruments have momentum confirmed and how recently. The sub-window under it shows you the actual histogram, so you do not need a second indicator to act on what the table found.
The board
A row per symbol, a column per scanned timeframe, up to four columns and up to twenty-eight symbols. The symbol list is comma separated, or the board can take the Market Watch list instead. Broker prefix and suffix are detected from the chart you are on, or given by hand. Out of the box the board scans four timeframes: M15, H1, H4 and D1.
A cell reads like ^14b: the confirmed direction and how many bars ago the state turned that way. The word flat means the calculation ran and found no confirmation there. Three dots mean the cell has not been measured yet, and hovering it explains why in words. A signal older than the freshness threshold keeps its hue and loses its weight. A row with a fresh signal anywhere in it is washed with the accent colour.
The AGREE column is what a board is for. For each symbol it takes the visible timeframe columns, finds the majority side and prints v3/4: the direction and how many of the visible timeframes stand on it. Full agreement is drawn bold in that side's colour. A tie prints a dash and is not treated as a verdict, because a one to one split is not conviction. With a single timeframe visible the column is removed entirely rather than printing a 1/1 that restates its neighbour.
Column headers are buttons. Click a timeframe header to sort by that column, freshest first, rows with nothing at the bottom; click again to reverse. Click AGREE to sort by agreement, full agreement first. The active header carries the accent colour and a caret. A separate Sort button cycles freshest, grade and name.
A Show button cycles all, buys, sells and fresh. Buys and sells follow the AGREE verdict rather than any single cell, so a row under buys always reads an up glyph in AGREE, and a tie shows under neither. The filter is on the view, not the calculation: a hidden row is still measured and can still alert.
The legend above the table decodes the notation and can be switched off. Timeframe buttons show and hide a column without stopping the measurement behind it.
The visible row count is fitted to the pane and the row setting is a maximum. Page buttons appear only when the rows do not fit. Because the board never draws more rows than the pane holds, the page buttons are always on screen and always reachable, however tall the row setting is.
Clicking a cell switches this chart to that symbol and timeframe. Two status lines are permanently visible: symbols ready of total, time since the last update, signals in the lookback window; then either the watchdog line or a sentence saying why nothing is showing.
Diagnostics
A second panel, off by default, answers the question "why is there no signal": symbol coverage, which series are short of bars and by how much, how many signals were found in the window, and how many symbols this indicator switched on in Market Watch. A cell that could not be measured is explained rather than left blank.
The chart indicator
Drawn in its own sub-window: the three-state histogram, the trailing line around zero, and the dotted Bollinger bands of the filter. Its timeframe is set separately from the timeframes the board scans.
The settings sheet
The gear opens three tabs. Values holds the timeframe, the RSI period of block one, the RSI period of block two, block two's threshold, the Bollinger length, the Bollinger multiplier and the QQE factor of block one. Every row has steppers, a range and a sentence of help. Changing any of them recalculates the whole board, and the panel reports progress while it does.
Alerts holds the master switch, the per-event switches, four channels, the cooldown and a test button. Styles holds the legend switch, the palette, whether the histogram is drawn, whether the trailing line is drawn, whether the Bollinger envelope is drawn, and the line width. These are the same display controls the matching single-chart indicator carries, under the same names, so a chart set up one way can be reproduced on the other.
Three colour schemes are included, one of them colour-blind safe, using blue and orange rather than red and green. Panel position, scheme, the sort, the filter, the visible columns and every value changed on the sheet persist per chart across a timeframe change and a terminal restart. The interface is English.
Alerts
Alerts are off out of the box, with a master switch on the panel and a Test alert button beside it. The events are a fresh BUY and a fresh SELL, declared separately for each scanned timeframe, plus data health, which speaks when a symbol loses or regains its data. There is a minimum grade setting; this port does not grade, so every signal counts as grade one for it.
Four channels carry them: popup window, sound, push to the mobile terminal, and e-mail. The cooldown is kept per cell and per event, thirty minutes by default, because a board watching many symbols has many more chances to repeat itself than one chart does. Telegram is not part of this product.
Cost
The work is budgeted: a set number of symbols is refreshed per timer tick, so a long list spreads its load rather than stalling the terminal. The first pass is progressive and the panel reports the percentage measured.
Reading it from an EA
The chart indicator's buffers are readable through iCustom and CopyBuffer. Buffer 0 is Histo, the histogram value. Buffer 1 is the colour index for that histogram: 0 grey, 1 up, 2 down. Buffer 2 is TL1-50, block one's trailing line shifted to sit around zero. Buffer 3 is UpperBB, the upper Bollinger band of the filter, and buffer 4 is LowerBB, the lower band. Buffer 5 is State: +1 for QQE up, -1 for QQE down, 0 for no confirmation.
There are no separate Buy and Sell price buffers in this product. The direction is buffer 5, and a signal is a bar where buffer 5 is not zero and differs from the previous bar's value.
The Styles tab hides a plot by taking its colour away, never by emptying a buffer. Every index listed above stays readable through iCustom and CopyBuffer, and stays visible in the Data Window, with the display switches off.
The board is a panel, not a buffer. It is read by eye and by alert.
Provenance
This is a port of "QQE MOD", published on TradingView by Mihkel00. The port was made from a specification and a partial reconstruction of that openly published script, not by translating it line by line. The QQE algorithm itself is canonical and public and is attributed to Roman Ignatov.
The product carries the method's name because that is what it implements. It does not claim authorship of the QQE method or of the TradingView variant.
Honest limits
The board reads closed bars and counts a cell's age in closed bars. In the sub-window the histogram and the line for the bar that has not closed yet are live and will change until it does. A value published on a closed bar does not change afterwards.
AGREE counts timeframes, it does not estimate probability. Four timeframes agreeing means four correlated readings of the same instrument agreed.
A tie deliberately produces no verdict and is hidden by both the buys and the sells filters.
The QQE factor of block two is present for parity with the original and does not move the histogram or the signals. That it does nothing here is stated rather than hidden.
Momentum confirmation is not direction. A bright, upward cell says the two blocks agree about momentum; it says nothing about price structure.
Scanning costs. Twenty-eight symbols on four timeframes is a hundred and twelve cells and will be felt on a slow machine; the budget setting is what you turn down.
No profit figure, win rate or backtest result is claimed here.

