Normalized Quantitative Qualitative Estimation
" Normalized Quantitative Qualitative Estimation nQQE" by KivancOzbilgic, MPL-2.0. Ported to FloScript by FloSignals; modifications under MPL-2.0. Original: Normalized Quantitative Qualitative Estimation nQQE (v2.0), read 2026-10-12T16:04:51.991Z; source language v4.
Licence: Mozilla Public License 2.0 (MPL-2.0) — full text. The source is published with it, modifications included, under the same licence.
Normalized Quantitative Qualitative Estimation nQQE by KivancOzbilgic, ported from Pine v4. Pane indicator with 3 plots, 2 marker series, 2 levels, alerts and 4 inputs.
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © KivancOzbilgic
// ------------------------------------------------------------------------------------------------
// Original author: KivancOzbilgic
// Original title: Normalized Quantitative Qualitative Estimation nQQE
// Licence: MPL-2.0 (the header above is the original notice, kept verbatim)
// Pine version: 4
// Fetched: 2026-10-12
// Ported to FloScript by FloSignals; modifications under MPL-2.0.
// Converter: @flosignals/floscript 0.1.0, strict mode, score 100/100
// ------------------------------------------------------------------------------------------------
//@floscript=1
//@version=5
// Converted by the FloScript converter from a Pine-compatible v4 source.
indicator(" Normalized Quantitative Qualitative Estimation", shorttitle="nQQE", precision=4, timeframe="")
src = input(close)
length = input.int(14, "RSI Length", minval=1)
SSF = input.int(5, "SF RSI SMoothing Factor", minval=1)
showsignals = input.bool(title="Show Crossing Signals?", defval=false)
RSII = ta.ema(ta.rsi(src, length), SSF)
TR = math.abs(RSII - RSII[1])
wwalpha = 1 / length
WWMA = 0.0
WWMA := wwalpha * TR + (1 - wwalpha) * nz(WWMA[1])
ATRRSI = 0.0
ATRRSI := wwalpha * WWMA + (1 - wwalpha) * nz(ATRRSI[1])
QQEF = ta.ema(ta.rsi(src, length), SSF)
QUP = QQEF + ATRRSI * 4.236
QDN = QQEF - ATRRSI * 4.236
QQES = 0.0
QQES := QUP < nz(QQES[1]) ? QUP : QQEF > nz(QQES[1]) and QQEF[1] < nz(QQES[1]) ? QDN : QDN > nz(QQES[1]) ? QDN : QQEF < nz(QQES[1]) and QQEF[1] > nz(QQES[1]) ? QUP : nz(QQES[1])
Colorh = QQEF - 50 > 10 ? #007002 : QQEF - 50 < -10 ? color.red : #E8E81A
QQF = plot(QQEF - 50, "FAST", color=color.maroon, linewidth=2)
plot(QQEF - 50, color=Colorh, linewidth=2, style=plot.style_columns)
QQS = plot(QQES - 50, "SLOW", color=#0007E1, linewidth=2)
hline(10, color=color.gray, linestyle=hline.style_dashed)
hline(-10, color=color.gray, linestyle=hline.style_dashed)
buySignalr = ta.crossover(QQEF, QQES)
plotshape(buySignalr and showsignals ? (QQES - 50) * 0.995 : na, title="Buy", text="Buy", location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(color.green, 0), textcolor=color.white)
sellSignallr = ta.crossunder(QQEF, QQES)
plotshape(sellSignallr and showsignals ? (QQES - 50) * 1.005 : na, title="Sell", text="Sell", location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.red, 0), textcolor=color.white)
alertcondition(ta.cross(QQEF, QQES), title="Cross Alert", message="QQE Crossing Signal!")
alertcondition(ta.crossover(QQEF, QQES), title="Crossover Alarm", message="QQE BUY SIGNAL!")
alertcondition(ta.crossunder(QQEF, QQES), title="Crossunder Alarm", message="QQE SELL SIGNAL!")
alertcondition(ta.crossover(QQEF, 50), title="Cross 0 Up Alert", message="QQE FAST Crossing 0 UP!")
alertcondition(ta.crossunder(QQEF, 50), title="Cross 0 Down Alert", message="QQE FAST Crossing 0 DOWN!")
alertcondition(ta.crossover(QQEF, 60), title="Cross 10 Up Alert", message="QQE Above 10 UPTREND SIGNAL!")
alertcondition(ta.crossunder(QQEF, 40), title="Cross -10 Down Alert", message="QQE Below -10 DOWNTREND SIGNAL!")
alertcondition(ta.crossunder(QQEF, 60) or ta.crossover(QQEF, 40), title="SIDEWAYS", message="QQE Entering Sideways Market!")
This file is under the Mozilla Public License 2.0; it is a port of the original by KivancOzbilgic, with the original licence header kept and the changes made for FloScript noted in the file.
- v2
Library refresh 2026-10-14
- v1
Library refresh 2026-10-12
Disclaimer. Scripts are written and published by members, or ported by FloSignals from open-source originals, and are their authors' own work and opinion. FloSignals does not review them for correctness and nothing in a script is financial advice or a recommendation to buy or sell anything — read the Risk Disclaimer. Posting here is under the Community Rules; a script that is not the poster's to post can be reported as the Copyright & Takedowns page says.

Comments (0)
No comments yet. Members can leave one.