QQE Threshold Indicator – Enhanced Signal Precision with Dynamic RSI Bands

QQE Threshold Indicator – Enhanced Signal Precision with Dynamic RSI Bands

1. Introduction

The QQE Threshold indicator is an advanced variation of the classic Quantitative Qualitative Estimation (QQE), developed by Glaz. This version adds intelligent threshold-based signal recognition to the traditional QQE model, giving traders enhanced insights into market momentum, reversals, and breakout strength.

This indicator is especially useful for traders seeking early and visually clear signals based on RSI dynamics, combined with adaptive volatility filters and a powerful color-coded visualization.

Note: This indicator builds upon the original QQE (Quantitative Qualitative Estimation) logic, which was also published on ProRealCode. If you’re unfamiliar with the core QQE concept, you can read the detailed breakdown here.

2. Indicator Fundamentals

The QQE Threshold is based on a smoothed Relative Strength Index (RSI) and integrates it with a volatility-based trailing line derived from Average True Range (ATR) of the RSI. Here’s how it works:

  • The base RSI is calculated and then smoothed using a simple moving average (SF).

  • From the smoothed RSI, a dynamic ATR of the RSI is computed and multiplied by a constant factor (QQE) to determine the distance of the upper and lower bands.

  • These bands evolve with price action and define a trailing stop-like structure for RSI values.

The innovation in this version lies in the use of threshold zones, visually displayed with user-defined upper and lower boundaries (default ±10), highlighting overbought and oversold pressure zones.

3. Signal Interpretation

The QQE Threshold indicator provides three core types of signals, which are customizable via toggles in the code:

  1. Trend Signal Crosses (showQQEx)
    When the smoothed RSI crosses the dynamic band:

    • Green dot (●) → Long signal (bullish shift)

    • Blue dot (●) → Short signal (bearish shift)

  2. Zero Line Crosses (showQQEz)
    When the smoothed RSI crosses the 50 level:

    • Aqua square (◼) → Upward momentum

    • Fuchsia square (◼) → Downward momentum

  3. Threshold Channel Exits (showQQEc)
    When RSI exits the threshold zone:

    • Green down triangle (▼) → RSI above +Threshold → Potential overbought

    • Red up triangle (▲) → RSI below -Threshold → Potential oversold

These signals help traders identify momentum shifts, trend reversals, and extreme sentiment zones with great clarity.

Additionally, a histogram colored based on the RSI position relative to the threshold adds quick visual feedback:

  • Green → Above threshold (bullish)

  • Red → Below threshold (bearish)

  • Orange → Neutral zone

4. Customizable Parameters

The indicator is flexible and includes several parameters for user customization:

  • RsiPeriod (default: 14): Period for the base RSI calculation.

  • SF (default: 5): Smoothing factor for the RSI.

  • QQE (default: 4.238): Multiplier applied to ATR of RSI to form the bands.

  • Threshold (default: 10): Threshold zone for overbought/oversold levels.

  • showQQEx, showQQEz, showQQEc: Toggles to show/hide specific signals.

Users can adapt these values depending on their trading strategy, asset volatility, or timeframe. For example:

  • A lower threshold (e.g., 5) makes the system more sensitive.

  • A higher smoothing factor slows down the reaction for trend-following strategies.

5. Practical Use Cases

This indicator can be applied in multiple trading styles:

  • Trend Confirmation: Confirm entries when RSI crosses the dynamic trailing band in the direction of the trend.

  • Reversal Detection: Use threshold zone exits as alerts for possible exhaustion and mean reversion.

  • Momentum Filtering: Combine with other indicators (e.g., moving averages) to confirm strength before acting.

  • Visual Clarity: The signal markers help discretionary traders spot important moments without second-guessing.

It’s ideal for swing trading, day trading, and momentum-based setups on any asset class.

6. Indicator Code in ProRealTime

Share this

Risk disclosure:

No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.

ProRealTime ITF files and other attachments : How to import ITF files into ProRealTime platform?

PRC is also on YouTube, subscribe to our channel for exclusive content and tutorials

  1. Chrisinobi • 6 days ago #

    Hallo Iván
    Ein sehr schöner guter Indikator, nach meinen ersten Tests ist er sehr Effektiv und in Verbindung mit anderen Indikatoren liefert er gute Trading Signale. Nun meine Frage, für die Trendsignalkreuzungen hast du mal ein Screener geplant oder das man ein Alarm setzen könnte ? Alarm und Screener wären Perfekt. Die anderen Signale sind nicht ganz so wichtig , dienen nur zur schnelleren Information. Ich hoffe du kannst uns da was erstellen. Danke im Voraus
    Gruß Chrisinobi

    • Iván • 5 days ago #

      Danke, ich werde es berücksichtigen.

avatar
Register or

Likes

avatar avatar avatar avatar avatar
Related users ' posts
bolsatrilera
7 years ago
jissey Bonjour Bolsatrilera, je trouve le cm rsi interessant, merci de l'avoir mis à disposition ! ...
bolsatrilera bonjour jissey, je n'ai aucune information sur ce que tu dis, je suis désolé.
ALE Hi the color is given by a numerical value derived from the oscillator in use. If you comp...
efahmy Thanks mate
Jo-01-R Hello, it is possible to have this indicator but instead of colors rather have numbers rangi...
Nicolas
7 years ago
enricot Scusa nn riesco.
SoloContado If you smooth the signal using a "summation" function, you get a nice "crossing of 0" graph....
ShaunG Greatly appreciated Nicolas!
Etienne Hi, thanks for proving this code. I would like to contribute by adding a computation speed...
Etienne //Compute Super Smoother coefficients once if barindex = 1 then a1 = exp( -1.414 * 3.14159...
Nicolas Thanks a lot!
ak5hay2 Works like crazy on bitcoin. Use different timeframes. Thanks a lot Doc!!!
richyowen Hi, great code thanks. Very new to this forum. Is there a way to add a 100point target on an...
lisamitch50 Morning all, Just backtested on quite a few instruments, worked well on backtesting, but tel...
Matriciel
7 years ago
Alai-n Thanks...
Bard Thanks for sharing this Verdi55. More instructions from Larry Williams website (and a fea...
Nicolas
8 years ago
Jurik RSX
v10.3
Jurik RSX
3
Indicators
hartgeld Hallo Nicolas, ein sehr guter Indikator, vielen Dank! Leider rechnet er bei mir nicht die Pe...
rigel Hi Nicolas, have you coded the Jurik alone (as Mov. average)?
Nicolas 2 versions available in this indicator: https://www.prorealcode.com/prorealtime-indicators/a...
AG1 Thanks Nicolas Still a problem in line 29 Please take a look. thanks again Alex
Nicolas code is modified in the above post, use that one.
AG1 Still a problem in line 29 Please take a look. thanks again Alex
styrke Hello Nicolas, Nice screener, I appreciate the way you always try to condense at maximum th...
Nicolas There's no particular reason. RSI is widely use with its default period and results seems re...
MaoRai54 Hi, first of all Happy New Year. Well, I've inserted your indicator in DAX 1h but I cann...
Vinks_o_7 Hi Mao Happy New Year ! This is just an improved RSI where you plot a standard price momen...
Angel Perez Ciao Francesco. First of all thanks for the indicator and also fro the screener. I do have a...
PSIDIO Ciao to you all, I also have a question and would be very happy for a helpful comment. I a...
SpreadBetMH Hi there, I have V11.1. I get the Indicator but no Arrows on the price. Kind Regards...
Alai-n Ciao Francesco, sei ancora in giro?
Metodi97 This indicator is great but can someone create strategy based on the same indicator it will ...
Nicolas
8 years ago
TradeNavigator RSI
TradeNavigator RSI
10
Indicators
Nicolas Tutte le impostazioni che hanno la parola "period" sono quelle dedicate ai periodi di cambio...
GianfrancoCeck Le chiedo una ultima cosa, ossia se è possibile personalizzare l'indicatore con una scritta ...
Nicolas Spiacente che non sia possibile, le coordinate grafiche non sono in pixel ma nel prezzo e ne...
Nicolas Your picture is too small, but for sure the problem is about the fact you are still using v1...
Rory Dryden Thanks. This looks useful.
Edelmiro Un millón... de gracias... me gustaría más, poder ofrecer euros; pero va a ser que no puedo,...
Jessar Hello, could you tell me how to use this indicator? I think the simplest things can still be...
Mirko Vaglio Interesting idea to bypass the limit of PRT about multiple timeframe, and I am just trying t...
Mirko Vaglio Looking a little bit more, now I understand what had to be absolutely obvious from the first...
Seb nice code! I'm trying to use your method to do a higher timeframe EMA, without success yet. ...
Francesco78 @snucke the results are not the same because the pictures refers to a few years ago. I am no...
snucke @Francesco78 i mean the results differ when i test on my own. so im curious of what the p...
sfl still working, using with filters like : trendFilterUp=close>average[190](close) tren...
alex Im looking for a entry when EpicMA crosses over/under trigger. Then look for exits when Epic...

Top