Kubera - ScorecardKubera - Scorecard helps you quickly assess a company’s financial strength and investment potential.
It combines key fundamental metrics — ROCE, ROE, ROIC, Debt-to-Equity, and WACC — to judge profitability, efficiency, and risk, presenting them with intuitive color-coded ratings and a final verdict.
The indicator also includes an RSI band and table for momentum insight, helping you spot fundamentally strong stocks with healthy technical setups.
Ideal for swing traders, investors, and beginners who want to identify quality companies at a glance.
震盪指標
GTI BGTI: RSI Suite (Standard • Stochastic • Smoothed)
A three-layer momentum and trend toolkit that combines Standard RSI, Stochastic RSI, and a Smoothed/“Macro” RSI to help you read intraday swings, trend transitions, and high-probability reversal/continuation spots.
All in one pane with intuitive coloring and optional divergence markers and alerts.
Why this works
* Stochastic RSI (K/D) visualizes fast momentum swings and timing.
* Standard RSI moves more gradually, helping confirm trend transitions that may span several Stochastic cycles.
* Smoothed RSI (Average → Macro) adds a second-pass filter and slope persistence to reveal the macro direction while suppressing noise.
Used together, Stochastic guides entries/exits around local highs/lows, while the RSI layers improve confidence when a small swing is likely part of a larger turn.
What you’ll see
* Standard RSI (yellow; pink above Bull line, aqua below Bear line).
* Stochastic RSI (K/D) with contextual colors:
* Greens when RSI is weak/oversold (bearish conditions → watch for bullish reversals/continuations).
* Reds when RSI is strong/overbought (bullish conditions → watch for bearish reversals/continuations).
* Smoothed (Macro) RSI with trend color:
* Red when macro is ascending (bullish),
* Aqua when macro is descending (bearish).
* Divergences (optional markers):
* Bearish: RSI Lower High + Price Higher High (red ⬇).
* Bullish: RSI Higher Low + Price Lower Low (green ⬆).
* No repaint: pivots confirm after the chosen right-bars window.
How to use it
* Bullish Reversal
* Macro RSI is reversing at a higher low after price has been in a overall downtrend
* Stochastic RSI is switching from green to red in an overall downtrend
* Bullish Oversold
* Macro RSI is reversing from a significantly low level after price has a short but strong dip during an overall uptrend
* Stochastic RSI is switching from green to red in an overall uptrend
* Bullish Continuation
* Macro RSI is ascending with a strong slope or forming a higher low above the 50 line
* Stochastic RSI is reaching a bottom but still painted red
* Bearish Reversal
* Macro RSI is reversing at a lower high after price has been in a overall uptrend
* Stochastic RSI is switching from red to green in an overall uptrend
* Bearish Overbought
* Macro RSI is reversing from a significantly high level after price has a short but strong jump during an overall downtrend
* Stochastic RSI is switching from red to green in an overall downtrend
* Bearish Continuation
* Macro RSI is descending with a strong slope or forming a lower high below the 50 line
* Stochastic RSI is reaching a top but still painted green
* Divergences: Use as signals of exhaustion—best when aligned with Macro RSI color/slope and key levels (e.g., Bull/Bear lines, 50 midline).
*** IMPORTANT ***
* Stack confluence, don’t single-signal trade. Look for:
* 1) Macro RSI color & slope (red = ascending/bullish, aqua = descending/bearish)
* 2) Standard RSI location (above/below Bull/Bear lines or 50)
* 3) Stoch flip + direction
* 4) Price structure (HH/HL vs LH/LL)
* 5) Divergence type (regular vs hidden) at meaningful levels
* Trade with the macro
* Prioritize longs when Macro RSI is red or just flipped up
* Prioritize shorts when Macro RSI is aqua or just flipped down
* Counter-trend setups = smaller size and faster management.
* Location > signal
* The same crossover/divergence is higher quality near Bull (~60)/Bear(~40) or extremes than in the mid-range chop around 50.
* Early vs confirmed
* Use the early pivot heads-up for anticipation, but scale in only after the confirmed pivot (right-bars complete). If early signal fails to confirm, stand down.
* Define invalidation upfront
* For divergence entries, place stops beyond the pivot extreme (LL/HH). If Macro RSI flips against your trade or RSI breaks back through 50 with slope, exit or tighten.
* Multi-timeframe alignment
* Best results come when entry timeframe (e.g., 1H) aligns with higher-TF macro (e.g., 4H/D). If they disagree, treat it as mean-reversion only.
* Avoid common traps
* Skip: isolated Stochastic flips without RSI support, divergences without price HH/LL confirmation, and serial divergences when Macro RSI slope is strong against the idea.
* Parameter guidance
* Start with defaults; then tune: confirmBars 3–7, minSlope 0.05–0.15 RSI pts/bar, pivot left/right tighter for faster but noisier signals, wider for cleaner but fewer.
* Alerts = workflow, not auto-trades
* Use Macro Flip + Divergence alerts as a checklist trigger; enter only when your confluence rules are met and risk is defined.
Key inputs (tweak to your market/timeframe)
* RSI / Stochastic lengths and K/D smoothing.
* Bull / Bear Lines (default 61.1 / 43.6).
* Average RSI Method/Length (SMA/EMA/RMA/WMA) + Macro Smooth Length.
* Trend confirmation: bars of persistence and minimum slope to reduce flip noise.
* Pivot look-back (left/right) for divergence confirmation strictness.
Alerts included
* Macro Flip Up / Down (Smoothed RSI regime change).
* RSI Bullish/Bearish Divergence (confirmed at pivot).
* Stochastic RSI continuation/divergence (optional).
Tips
* Level + Slope matter. High/low RSI level flags conditions; slope confirms impulse/continuation.
* Let Stochastic time the swing; let Macro RSI filter the trend.
* Tighten or loosen pivot windows to trade fewer/cleaner vs. more/faster signals.
Adaptive AI Polar Oscillator [by Oberlunar]Adaptive AI Oscillator blends trading signals with two order-flow style oscillators and a lightweight online-learning model to keep it reactive, adaptive and computationally feasible.
What it is
A lightweight Multi Layer Perceptron (neural net) updates online on every bar, so it keeps adapting as conditions change.
An adaptive collector that fuses features like Price (close, ohlc4, etc...), a selectable (but not used in the original implementation) Moving Average (EMA/SMA/WMA/RMA/HMA/DEMA/TEMA), RSI, the classic volume datafeeds, plus two “OberPolar” oscillators computed above and below the current integral area price.
What you see
White line — the model’s denormalised forecast (in price units).
Colored price line — actual price, shown aqua when forecast ≥ price (“golden” bias) and red when forecast < price (“death” bias).
Why it helps
Combines heterogeneous information (trend, momentum, participation, regional buy/sell pressure) into a single adaptive forecast.
Online learning reduces regime staleness versus fixed-parameter indicators.
The aqua/red bias offers a quick, visual state for discretionary decisions.
How it works (intuitive)
Each AI input is standardised (z-score) with optional clamping to mitigate outliers.
A rolling window of recent values feeds a 2-layer AI to predict one step ahead.
After each bar closes, the model compares forecast vs. reality and nudges its weights (SGD with momentum, L2, optional gradient clipping).
The forecast is de-standardised back to price units and plotted as the white line.
Reading guide
Crossovers between forecast and price often mark potential bias flips.
Persistent aqua → model perceives supportive/positive conditions.
Persistent red → model perceives headwinds/negative conditions.
Complex Strategy — Oscillator Trendline Break
Connect the first pivot in the fading bias with the first pivot in the new bias, then trade the break of that line in the direction of the new bias.
Idea in one line
Use the Adaptive AI Oscillator (green = bullish bias, red = bearish). When bias flips, build a line across the oscillator pivots that “span” the transition; the break of that line times the entry.
Long setup (mirror for shorts)
Bias transition : a bearish (red) regime is ongoing, then the oscillator turns bullish (green).
Anchor pivots : take the first MIN in red just before/around the flip and the first MAX in green after the flip. Draw a trendline L through these two oscillator values (time–value line).
Trigger : enter LONG on the close that breaks above L —optional confirmations: price above your MA, non-decreasing volume, no immediate supply zone overhead.
Risk : stop below the last oscillator swing low or below a retest of L; first target at 1R–1.5R or at the opposite bias zone; trail under successive oscillator higher lows.
Short setup
Bias turns from green (bullish) to red (bearish).
Connect the first MAX in green to the first MIN in red → line L.
Enter SHORT on a close below L ; stop above the last oscillator swing high; symmetric targets/trailing.
Complex Strategy #2 — Bias-Pivot Breakout with Exit on Line Failure
Connect two pivots of the same bias to build a dynamic barrier; trade the breakout in the bias direction and exit when that line later fails.
Long play (mirror for shorts)
Build the line. During a green (bullish) phase, mark the first two local MAX of the oscillator. Connect them to form the yellow resistance line L (extend it right). If a new, clearer MAX appears before a break, re-anchor using the two most recent highs.
Entry trigger. Go LONG on a close above L (the “Break and LONG” in the image). Optional filters: price above your MA, rising volume, no immediate overhead level.
Risk. Initial stop: below the last oscillator swing low or below the retest of L . Position size for 1–2R baseline.
Exit. Close the long when the oscillator later breaks back below L (the “Break and LONG exit”), or on a bias flip to red, or at a fixed target/trailing under higher lows.
Short play (symmetric)
In a red phase, connect the first two local MIN to form support line L .
Enter SHORT on a close below L ; stop above the last oscillator swing high; exit on a break back above L or on a flip to green.
Notes
Require a minimum slope/spacing between pivots to avoid flat/noisy lines.
Re-anchor the line if fresher pivots emerge before a valid break.
Use with your regime filter (MA slope, higher-timeframe bias) to reduce whipsaws.
Complex Strategy #3 — Lateral Box & Zero-Slope Breakout
An easy way to understand sideways phases and the next price direction: draw two zero-slope lines (flat upper/lower bounds) across the oscillator’s lateral area; when a strong break occurs, trade in the direction of that break.
How to use it
Identify a lateral area on the oscillator (flat, low-variance region). Place a flat upper line on tops and a flat lower line on bottoms (slope ≈ 0).
Wait for a decisive break : close outside the band with expansion (range/true range rising, or a wide candle).
• Break up → bias for LONG .
• Break down → bias for SHORT .
Why it helps
Flat lines isolate congestion; the next impulsive move is often revealed by which side is broken with force.
It filters noise inside the range and focuses attention on the transition from balance → imbalance.
Practical filters (optional)
Require minimum bar body/ATR on the breakout candle to avoid false breaks .
Confirm with your regime filter (e.g., price above/below your MA) or a quick retest that holds.
Invalidate the signal if the price immediately returns inside the band on the next bar.
General Operational notes
If new pivots form before a break, re-anchor the line with the most recent qualifying pair (keeps the structure fresh).
Ignore very shallow lines (near-flat): require a minimum slope or angle to avoid noise.
Combine with your bias filter (e.g., MA slope/regime) to reduce false starts.
Limits & good practice
Adaptive models can react to noise; treat signals as context within a risk-managed plan.
No model predicts the future—this summarises evolving conditions compactly.
— Oberlunar 👁 ★
Smart Moving Average Dynamics [ChartNation]Smart Moving Average Dynamics (SMAD) — by Chart Nation
What it does:
SMAD maps how far price deviates from a chosen moving average and normalizes that distance into a bounded oscillator (−100…+100). It detects extreme expansions and prints non-repainting dots when the move exits an extreme. Price-level rails are drawn from those events (with optional fade/expiry) to highlight likely reaction zones. The MA line is colored by bias. A slim gauge summarizes the current oscillator percentile; a compact info panel shows TF, Trend, Volume rank, and Volatility rank.
How it works (high-level, closed-source)
Core signal: diff = price – MA(type, length) where MA can be SMA/EMA/RMA/WMA/VWMA.
Normalization (choose one):
Highest Abs (N): scales diff by the highest absolute excursion over N bars (fast, adaptive).
Z-Score: scales by stdev(diff, N) and maps ±σ to ±100 via a user factor.
ATR-Scaled: scales by ATR * k, relating deviation to current volatility.
Percent Rank: ranks the magnitude of |diff| over N bars and reapplies the original sign.
All methods clamp to −100…+100 to keep visuals consistent across assets/TFs.
Extremes & confirmation: Dots print only when an extreme exits ±100 (optionally on bar close) and can be filtered by linger bars and short-term slope flip, reducing one-bar spikes.
Rails: When an extreme confirms, a rail is anchored at the corresponding price swing and can soft-fade and/or expire after X bars.
Trend color: MA color = Up (green) when oscillator > threshold and MA slope > 0; Down (magenta) for the opposite; Neutral otherwise.
Context panels:
Slim Gauge: current oscillator bucket (0–20) with the exact normalized reading.
Info Panel: TF, Trend, and 0–100 percent-ranks of Volume and ATR-based volatility grouped as Low / Medium / High.
SMAD isn’t a collection of plots; it’s a single framework that integrates:
a deviation-from-MA engine,
four interchangeable normalization models (selected per market regime),
a gated extreme detector (linger + slope + confirm-on-close), and
time-aware rails with soft fade/expiry, presented with a minimal gauge and info panel so traders can compare regimes across TFs without recalibrating thresholds.
How to use (examples, not signals)
Mean-revert plays: When price exits an extreme and prints a dot, look for reactions near the new rail. Combine with your S/R and risk model.
Trend continuation: In strong trends the oscillator will spend more time above/below zero; the colored MA helps keep you aligned and avoid fading every push.
Regime switching: Try Percent Rank or ATR-Scaled on choppy/alts; Z-Score on majors; Highest Abs (N) when you want fastest adaptation.
Risk ideas: Rails can be used as partial-take or invalidate levels. Always backtest on your pair/TF.
Key settings
Normalization: Highest Abs / Z-Score / ATR-Scaled / Percent Rank (with N & factors).
Filters: Extreme threshold, linger bars, slope lookback, confirm on close.
Rails: Expire after X bars; soft-fade step.
Panels: Slim gauge (bottom-right), Info panel (middle-right).
Notes & limits
Prints confirm after the extreme exits ±100; nothing repaints retroactively.
Normalization can change sensitivity—choose the one matching your asset’s regime.
NSR Dynamic Channel - HTF + ReversionNSR Dynamic Channel – HTF Volatility + Reversion
(Beginner-friendly, pro-grade, non-repainting)
The NSR Dynamic Channel builds an adaptive volatility envelope that compares current price action to a statistically-derived “expected” range pulled from a user-selected higher timeframe (HTF).
Is this just another keltner variation?
In short: Keltner reacts. NSR anticipates.
Keltner says “price moved a lot.”
NSR says “this move is abnormal compared to the last 2 days on a higher timeframe — and here’s the probability it snaps back.”
The channel is not a simple multiple of recent ATR or standard deviation; instead it:
Samples HTF volatility over a rolling window (default: last 2 days on the chosen HTF).
Expected Range
HTF Volatility Spread = StDev of 1-bar ATR on the HTF
Scales this HTF range to the current chart’s volatility using a compression ratio :
compRatio = SMA(High-Low over lookback) / Expected Range
This makes the channel tighten in low-vol regimes and widen in high-vol regimes .
Centers the channel on a composite mean ( AVGMEAN ) calculated from:
Smoothed Adaptive Averages of the current timeframe close
SMA of close over the user-defined lookback ( Slow )
The three means are averaged to reduce lag and noise.
Draws two layers :
HTF Expected Channel (gray fill) = PAMEAN ± expectedD
Dynamic Expected Band (inner gray) = HTF Expected Range
Adds a fast 2σ envelope around AVGMEAN using the standard deviation of close over the lookback period.
Core Calculations (Conceptual Overview)
HTF Baseline → ATR on user HTF → SMA & StDev over a defined number of days
Compression Ratio → Normalizes current range to HTF “normal” volatility
Expected Band Width → Expected Range × CompressionRatio
Bias Detection → % change of composite mean over 2 bars → “bullish” / “bearish” filter
Overextension % → Position of price within the expected band (0–100%)
How to Use It (3 Steps)
Apply to any chart – defaults work on futures (NQ/ES), stocks (SPY), crypto (BTC), forex, etc.
Price is outside both the fast 2σ envelope and the HTF-scaled expected band
Expect some sort of reversion
Enable alerts – two built-in conditions:
NSR Exit Long – bullish bias + high crosses upper expected edge
NSR Exit Short – bearish bias + low crosses lower expected edge
Optional toggles :
Show 2σ Price Range → fast overextension lines
Expected Channel → HTF-based gray fill
Mean → MEAN centerline
Why It Works
Context-aware : Uses HTF “normal” volatility as anchor
Adaptive : Shrinks in consolidation, expands in breakouts
Filtered signals : Only triggers when both statistical layers agree
Non-repainting : All calculations use confirmed bars
Happy trading!
nsrgroup
RSI + MFIRSI and MFI combined, width gradient fields if OS or OB, shows divergences separate for wicks and bodies, shows dots when mfi and rsi oversold at the same time.
RSI + Elder Bull-Bear pressure RSI + Bull/Bear (Elder-Ray enhanced RSI)
What it is
An extended RSI that overlays Elder-Ray Bull/Bear Power on the same, zero-centered scale. You get classic RSI regime cues plus a live read of buy/sell pressure, with optional smoothing, bands, and right-edge value labels.
Key features
RSI with bands – default bands 30 / 50 / 70 (editable).
Bull/Bear Power (Elder) – ATR-normalized; optional EMA/SMA/RMA/HMA smoothing.
One-pane overlay – RSI and Bull/Bear share a common midline (RSI-50 ↔ panel 0).
Right-edge labels – always visible at the chart’s right margin with adjustable offsets.
How to read it
Cyan line = RSI (normalized)
Above the mid band = bullish regime; below = bearish regime.
Green = Bull Power, Red = Bear Power
Columns/lines above 0 show buy pressure; below 0 show sell pressure.
Smoothing reduces noise; zero-line remains your key reference.
Trade logic (simple playbook)
Entry
BUY (primary):
RSI crosses up through 50 (regime turns bullish), and
Bull (green) crosses up through 0 (buy pressure confirms).
SELL (primary):
RSI crosses down through 50, and
Bear (red) crosses down through 0 (sell pressure confirms).
Alternative momentum entries
Aggressive BUY: Bull (green) pushes above RSI-80 band (strong upside impulse).
Aggressive SELL: Bear (red) pushes below RSI-30 band (strong downside impulse).
Exits / trade management
In a long: consider exiting or tightening stops if Bear (red) dips below the 0 line (rising sell pressure) or RSI loses 50.
In a short: consider exiting or tightening if Bull (green) rises above 0 or RSI reclaims 50.
Tip: “0” on the panel is your pressure zero-line (maps to RSI-50). Most whipsaws happen near this line; smoothing (e.g., EMA 21) helps.
Defaults (on first load)
RSI bands: 30 / 50 / 70 with subtle fills.
Labels: tiny, pushed far right (large offsets).
Bull/Bear smoothing: EMA(21), smoothed line plot mode.
RSI plotted normalized so it overlaps the pressure lines cleanly.
Tighten or loosen the Bull/Bear thresholds (e.g., Bull ≥ +0.5 ATR, Bear ≤ −0.5 ATR) to demand stronger confirmation.
Settings that matter
Smoothing length/type – balances responsiveness vs. noise.
Power/RSI Gain – visual scaling only (doesn’t change logic).
Band placement – keep raw 30/50/80 or switch to “distance from 50” if you prefer symmetric spacing.
Label offsets – move values clear of the last bar/scale clutter.
Good practices
Combine with structure/ATR stops (e.g., 1–1.5× ATR, swing high/low).
In trends, hold while RSI stays above/below 50 and the opposite pressure line doesn’t dominate.
In ranges, favor signals occurring near the mid band and take profits at the opposite band.
Disclaimer: This is a research/visual tool, not financial advice at any kind. Test your rules on multiple markets/timeframes and size positions responsibly.
Dynamic Fractal Flow [Alpha Extract]An advanced momentum oscillator that combines fractal market structure analysis with adaptive volatility weighting and multi-derivative calculus to identify high-probability trend reversals and continuation patterns. Utilizing sophisticated noise filtering through choppiness indexing and efficiency ratio analysis, this indicator delivers entries that adapt to changing market regimes while reducing false signals during consolidation via multi-layer confirmation centered on acceleration analysis, statistical band context, and dynamic omega weighting—without any divergence detection.
🔶 Fractal-Based Market Structure Detection
Employs Williams Fractal methodology to identify pivotal market highs and lows, calculating normalized price position within the established fractal range to generate oscillator signals based on structural positioning. The system tracks fractal points dynamically and computes relative positioning with ATR fallback protection, ensuring continuous signal generation even during extended trending periods without fractal formation.
🔶 Dynamic Omega Weighting System
Implements an adaptive weighting algorithm that adjusts signal emphasis based on real-time volatility conditions and volume strength, calculating dynamic omega coefficients ranging from 0.3 to 0.9. The system applies heavier weighting to recent price action during high-conviction moves while reducing sensitivity during low-volume environments, mitigating lag inherent in fixed-period calculations through volatility normalization and volume-strength integration.
🔶 Cascading Robustness Filtering
Features up to five stages of progressive EMA smoothing with user-adjustable robustness steps, each layer systematically filtering microstructure noise while preserving essential trend information. Smoothing periods scale with the chosen fractal length and robustness steps using a fixed smoothing multiplier for consistent, predictable behavior.
🔶 Adaptive Noise Suppression Engine
Integrates dual-component noise filtering combining Choppiness Index calculation with Kaufman’s Efficiency Ratio to detect ranging versus trending market conditions. The system applies dynamic damping that maintains full signal strength during trending environments while suppressing signals during choppy consolidation, aligning output with the prevailing regime.
🔶 Acceleration and Jerk Analysis Framework
Calculates second-derivative acceleration and third-derivative jerk to identify explosive momentum shifts before they fully materialize on traditional indicators. Detects bullish acceleration when both acceleration and jerk turn positive in negative oscillator territory, and bearish acceleration when both turn negative in positive territory, providing early entry signals for high-velocity trend initiation phases.
🔶 Multi-Layer Signal Generation Architecture
Combines three primary signal types with hierarchical validation: acceleration signals, band crossover entries, and threshold momentum signals. Each signal category includes momentum confirmation, trend-state validation, and statistical band context; signals are further conditioned by band squeeze detection to avoid low-probability entries during compression phases. Divergence is intentionally excluded for a purely structure- and momentum-driven approach.
🔶 Dynamic Statistical Band System
Utilizes Bollinger-style standard deviation bands with configurable multiplier and length to create adaptive threshold zones that expand during volatile periods and contract during consolidation. Includes band squeeze detection to identify compression phases that typically precede expansion, with signal suppression during squeezes to prevent premature entries.
🔶 Gradient Color Visualization System
Features color gradient mapping that dynamically adjusts line intensity based on signal strength, transitioning from neutral gray to progressively intense bullish or bearish colors as conviction increases. Includes gradient fills between the signal line and zero with transparency scaling based on oscillator intensity for immediate visual confirmation of trend strength and directional bias.
All analysis provided by Alpha Extract is for educational and informational purposes only. The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations.
True Range(TR) + Average True Range (ATR) COMBINEDThis indicator combines True Range (TR) and Average True Range (ATR) into a single panel for a clearer understanding of price volatility.
True Range (TR) measures the absolute price movement between highs, lows, and previous closes — showing raw, unsmoothed volatility.
Average True Range (ATR) is a moving average of the True Range, providing a smoother, more stable volatility signal.
📊 Usage Tips:
High TR/ATR values indicate strong price movement or volatility expansion.
Low values suggest compression or a potential volatility breakout zone.
Can be used for stop-loss placement, volatility filters, or trend strength confirmation.
⚙️ Features:
Multiple smoothing methods: RMA, SMA, EMA, WMA.
Adjustable ATR length.
Separate colored plots for TR (yellow) and ATR (red).
Works across all timeframes and instruments.
APXTradez - Intraday RSI (8)🔹 APXTradez Intraday RSI (8)
Purpose:
A fast-reacting momentum and bias indicator built for intraday options and scalping setups. This version of RSI (8) identifies immediate shifts in strength, momentum slope, and trend bias—allowing traders to spot reversals, momentum builds, or choppy zones within seconds.
What It Shows
RSI (8) → ultra-responsive short-term strength indicator.
Bias Zones:
- Bull Bias (Green) – RSI rising above 55 with slope up → intraday long setups favored.
- Bear Bias (Red) – RSI falling below 45 with slope down → short setups favored.
- Chop (Gray) – Neutral area between 45–55 → reduced edge, wait for direction.
- Background Color: Highlights current bias (green/red/gray) for quick visual confirmation.
- Dynamic Label: Displays live bias text on chart (Bull, Bear, or Chop).
How to Use
Apply on 1m–15m charts for day trading or scalping options.
Trade in bias direction:
- Enter long when RSI crosses + slopes above 55 (bull bias).
- Enter short when RSI crosses + slopes below 45 (bear bias).
- Avoid chop zones (RSI between 45–55 or flat). Wait for a slope confirmation.
Combine with APX Intraday VWAP + EMA overlay, APX TTM Squeeze, and/or the APX MACD to align direction with trend and volume pressure.
Overbought/Oversold: Above 70 or below 30 still mark exhaustion zones — use for exits, not entries.
Best Use Case
Intraday confirmation of trend bias and momentum strength — helping you stay on the right side of fast-moving setups and avoid low-edge chop.
Composite Buy/Sell Score [-100 to +100] by LMComposite Buy/Sell Score (Stabilized + Sensitivity) by LM
Description:
This indicator calculates a composite trend strength score ranging from -100 to +100 by combining multiple popular technical indicators into a single, smoothed metric. It is designed to give traders a clear view of bullish and bearish trends, while filtering out short-term noise.
The score incorporates signals from:
PPO (Percentage Price Oscillator) – measures momentum via the difference between fast and slow EMAs.
ADX (Average Directional Index) – detects trend strength.
RSI (Relative Strength Index) – identifies short-term momentum swings.
Stochastic RSI – measures RSI momentum and speed of change.
MACD (Moving Average Convergence Divergence) – detects momentum shifts using EMA crossovers.
Williams %R – highlights overbought/oversold conditions.
Each component is weighted, smoothed, and optionally confirmed across a configurable number of bars, producing a stabilized composite score that reacts more reliably to significant trend changes.
Key Features:
Smoothed Composite Score
The final score is smoothed using an EMA to reduce volatility and emphasize meaningful trends.
A Sensitivity Multiplier allows traders to exaggerate the score for stronger trend signals or dampen it for quieter markets.
Customizable Inputs
You can adjust each indicator’s parameters, smoothing lengths, and confirm bars to suit your preferred timeframe and trading style.
The sensitivity multiplier allows fine-tuning the responsiveness of the trend line without changing underlying indicator calculations.
Visual Representation
Score Line: Green for positive (bullish) trends, red for negative (bearish) trends, gray near neutral.
Reference Lines:
0 = neutral
+100 = maximum bullish
-100 = maximum bearish
Adaptive Background: Optionally highlights the background intensity proportional to trend strength. Strong green for bullish trends, strong red for bearish trends.
Multi-Indicator Integration
Combines momentum, trend, and overbought/oversold signals into a single metric.
Helps identify clear entry/exit trends while avoiding whipsaw noise common in individual indicators.
Recommended Use:
Trend Identification: Look for sustained movement above 0 for bullish trends and below 0 for bearish trends.
Exaggerated Trends: Use the Sensitivity Multiplier to emphasize strong trends.
Filtering Noise: The smoothed score and confirmBars settings help reduce false signals from minor price fluctuations.
Inputs Overview:
Input Purpose
PPO Fast EMA / Slow EMA / Signal Controls PPO momentum sensitivity
ADX Length / Threshold Detects trend strength
RSI Length / Overbought / Oversold Measures short-term momentum
Stoch RSI Length / %K / %D Measures speed of RSI changes
MACD Fast / Slow / Signal Measures momentum crossover
Williams %R Length Detects overbought/oversold conditions
Final Score Smoothing Length EMA smoothing for final composite score
Confirm Bars for Each Signal Number of bars used to confirm individual indicator signals
Sensitivity Multiplier Scales the final composite score for exaggerated trend response
Highlight Background by Trend Strength Enables adaptive background coloring
This indicator is suitable for traders looking for a single, clear trend metric derived from multiple indicators. It can be applied to any timeframe and can help identify both strong and emerging trends in the market.
APXTradez - MACD🔹 APXTradez MACD — Summary & Usage Guide
Purpose
- The APXTradez MACD measures momentum shifts and trend reversals using exponential moving averages (EMAs).
- It helps you see when momentum changes direction before price fully reacts — perfect for catching early entries or confirming strength behind a move.
Core Components
- MACD Line (Aqua / Orange)
- Calculated as the difference between the 12 EMA and 26 EMA.
- Shows short-term vs. long-term momentum.
- Aqua: Fast EMA above slow EMA → bullish momentum building.
- Orange: Fast EMA below slow EMA → bearish momentum dominating.
- Signal Line (Blue)
- A 9-EMA of the MACD line that smooths the momentum swings.
When the MACD Line crosses above it → bullish crossover.
When the MACD Line crosses below it → bearish crossover.
-Histogram (Green/Red Columns)
Represents the distance between the MACD Line and Signal Line.
Lime = Bullish momentum expanding.
Faded Lime = Bullish momentum fading.
Red = Bearish momentum expanding.
Faded Red = Bearish momentum fading.
The histogram visually shows when momentum is increasing or losing strength.
-Zero Line
Center baseline separating bullish (above) and bearish (below) momentum.
Crosses through zero often mark early trend reversals.
How to Use It
1️⃣ Identify Trend Direction
- MACD Line above Signal Line & Histogram above Zero:
→ Bullish momentum. Confirms uptrend or call-side bias.
- MACD Line below Signal Line & Histogram below Zero:
→ Bearish momentum. Confirms downtrend or put-side bias.
2️⃣ Spot Momentum Shifts (Crossovers)
- Bullish Crossover:
MACD (Aqua) crosses above Signal (Blue).
→ Potential start of new upward leg or reversal.
- Bearish Crossover:
MACD (Orange) crosses below Signal (Blue).
→ Possible start of new downward leg.
These are your “momentum pivot” moments — strongest when aligned with a squeeze fire or RSI midline cross.
3️⃣ Read Momentum Strength (Histogram)
- Growing Lime bars → momentum accelerating upward.
- Shrinking Lime bars → bullish side fading.
- Growing Red bars → bearish momentum accelerating.
- Shrinking Red bars → bearish side weakening.
When you see histogram bars shrink or color fade, it often signals a pause or pullback before a potential flip.
4️⃣ Combine with APX Squeeze & RSI
- MACD crosses up + TTM Squeeze fires + RSI > 50 → powerful bullish swing signal.
- MACD crosses down + Squeeze fires down + RSI < 50 → strong bearish setup.
This triple-stack alignment confirms momentum, volatility, and sentiment all pointing in one direction.
- The APXTradez MACD is your momentum confirmation tool.
- It helps you visually see when momentum flips, builds, or fades, giving you precise entry timing inside larger swing or intraday setups.
- Used with the APX RSI and APX TTM Squeeze, it forms one of the three core pillars of the APX Momentum Framework — confirming when volatility, strength, and direction all align.
APXTradez - Swing RSI🔹 APXTradez Swing RSI — Summary & Usage Guide
Purpose
- The APXTradez Swing RSI measures momentum strength and exhaustion in a stock’s price movement.
- It tells you when price is overextended, balanced, or reversing, helping you time entries, exits, and confirmation on swing trades.
This version is tuned for clean visual momentum tracking during 2-to-5-day swings or multi-week trends.
Core Components
-RSI (14-period)
- Uses a standard 14-bar calculation on the closing price (or whichever source you choose).
- Ranges between 0 and 100, showing how strong the recent price push has been.
- Smooth enough for swing trading; reactive enough to catch early turns.
- Color-Coded RSI Line
White = Neutral zone (healthy price action).
Lime = Oversold (< 30) → buying opportunity or short-covering zone.
Red = Overbought (> 70) → profit-taking or potential pullback zone.
Color shifts automatically as RSI crosses key thresholds, so you see sentiment flips instantly.
Horizontal Levels
70 = Overbought (red dashed line)
30 = Oversold (lime dashed line)
50 = Midline (gray dotted line, optional toggle)
These levels frame the RSI’s “zones of strength.”
How to Use It
1️⃣ Identify Momentum Regime
-Above 50 → Bullish Bias
Momentum favors buyers. Use this to confirm call or long positions.
- Below 50 → Bearish Bias
Momentum favors sellers. Confirms put or short setups.
- The 50 midline is your “momentum compass.”
Crosses above or below often precede trend reversals.
2️⃣ Spot Extremes (30 / 70 Zones)
RSI > 70 = Overbought
Price is stretched; risk of pullback or short-term cooling.
→ Good area to trim longs or watch for reversal candles.
RSI < 30 = Oversold
Price is washed out; potential bounce forming.
→ Good area to look for bullish reversal + volume confirmation.
3️⃣ Combine with APX TTM Squeeze and Overlay
- When RSI > 50 and rising + TTM histogram bright teal + Squeeze fires black dot up → high-probability long swing.
- When RSI < 50 and falling + TTM histogram bright yellow + Squeeze fires down → high-probability short swing.
- When RSI flat around 50 → trendless; wait for compression + momentum confirmation.
4️⃣ Divergences (Advanced Use)
- Bullish Divergence: Price makes a lower low, RSI makes a higher low → momentum turning up before price.
- Bearish Divergence: Price makes a higher high, RSI makes a lower high → momentum weakening.
- These signals are strongest when combined with a Squeeze firing or EMA crossover from your Swing Overlay.
Best Timeframes
Daily / 4-Hour: Ideal for swing entries and momentum tracking.
1-Hour: For fine-tuning entries inside larger setups.
- The APXTradez Swing RSI gives you a clean, visual read on who controls momentum and when that strength is fading or reversing.
- It’s not meant to predict exact tops or bottoms — it’s a confirmation and rhythm tool:
Use the 50-line for trend bias.
Use 30/70 for exhaustion.
Use color shifts for quick sentiment reads.
Combine with your APX Squeeze and Overlay for the complete swing-timing system.
RSI Trendline Pro - Multi Confirmation
Overview
RSI Trendline Pro is an advanced Pine Script indicator that automatically draws trendlines on the RSI (Relative Strength Index) to detect support and resistance breakouts. It generates high-quality trading signals through a multi-confirmation system.
Key Features
Auto Trendlines: Detects pivot points on RSI to create intelligent support and resistance lines
Multi-Confirmation System: Combines Volume, Stochastic RSI, ADX, and Divergence filters to reduce false signals
RSI Divergence Detection: Automatically identifies bullish/bearish divergences between price and RSI
Live Dashboard: Displays RSI value, active trendlines, ADX strength, and last signal info on a visual panel
Smart Breakout Detection: Identifies trendline breaks and generates LONG/SHORT signals
How to Use
Add to TradingView: Paste code into Pine Editor and add to chart
Configure Parameters:
RSI Length: RSI period (default: 14)
Pivot Strength: Trendline sensitivity (lower = more lines)
Filters: Enable/disable Volume, Divergence, Stoch RSI, and ADX confirmations
Follow Signals:
LONG (Green): When RSI breaks resistance upward
SHORT (Red): When RSI breaks support downward
Divergence: "D" markers indicate potential trend reversals
Alert Setup
Script offers 4 alert types:
LONG Breakout: Resistance break
SHORT Breakout: Support break
Bullish/Bearish Divergence: Divergence detection
Any Signal: Combined alert for all signals
Best Practices
Prioritize high-volume breakouts (Volume Filter enabled)
Trends are stronger when ADX > 25
Confirm divergence signals with price action
Trade when 2-3 confirmations align
Cora Combined Suite v1 [JopAlgo]Cora Combined Suite v1 (CCSV1)
This is an 2 in 1 indicator (Overlay & Oscillator) the Cora Combined Suite v1 .
CCSV1 combines a price-pane Overlay for structure/trend with a compact Oscillator for timing/pressure. It’s designed to be clear, beginner-friendly, and largely automatic: you pick a profile (Scalp / Intraday / Swing), choose whether to run as Overlay or Oscillator, and CCSV1 tunes itself in the background.
What’s inside — at a glance
1) Overlay (price pane)
CoRa Wave: a smooth trend line based on a compound-ratio WMA (CRWMA).
Green when the slope rises (bull bias), Red when it falls (bear bias).
Asymmetric ATR Cloud around the CoRa Wave
Width expands more up when buyer pressure dominates and more down when seller pressure dominates.
Fill is intentionally light, so candlesticks remain readable.
Chop Guard (Range-Lock Gate)
When the cloud stays very narrow versus ATR (classic “dead water”), pullback alerts are muted to avoid noise.
Visuals don’t change—only the alerting logic goes quiet.
Typical Overlay reads
Trend: Follow the CoRa color; green favors long setups, red favors shorts.
Value: Pullbacks into/through the cloud in trend direction are higher-quality than chasing breaks far outside it.
Dominance: A visibly asymmetric cloud hints which side is funding the move (buyers vs sellers).
2) Oscillator (subpane or inline preview)
Stretch-Z (columns): how far price is from the CoRa mean (mean-reversion context), clipped to ±clip.
Near 0 = equilibrium; > +2 / < −2 = stretched/extended.
Slope-Z (line): z-score of CoRa’s slope (momentum of the trend line).
Crossing 0 upward = potential bullish impulse; downward = potential bearish impulse.
VPO (stepline): a normalized Volume-Pressure read (positive = buyers funding, negative = sellers).
Rendered as a clean stepline to emphasize state changes.
Event Bands ±2 (subpane): thin reference lines to spot extension/exhaustion zones fast.
Floor/Ceiling lines (optional): quiet boundaries so the panel doesn’t feel “bottomless.”
Inline vs Subpane
Inline (overlay): the oscillator auto-anchors and scales beneath price, so it never crushes the price scale.
Subpane (raw): move to a new pane for the classic ±clip view (with ±2 bands). Recommended for systematic use.
Why traders like it
Two in one: Structure on the chart, timing in the panel—built to complement each other.
Retail-first automation: Choose Scalp / Intraday / Swing and let CCSV1 auto-tune lengths, clips, and pressure windows.
Robust statistics: On fast, spiky markets/timeframes, it prefers outlier-resistant math automatically for steadier signals.
Optional HTF gate: You can require higher-timeframe agreement for oscillator alerts without changing visuals.
Quick start (simple playbook)
Run As
Overlay for structure: assess trend direction, where value is (the cloud), and whether chop guard is active.
Oscillator for timing: move to a subpane to see Stretch-Z, Slope-Z, VPO, and ±2 bands clearly.
Profile
Scalp (1–5m), Intraday (15–60m), or Swing (4H–1D). CCSV1 adjusts length/clip/pressure windows accordingly.
Overlay entries
Trade with CoRa color.
Prefer pullbacks into/through the cloud (trend direction).
If chop guard is active, wait; let the market “breathe” before engaging.
Oscillator timing
Look for Funded Flips: Slope-Z crossing 0 in the direction of VPO (i.e., momentum + funded pressure).
Use ±2 bands to manage risk: stretched conditions can stall or revert—better to scale or wait for a clean reset.
Optional HTF gate
Enable to green-light only those oscillator alerts that align with your chosen higher timeframe.
What each signal means (plain language)
CoRa turns green/red (Overlay): trend bias shift on your chart.
Cloud width tilts asymmetrically: one side (buyers/sellers) is dominating; extensions on that side are more likely.
Stretch-Z near 0: fair value around CoRa; pullback timing zone.
Stretch-Z > +2 / < −2: extended; watch for slowing momentum or scale decisions.
Slope-Z cross up/down: new impulse starting; combine with VPO sign to avoid unfunded crosses.
VPO positive/negative: net buying/selling pressure funding the move.
Alerts included
Overlay
Pullback Long OK
Pullback Short OK
Oscillator
Funded Flip Up / Funded Flip Down (Slope-Z crosses 0 with VPO agreement)
Pullback Long Ready / Pullback Short Ready (near equilibrium with aligned momentum and pressure)
Exhaustion Risk (Long/Short) (Stretch-Z beyond ±2 with weakening momentum or pressure)
Tip: Keep chart alerts concise and use strategy rules (TP/SL/filters) in your trade plan.
Best practices
One glance workflow
Read Overlay for direction + value.
Use Oscillator for trigger + confirmation.
Pairing
Combine with S/R or your preferred execution framework (e.g., your JopAlgo setups).
The suite is neutral: it won’t force trades; it highlights context and quality.
Markets
Works on crypto, indices, FX, and commodities.
Where real volume is available, VPO is strongest; on synthetic volume, treat VPO as a soft filter.
Timeframes
Use the Profile preset closest to your style; feel free to fine-tune later.
For multi-TF trading, enable the HTF gate on the oscillator alerts only.
Inputs you’ll actually use (the rest can stay on Auto)
Run As: Overlay or Oscillator.
Profile: Scalp / Intraday / Swing.
Oscillator Render: “Subpane (raw)” for a classic panel; “Inline (overlay)” only for a quick preview.
HTF gate (optional): require higher-timeframe Slope-Z agreement for oscillator alerts.
Everything else ships with sensible defaults and auto-logic.
Limitations & tips
Not a strategy: CCSV1 is a decision support tool; you still need your entry/exit rules and risk management.
Non-repainting design: Signals finalize on bar close; intrabar graphics can adjust during the bar (Pine standard).
Very flat sessions: If price and volume are extremely quiet, expect fewer alerts; that restraint is intentional.
Who is this for?
Beginners who want one clean overlay for structure and one simple oscillator for timing—without wrestling settings.
Intermediates seeking a coherent trend/pressure framework with HTF confirmation.
Advanced users who appreciate robust stats and clean engineering behind the visuals.
Disclaimer: Educational purposes only. Not financial advice. Trading involves risk. Use at your own discretion.
MTF K-Means Price Regimes [matteovesperi] ⚠️ The preview uses a custom example to identify support/resistance zones. due to the fact that this identifier clusterizes, this is possible. this example was set up "in a hurry", therefore it has a possible inaccuracy. When setting up the indicator, it is extremely important to select the correct parameters and double-check them on the selected history.
📊 OVERVIEW
Purpose
MTF K-Means Price Regimes is a TradingView indicator that automatically identifies and classifies the current market regime based on the K-Means machine learning algorithm. The indicator uses data from a higher timeframe (Multi-TimeFrame, MTF) to build stable classification and applies it to the working timeframe in real-time.
Key Features
✅ Automatic market regime detection — the algorithm finds clusters of similar market conditions
✅ Multi-timeframe (MTF) — clustering on higher TF, application on lower TF
✅ Adaptive — model recalculates when a new HTF bar appears with a rolling window
✅ Non-Repainting — classification is performed only on closed bars
✅ Visualization — bar coloring + information panel with cluster characteristics
✅ Flexible settings — from 2 to 10 clusters, customizable feature periods, HTF selection
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔬 TECHNICAL DETAILS
K-Means Clustering Algorithm
What is K-Means?
K-Means is one of the most popular clustering algorithms (unsupervised machine learning). It divides a dataset into K groups (clusters) so that similar elements are within each cluster, and different elements are between clusters.
Algorithm objective:
Minimize within-cluster variance (sum of squared distances from points to their cluster center).
How Does K-Means Work in Our Indicator?
Step 1: Data Collection
The indicator accumulates history from the higher timeframe (HTF):
RSI (Relative Strength Index) — overbought/oversold indicator
ATR% (Average True Range as % of price) — volatility indicator
ΔP% (Price Change in %) — trend strength and direction indicator
By default, 200 HTF bars are accumulated (clusterLookback parameter).
Step 2: Creating Feature Vectors
Each HTF bar is described by a three-dimensional vector:
Vector =
Step 3: Normalization (Z-Score)
All features are normalized to bring them to a common scale:
Normalized_Value = (Value - Mean) / StdDev
This is critically important, as RSI is in the range 0-100, while ATR% and ΔP% have different scales. Without normalization, one feature would dominate over others.
Step 4: K-Means++ Centroid Initialization
Instead of random selection of K initial centers, an improved K-Means++ method is used:
First centroid is randomly selected from the data
Each subsequent centroid is selected with probability proportional to the square of the distance to the nearest already selected centroid
This ensures better initial centroid distribution and faster convergence
Step 5: Iterative Optimization (Lloyd's Algorithm)
Repeat until convergence (or maxIterations):
1. Assignment step:
For each point find the nearest centroid and assign it to this cluster
2. Update step:
Recalculate centroids as the average of all points in each cluster
3. Convergence check:
If centroids shifted less than 0.001 → STOP
Euclidean distance in 3D space is used:
Distance = sqrt((RSI1 - RSI2)² + (ATR1 - ATR2)² + (ΔP1 - ΔP2)²)
Step 6: Adaptive Update
With each new HTF bar:
The oldest bar is removed from history (rolling window method)
New bar is added to history
K-Means algorithm is executed again on updated data
Model remains relevant for current market conditions
Real-Time Classification
After building the model (clusters + centroids), the indicator works in classification mode:
On each closed bar of the current timeframe, RSI, ATR%, ΔP% are calculated
Feature vector is normalized using HTF statistics (Mean/StdDev)
Distance to all K centroids is calculated
Bar is assigned to the cluster with minimum distance
Bar is colored with the corresponding cluster color
Important: Classification occurs only on a closed bar (barstate.isconfirmed), which guarantees no repainting .
Data Architecture
Persistent variables (var):
├── featureVectors - Normalized HTF feature vectors
├── centroids - Cluster center coordinates (K * 3 values)
├── assignments - Assignment of each HTF bar to a cluster
├── htfRsiHistory - History of RSI values from HTF
├── htfAtrHistory - History of ATR values from HTF
├── htfPcHistory - History of price changes from HTF
├── htfCloseHistory - History of close prices from HTF
├── htfRsiMean, htfRsiStd - Statistics for RSI normalization
├── htfAtrMean, htfAtrStd - Statistics for ATR normalization
├── htfPcMean, htfPcStd - Statistics for Price Change normalization
├── isCalculated - Model readiness flag
└── currentCluster - Current active cluster
All arrays are synchronized and updated atomically when a new HTF bar appears.
Computational Complexity
Data collection: O(1) per bar
K-Means (one pass):
- Assignment: O(N * K) where N = number of points, K = number of clusters
- Update: O(N * K)
- Total: O(N * K * I) where I = number of iterations (usually 5-20)
Example: With N=200 HTF bars, K=5 clusters, I=20 iterations:
200 * 5 * 20 = 20,000 operations (executes quickly)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📖 USER GUIDE
Quick Start
1. Adding the Indicator
TradingView → Indicators → Favorites → MTF K-Means Price Regimes
Or copy the code from mtf_kmeans_price_regimes.pine into Pine Editor.
2. First Launch
When adding the indicator to the chart, you'll see a table in the upper right corner:
┌─────────────────────────┐
│ Status │ Collecting HTF │
├─────────────────────────┤
│ Collected│ 15 / 50 │
└─────────────────────────┘
This means the indicator is accumulating history from the higher timeframe. Wait until the counter reaches the minimum (default 50 bars for K=5).
3. Active Operation
After data collection is complete, the main table with cluster information will appear:
┌────┬──────┬──────┬──────┬──────────────┬────────┐
│ ID │ RSI │ ATR% │ ΔP% │ Description │Current │
├────┼──────┼──────┼──────┼──────────────┼────────┤
│ 1 │ 68.5 │ 2.15 │ 1.2 │ High Vol,Bull│ │
│ 2 │ 52.3 │ 0.85 │ 0.1 │ Low Vol,Flat │ ► │
│ 3 │ 35.2 │ 1.95 │ -1.5 │ High Vol,Bear│ │
└────┴──────┴──────┴──────┴──────────────┴────────┘
The arrow ► indicates the current active regime. Chart bars are colored with the corresponding cluster color.
Customizing for Your Strategy
Choosing Higher Timeframe (HTF)
Rule: HTF should be at least 4 times higher than the working timeframe.
| Working TF | Recommended HTF |
|------------|-----------------|
| 1 min | 15 min - 1H |
| 5 min | 1H - 4H |
| 15 min | 4H - D |
| 1H | D - W |
| 4H | D - W |
| D | W - M |
HTF Selection Effect:
Lower HTF (closer to working TF): More sensitive, frequently changing classification
Higher HTF (much larger than working TF): More stable, long-term regime assessment
Number of Clusters (K)
K = 2-3: Rough division (e.g., "uptrend", "downtrend", "flat")
K = 4-5: Optimal for most cases (DEFAULT: 5)
K = 6-8: Detailed segmentation (requires more data)
K = 9-10: Very fine division (only for long-term analysis with large windows)
Important constraint:
clusterLookback ≥ numClusters * 10
I.e., for K=5 you need at least 50 HTF bars, for K=10 — at least 100 bars.
Clustering Depth (clusterLookback)
This is the rolling window size for building the model.
50-100 HTF bars: Fast adaptation to market changes
200 HTF bars: Optimal balance (DEFAULT)
500-1000 HTF bars: Long-term, stable model
If you get an "Insufficient data" error:
Decrease clusterLookback
Or select a lower HTF (e.g., "4H" instead of "D")
Or decrease numClusters
Color Scheme
Default 10 colors:
Red → Often: strong bearish, high volatility
Orange → Transition, medium volatility
Yellow → Neutral, decreasing activity
Green → Often: strong bullish, high volatility
Blue → Medium bullish, medium volatility
Purple → Oversold, possible reversal
Fuchsia → Overbought, possible reversal
Lime → Strong upward momentum
Aqua → Consolidation, low volatility
White → Undefined regime (rare)
Important: Cluster colors are assigned randomly at each model recalculation! Don't rely on "red = bearish". Instead, look at the description in the table (RSI, ATR%, ΔP%).
You can customize colors in the "Colors" settings section.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚙️ INDICATOR PARAMETERS
Main Parameters
Higher Timeframe (htf)
Type: Timeframe selection
Default: "D" (daily)
Description: Timeframe on which the clustering model is built
Recommendation: At least 4 times larger than your working TF
Clustering Depth (clusterLookback)
Type: Integer
Range: 50 - 2000
Default: 200
Description: Number of HTF bars for building the model (rolling window size)
Recommendation:
- Increase for more stable long-term model
- Decrease for fast adaptation or if there's insufficient historical data
Number of Clusters (K) (numClusters)
Type: Integer
Range: 2 - 10
Default: 5
Description: Number of market regimes the algorithm will identify
Recommendation:
- K=3-4 for simple strategies (trending/ranging)
- K=5-6 for universal strategies
- K=7-10 only when clusterLookback ≥ 100*K
Max K-Means Iterations (maxIterations)
Type: Integer
Range: 5 - 50
Default: 20
Description: Maximum number of algorithm iterations
Recommendation:
- 10-20 is sufficient for most cases
- Increase to 30-50 if using K > 7
Feature Parameters
RSI Period (rsiLength)
Type: Integer
Default: 14
Description: Period for RSI calculation (overbought/oversold feature)
Recommendation:
- 14 — standard
- 7-10 — more sensitive
- 20-25 — more smoothed
ATR Period (atrLength)
Type: Integer
Default: 14
Description: Period for ATR calculation (volatility feature)
Recommendation: Usually kept equal to rsiLength
Price Change Period (pcLength)
Type: Integer
Default: 5
Description: Period for percentage price change calculation (trend feature)
Recommendation:
- 3-5 — short-term trend
- 10-20 — medium-term trend
Visualization
Show Info Panel (showDashboard)
Type: Checkbox
Default: true
Description: Enables/disables the information table on the chart
Cluster Color 1-10
Type: Color selection
Description: Customize colors for visual cluster distinction
Recommendation: Use contrasting colors for better readability
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 INTERPRETING RESULTS
Reading the Information Table
┌────┬──────┬──────┬──────┬──────────────┬────────┐
│ ID │ RSI │ ATR% │ ΔP% │ Description │Current │
├────┼──────┼──────┼──────┼──────────────┼────────┤
│ 1 │ 68.5 │ 2.15 │ 1.2 │ High Vol,Bull│ │
│ 2 │ 52.3 │ 0.85 │ 0.1 │ Low Vol,Flat │ ► │
│ 3 │ 35.2 │ 1.95 │ -1.5 │ High Vol,Bear│ │
│ 4 │ 45.0 │ 1.20 │ -0.3 │ Low Vol,Bear │ │
│ 5 │ 72.1 │ 3.05 │ 2.8 │ High Vol,Bull│ │
└────┴──────┴──────┴──────┴──────────────┴────────┘
"ID" Column
Cluster number (1-K). Order doesn't matter.
"RSI" Column
Average RSI value in the cluster (0-100):
< 30: Oversold zone
30-45: Bearish sentiment
45-55: Neutral zone
55-70: Bullish sentiment
> 70: Overbought zone
"ATR%" Column
Average volatility in the cluster (as % of price):
< 1%: Low volatility (consolidation, narrow range)
1-2%: Normal volatility
2-3%: Elevated volatility
> 3%: High volatility (strong movements, impulses)
Compared to the average volatility across all clusters to determine "High Vol" or "Low Vol".
"ΔP%" Column
Average price change in the cluster (in % over pcLength period):
> +0.05%: Bullish regime
-0.05% ... +0.05%: Flat (sideways movement)
< -0.05%: Bearish regime
"Description" Column
Automatic interpretation:
"High Vol, Bull" → Strong upward momentum, high activity
"Low Vol, Flat" → Consolidation, narrow range, uncertainty
"High Vol, Bear" → Strong decline, panic, high activity
"Low Vol, Bull" → Slow growth, low activity
"Low Vol, Bear" → Slow decline, low activity
"Current" Column
Arrow ► shows which cluster the last closed bar of your working timeframe is in.
Typical Cluster Patterns
Example 1: Trend/Flat Division (K=3)
Cluster 1: RSI=65, ATR%=2.5, ΔP%=+1.5 → Bullish trend
Cluster 2: RSI=50, ATR%=0.8, ΔP%=0.0 → Flat/Consolidation
Cluster 3: RSI=35, ATR%=2.3, ΔP%=-1.4 → Bearish trend
Strategy: Open positions when regime changes Flat → Trend, avoid flat.
Example 2: Volatility Breakdown (K=5)
Cluster 1: RSI=72, ATR%=3.5, ΔP%=+2.5 → Strong bullish impulse (high risk)
Cluster 2: RSI=60, ATR%=1.5, ΔP%=+0.8 → Moderate bullish (optimal entry point)
Cluster 3: RSI=50, ATR%=0.7, ΔP%=0.0 → Flat
Cluster 4: RSI=40, ATR%=1.4, ΔP%=-0.7 → Moderate bearish
Cluster 5: RSI=28, ATR%=3.2, ΔP%=-2.3 → Strong bearish impulse (panic)
Strategy: Enter in Cluster 2 or 4, avoid extremes (1, 5).
Example 3: Mixed Regimes (K=7+)
With large K, clusters can represent condition combinations:
High RSI + Low volatility → "Quiet overbought"
Neutral RSI + High volatility → "Uncertainty with high activity"
Etc.
Requires individual analysis of each cluster.
Regime Changes
Important signal: Transition from one cluster to another!
Trading situation examples:
Flat → Bullish trend → Buy signal
Bullish trend → Flat → Take profit, close longs
Flat → Bearish trend → Sell signal
Bearish trend → Flat → Close shorts, wait
You can build a trading system based on the current active cluster and transitions between them.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
💡 USAGE EXAMPLES
Example 1: Scalping with HTF Filter
Task: Scalping on 5-minute charts, but only enter in the direction of the daily regime.
Settings:
Working TF: 5 min
HTF: D (daily)
K: 3 (simple division)
clusterLookback: 100
Logic:
IF current cluster = "Bullish" (ΔP% > 0.5)
→ Look for long entry points on 5M
IF current cluster = "Bearish" (ΔP% < -0.5)
→ Look for short entry points on 5M
IF current cluster = "Flat"
→ Don't trade / reduce risk
Example 2: Swing Trading with Volatility Filtering
Task: Swing trading on 4H, enter only in regimes with medium volatility.
Settings:
Working TF: 4H
HTF: D (daily)
K: 5
clusterLookback: 200
Logic:
Allowed clusters for entry:
- ATR% from 1.5% to 2.5% (not too quiet, not too chaotic)
- ΔP% with clear direction (|ΔP%| > 0.5)
Prohibited clusters:
- ATR% > 3% → Too risky (possible gaps, sharp reversals)
- ATR% < 1% → Too quiet (small movements, commissions eat profit)
Example 3: Portfolio Rotation
Task: Managing a portfolio of multiple assets, allocate capital depending on regimes.
Settings:
Working TF: D (daily)
HTF: W (weekly)
K: 4
clusterLookback: 100
Logic:
For each asset in portfolio:
IF regime = "Strong trend + Low volatility"
→ Increase asset weight in portfolio (40-50%)
IF regime = "Medium trend + Medium volatility"
→ Standard weight (20-30%)
IF regime = "Flat" or "High volatility without trend"
→ Minimum weight or exclude (0-10%)
Example 4: Combining with Other Indicators
MTF K-Means as a filter:
Main strategy: MA Crossover
Filter: MTF K-Means on higher TF
Rule:
IF MA_fast > MA_slow AND Cluster = "Bullish regime"
→ LONG
IF MA_fast < MA_slow AND Cluster = "Bearish regime"
→ SHORT
ELSE
→ Don't trade (regime doesn't confirm signal)
This dramatically reduces false signals in unsuitable market conditions.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📈 OPTIMIZATION RECOMMENDATIONS
Optimal Settings for Different Styles
Day Trading
Working TF: 5M - 15M
HTF: 1H - 4H
numClusters: 4-5
clusterLookback: 100-150
Swing Trading
Working TF: 1H - 4H
HTF: D
numClusters: 5-6
clusterLookback: 150-250
Position Trading
Working TF: D
HTF: W - M
numClusters: 4-5
clusterLookback: 100-200
Scalping
Working TF: 1M - 5M
HTF: 15M - 1H
numClusters: 3-4
clusterLookback: 50-100
Backtesting
To evaluate effectiveness:
Load historical data (minimum 2x clusterLookback HTF bars)
Apply the indicator with your settings
Study cluster change history:
- Do changes coincide with actual trend transitions?
- How often do false signals occur?
Optimize parameters:
- If too much noise → increase HTF or clusterLookback
- If reaction too slow → decrease HTF or increase numClusters
Combining with Other Techniques
Regime-Based Approach:
MTF K-Means (regime identification)
↓
+---+---+---+
| | | |
v v v v
Trend Flat High_Vol Low_Vol
↓ ↓ ↓ ↓
Strategy_A Strategy_B Don't_trade
Examples:
Trend: Use trend-following strategies (MA crossover, Breakout)
Flat: Use mean-reversion strategies (RSI, Bollinger Bands)
High volatility: Reduce position sizes, widen stops
Low volatility: Expect breakout, don't open positions inside range
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📞 SUPPORT
Report an Issue
If you found a bug or have a suggestion for improvement:
Describe the problem in as much detail as possible
Specify your indicator settings
Attach a screenshot (if possible)
Specify the asset and timeframe where the problem is observed
Fakeout Kavach by Pooja v10📘 Description – Fakeout Kavach by Pooja
Fakeout Kavach by Pooja is a precision-built technical analysis tool designed for structured momentum and divergence evaluation within the RSI pane.
It helps visualize potential exhaustion zones using RSI divergence, ADX trend confirmation, and an integrated VAD (Volume + ATR + Delta) module — ensuring clarity and confirmation-based plotting.
⚙️ Core Functional Modules
1️⃣ RSI & Moving Average Module
Adaptive RSI with real-time color gradients
Optional RSI moving average (yellow) for momentum tracking
Dynamic fill zones showing overbought / oversold areas
Background fill for quick zone visualization
2️⃣ RSI Divergence Detection (Bull / Bear)
Auto-detects pivot-based bullish and bearish divergences
Non-repainting logic confirmed post-pivot formation
Smart line management with automatic cleanup
Visual divergence lines and clear on-chart markers
3️⃣ ADX Trend Confirmation
Adjustable comparison: “Higher than N bars ago” or “Higher than highest of last N”
Confirms directional strength before SB / SS signals are displayed
4️⃣ SB / SS Signal Module
“Signal Bull / Signal Sell” markers confirmed post candle closure
Integrated session-block feature to exclude specific intraday periods
Non-repainting, bar-confirmed signal plotting
5️⃣ VAD (Volume + ATR + Delta) Divergence Engine
Highlights hidden momentum shifts via volatility + volume flow logic
Bullish (B-DV) / Bearish (S-DV) divergence markers plotted at pivot bars
Customizable label or symbol-style visualization
🧩 Built-in Features
Non-repainting structure using barstate confirmation
Optimized for all timeframes and chart types
Lightweight execution with flexible styling options
Modular input control for easy customization
⚠️ Disclaimer
This indicator is for technical analysis and educational purposes only.
It does not provide financial advice, does not predict price direction, and does not guarantee profits or performance.
All trading decisions are the sole responsibility of the user. Always test thoroughly before applying to live markets.
Automated Z-scoring - [JTCAPITAL]Automated Z-Scoring - is a modified way to use statistical normalization through Z-Scores for analyzing price deviations, volatility extremes, and mean reversion opportunities in financial markets.
The indicator works by calculating in the following steps:
Source Selection
The indicator begins by selecting a user-defined price source (default is the Close price). Traders can modify this to use any indicator that is deployed on the chart, for accurate and fast Z-scoring.
Mean Calculation
A Simple Moving Average (SMA) is calculated over the selected length period (default 3000). This represents the long-term equilibrium price level or the “statistical mean” of the dataset. It provides the baseline around which all price deviations are measured.
Standard Deviation Measurement
The script computes the Standard Deviation of the price series over the same period. This value quantifies how far current prices tend to stray from the mean — effectively measuring market volatility. The larger the standard deviation, the more volatile the market environment.
Z-Score Normalization
The Z-Score is calculated as:
(Current Price − Mean) ÷ Standard Deviation .
This normalization expresses how many standard deviations the current price is away from its long-term average. A Z-Score above 0 means the price is above average, while a negative score indicates it is below average.
Visual Representation
The Z-Score is plotted dynamically, with color-coding for clarity:
Bullish readings (Z > 0) are showing positive deviation from the mean.
Bearish readings (Z < 0) are showing negative deviation from the mean.
Make sure to select the correct source for what you exactly want to Z-score.
Buy and Sell Conditions:
While the indicator itself is designed as a statistical framework rather than a direct buy/sell signal generator, traders can derive actionable strategies from its behavior:
Trend Following: When the Z-Score crosses above zero after a prolonged negative period, it suggests a return to or above the mean — a possible bullish reversal or trend continuation signal.
Mean Reversion: When the Z-score is below for example -1.5 it indicates a good time for a DCA buying opportunity.
Trend Following: When the Z-Score crosses below zero after being positive, it may indicate a momentum slowdown or bearish shift.
Mean Reversion: When the Z-score is above for example 1.5 it indicates a good time for a DCA sell opportunity
Features and Parameters:
Length – Defines the period for both SMA and Standard Deviation. A longer length smooths the Z-Score and captures broader market context, while a shorter length increases responsiveness.
Source – Allows the user to choose which price data is analyzed (Close, Open, High, Low, etc.).
Fill Visualization – Highlights the magnitude of deviation between the Z-Score and the zero baseline, enhancing readability of volatility extremes.
Specifications:
Mean (Simple Moving Average)
The SMA calculates the average of the selected source over the defined length. It provides a central value to which the price tends to revert. In this indicator, the mean acts as the equilibrium point — the “zero” reference for all deviations.
Standard Deviation
Standard Deviation measures the dispersion of data points from their mean. In trading, it quantifies volatility. A high standard deviation indicates that prices are spread out (volatile), while a low value means they are clustered near the average (stable). The indicator uses this to scale deviations consistently across different market conditions.
Z-Score
The Z-Score converts raw price data into a standardized value measured in units of standard deviation.
A Z-Score of 0 = Price equals its mean.
A Z-Score of +1 = Price is one standard deviation above the mean.
A Z-Score of −1 = Price is one standard deviation below the mean.
This allows comparison of deviation magnitudes across instruments or timeframes, independent of price level.
Length Parameter
A long lookback period (e.g., 3000 bars) smooths temporary volatility and reveals long-term mean deviations — ideal for macro trend identification. Shorter lengths (e.g., 100–500) capture quicker oscillations and are useful for short-term mean reversion trades.
Statistical Interpretation
From a probabilistic perspective, if the distribution of prices is roughly normal:
About 68% of price observations lie within ±1 standard deviation (Z between −1 and +1).
About 95% lie within ±2 standard deviations.
Therefore, when the Z-Score moves beyond ±2, it statistically represents a rare event — often corresponding to price extremes or potential reversal zones.
Practical Benefit of Z-Scoring in Trading
Z-Scoring transforms raw price into a normalized volatility-adjusted metric. This allows traders to:
Compare instruments on a common statistical scale.
Identify mean-reversion setups more objectively.
Spot volatility expansions or contractions early.
Detect when price action significantly diverges from long-term equilibrium.
By automating this process, Automated Z-Scoring - provides traders with a powerful analytical lens to measure how “stretched” the market truly is — turning abstract statistics into a visually intuitive and actionable form.
Enjoy!
Ultimate Oscillator (ULTOSC)The Ultimate Oscillator (ULTOSC) is a technical momentum indicator developed by Larry Williams that combines three different time periods to reduce the volatility and false signals common in single-period oscillators. By using a weighted average of three Stochastic-like calculations across short, medium, and long-term periods, the Ultimate Oscillator provides a more comprehensive view of market momentum while maintaining sensitivity to price changes.
The indicator addresses the common problem of oscillators being either too sensitive (generating many false signals) or too slow (missing opportunities). By incorporating multiple timeframes with decreasing weights for longer periods, ULTOSC attempts to capture both short-term momentum shifts and longer-term trend strength, making it particularly valuable for identifying divergences and potential reversal points.
## Core Concepts
* **Multi-timeframe analysis:** Combines three different periods (typically 7, 14, 28) to capture various momentum cycles
* **Weighted averaging:** Assigns higher weights to shorter periods for responsiveness while including longer periods for stability
* **Buying pressure focus:** Measures the relationship between closing price and the true range rather than just high-low range
* **Divergence detection:** Particularly effective at identifying momentum divergences that precede price reversals
* **Normalized scale:** Oscillates between 0 and 100, with clear overbought/oversold levels
## Common Settings and Parameters
| Parameter | Default | Function | When to Adjust |
|-----------|---------|----------|---------------|
| Fast Period | 7 | Short-term momentum calculation | Lower (5-6) for more sensitivity, higher (9-12) for smoother signals |
| Medium Period | 14 | Medium-term momentum calculation | Adjust based on typical swing duration in the market |
| Slow Period | 28 | Long-term momentum calculation | Higher values (35-42) for longer-term position trading |
| Fast Weight | 4.0 | Weight applied to fast period | Higher weight increases short-term sensitivity |
| Medium Weight | 2.0 | Weight applied to medium period | Adjust to balance medium-term influence |
| Slow Weight | 1.0 | Weight applied to slow period | Usually kept at 1.0 as the baseline weight |
**Pro Tip:** The classic 7/14/28 periods with 4/2/1 weights work well for most markets, but consider using 5/10/20 with adjusted weights for faster markets or 14/28/56 for longer-term analysis.
## Calculation and Mathematical Foundation
**Simplified explanation:**
The Ultimate Oscillator calculates three separate "buying pressure" ratios using different time periods, then combines them using weighted averaging. Buying pressure is defined as the close minus the true low, divided by the true range.
**Technical formula:**
```
BP = Close - Min(Low, Previous Close)
TR = Max(High, Previous Close) - Min(Low, Previous Close)
BP_Sum_Fast = Sum(BP, Fast Period)
TR_Sum_Fast = Sum(TR, Fast Period)
Raw_Fast = 100 × (BP_Sum_Fast / TR_Sum_Fast)
BP_Sum_Medium = Sum(BP, Medium Period)
TR_Sum_Medium = Sum(TR, Medium Period)
Raw_Medium = 100 × (BP_Sum_Medium / TR_Sum_Medium)
BP_Sum_Slow = Sum(BP, Slow Period)
TR_Sum_Slow = Sum(TR, Slow Period)
Raw_Slow = 100 × (BP_Sum_Slow / TR_Sum_Slow)
ULTOSC = 100 × / (Fast_Weight + Medium_Weight + Slow_Weight)
```
Where:
- BP = Buying Pressure
- TR = True Range
- Fast Period = 7, Medium Period = 14, Slow Period = 28 (defaults)
- Fast Weight = 4, Medium Weight = 2, Slow Weight = 1 (defaults)
> 🔍 **Technical Note:** The implementation uses efficient circular buffers for all three period calculations, maintaining O(1) time complexity per bar. The algorithm properly handles true range calculations including gaps and ensures accurate buying pressure measurements across all timeframes.
## Interpretation Details
ULTOSC provides several analytical perspectives:
* **Overbought/Oversold conditions:** Values above 70 suggest overbought conditions, below 30 suggest oversold conditions
* **Momentum direction:** Rising ULTOSC indicates increasing buying pressure, falling indicates increasing selling pressure
* **Divergence analysis:** Divergences between ULTOSC and price often precede significant reversals
* **Trend confirmation:** ULTOSC direction can confirm or question the prevailing price trend
* **Signal quality:** Extreme readings (>80 or <20) indicate strong momentum that may be unsustainable
* **Multiple timeframe consensus:** When all three underlying periods agree, signals are typically more reliable
## Trading Applications
**Primary Uses:**
- **Divergence trading:** Identify when momentum diverges from price for reversal signals
- **Overbought/oversold identification:** Find potential entry/exit points at extreme levels
- **Trend confirmation:** Validate breakouts and trend continuations
- **Momentum analysis:** Assess the strength of current price movements
**Advanced Strategies:**
- **Multi-divergence confirmation:** Look for divergences across multiple timeframes
- **Momentum breakouts:** Trade when ULTOSC breaks above/below key levels with volume
- **Swing trading entries:** Use oversold/overbought levels for swing position entries
- **Trend strength assessment:** Evaluate trend quality using momentum consistency
## Signal Combinations
**Strong Bullish Signals:**
- ULTOSC rises from oversold territory (<30) with positive price divergence
- ULTOSC breaks above 50 after forming a base near 30
- All three underlying periods show increasing buying pressure
**Strong Bearish Signals:**
- ULTOSC falls from overbought territory (>70) with negative price divergence
- ULTOSC breaks below 50 after forming a top near 70
- All three underlying periods show decreasing buying pressure
**Divergence Signals:**
- **Bullish divergence:** Price makes lower lows while ULTOSC makes higher lows
- **Bearish divergence:** Price makes higher highs while ULTOSC makes lower highs
- **Hidden bullish divergence:** Price makes higher lows while ULTOSC makes lower lows (trend continuation)
- **Hidden bearish divergence:** Price makes lower highs while ULTOSC makes higher highs (trend continuation)
## Comparison with Related Oscillators
| Indicator | Periods | Focus | Best Use Case |
|-----------|---------|-------|---------------|
| **Ultimate Oscillator** | 3 periods | Buying pressure | Divergence detection |
| **Stochastic** | 1-2 periods | Price position | Overbought/oversold |
| **RSI** | 1 period | Price momentum | Momentum analysis |
| **Williams %R** | 1 period | Price position | Short-term signals |
## Advanced Configurations
**Fast Trading Setup:**
- Fast: 5, Medium: 10, Slow: 20
- Weights: 4/2/1, Thresholds: 75/25
**Standard Setup:**
- Fast: 7, Medium: 14, Slow: 28
- Weights: 4/2/1, Thresholds: 70/30
**Conservative Setup:**
- Fast: 14, Medium: 28, Slow: 56
- Weights: 3/2/1, Thresholds: 65/35
**Divergence Focused:**
- Fast: 7, Medium: 14, Slow: 28
- Weights: 2/2/2, Thresholds: 70/30
## Market-Specific Adjustments
**Volatile Markets:**
- Use longer periods (10/20/40) to reduce noise
- Consider higher threshold levels (75/25)
- Focus on extreme readings for signal quality
**Trending Markets:**
- Emphasize divergence analysis over absolute levels
- Look for momentum confirmation rather than reversal signals
- Use hidden divergences for trend continuation
**Range-Bound Markets:**
- Standard overbought/oversold levels work well
- Trade reversals from extreme levels
- Combine with support/resistance analysis
## Limitations and Considerations
* **Lagging component:** Contains inherent lag due to multiple moving average calculations
* **Complex calculation:** More computationally intensive than single-period oscillators
* **Parameter sensitivity:** Performance varies significantly with different period/weight combinations
* **Market dependency:** Most effective in trending markets with clear momentum patterns
* **False divergences:** Not all divergences lead to significant price reversals
* **Whipsaw potential:** Can generate conflicting signals in choppy markets
## Best Practices
**Effective Usage:**
- Focus on divergences rather than absolute overbought/oversold levels
- Combine with trend analysis for context
- Use multiple timeframe analysis for confirmation
- Pay attention to the speed of momentum changes
**Common Mistakes:**
- Over-relying on overbought/oversold levels in strong trends
- Ignoring the underlying trend direction
- Using inappropriate period settings for the market being analyzed
- Trading every divergence without additional confirmation
**Signal Enhancement:**
- Combine with volume analysis for confirmation
- Use price action context (support/resistance levels)
- Consider market volatility when setting thresholds
- Look for convergence across multiple momentum indicators
## Historical Context and Development
The Ultimate Oscillator was developed by Larry Williams and introduced in his 1985 article "The Ultimate Oscillator" in Technical Analysis of Stocks and Commodities magazine. Williams designed it to address the limitations of single-period oscillators by:
- Reducing false signals through multi-timeframe analysis
- Maintaining sensitivity to short-term momentum changes
- Providing more reliable divergence signals
- Creating a more robust momentum measurement tool
The indicator has become a standard tool in technical analysis, particularly valued for its divergence detection capabilities and its balanced approach to momentum measurement.
## References
* Williams, L. R. (1985). The Ultimate Oscillator. Technical Analysis of Stocks and Commodities, 3(4).
* Williams, L. R. (1999). Long-Term Secrets to Short-Term Trading. Wiley Trading.
Buying/Selling PressureBuying/Selling Pressure - Volume-Based Market Sentiment
Buying/Selling Pressure identifies market dominance by separating volume into buying and selling components. The indicator uses Volume ATR normalization to create a universal pressure oscillator that works consistently across all markets and timeframes.
What is Buying/Selling Pressure?
This indicator answers a fundamental question: Are buyers or sellers in control? By analyzing how volume distributes within each bar, it calculates cumulative buying and selling pressure, then normalizes the result using Volume ATR for cross-market comparability.
Formula: × 100
Where Delta = Buying Volume - Selling Volume
Calculation Methods
Money Flow (Recommended):
Volume weighted by close position in bar range. Close near high = buying pressure, close near low = selling pressure.
Formula: / (high - low)
Simple Delta:
Basic approach where bullish bars = 100% buying, bearish bars = 100% selling.
Weighted Delta:
Volume weighted by body size relative to total range, focusing on candle strength.
Key Features
Volume ATR Normalization: Adapts to volume volatility for consistent readings across assets
Cumulative Delta: Tracks net buying/selling pressure over time (similar to OBV)
Signal Line: EMA smoothing for trend identification and crossover signals
Zero Line: Clear visual separation between buyer and seller dominance
Color-Coded Display: Green area = buyers control, red area = sellers control
Interpretation
Above Zero: Buyers dominating - cumulative buying pressure exceeds selling
Below Zero: Sellers dominating - cumulative selling pressure exceeds buying
Cross Signal Line: Momentum shift - pressure trend changing direction
Increasing Magnitude: Strengthening pressure in current direction
Decreasing Magnitude: Weakening pressure, potential reversal
Volume vs Pressure
High volume with low pressure indicates balanced battle between buyers and sellers. High pressure with high volume confirms strong directional conviction. This separation provides insights beyond traditional volume analysis.
Best Practices
Use with price action for confirmation
Divergences signal potential reversals (price makes new high/low but pressure doesn't)
Large volume with near-zero pressure = indecision, breakout preparation
Signal line crossovers provide momentum change signals
Extreme readings suggest potential exhaustion
Settings
Calculation Method: Choose Money Flow, Simple Delta, or Weighted Delta
EMA Length: Period for cumulative delta smoothing (default: 21)
Signal Line: Optional EMA of oscillator for crossover signals (default: 9)
Buying/Selling Pressure transforms volume analysis into actionable market sentiment, revealing whether buyers or sellers control price action beneath surface volatility.
This indicator is designed for educational and analytical purposes. Past performance does not guarantee future results. Always conduct thorough research and consider consulting with financial professionals before making investment decisions.
Wave Conflict DetectorWave Conflict Detector
Wave Conflict Detector: Identifying Pivot Conditions Through Wave Interference Analysis
Wave Conflict Detector applies wave interference principles from physics to dual-EMA analysis, identifying potential pivot conditions by measuring phase relationships and amplitude states between two moving average waves. Unlike traditional EMA crossover systems that signal on wave intersection, this indicator measures the directional alignment (phase) and interaction strength (interference amplitude) between wave states to identify conditions where wave mechanics suggest potential reversal zones.
The indicator combines two analytical components: velocity-based phase difference calculation that measures whether waves are moving in the same or opposite directions, and normalized interference amplitude that quantifies the degree of wave reinforcement or cancellation. This creates a regime-classification system with visual feedback showing when waves are aligned (constructive state) versus opposed (destructive state).
What Makes This Approach Different
Phase Relationship Measurement
The core analytical method is extracting phase alignment from wave velocities rather than simply measuring EMA separation. The system calculates the first derivative (bar-to-bar change) of each EMA, creating velocity measurements: v₁ = ψ₁ - ψ₁ and v₂ = ψ₂ - ψ₂ . These velocities are combined through normalized correlation: Φ = (v₁ × v₂) / |v|², producing an alignment value ranging from -1 (perfect opposition) to +1 (perfect alignment).
This alignment value is smoothed using EMA and converted to angular degrees: Δφ = (1 - Φ) × 90°, creating a phase difference measurement from 0° to 180°. This quantifies how much the waves are "fighting" each other directionally, independent of their separation distance. Two EMAs can be far apart yet moving in harmony (low phase difference), or close together yet moving in opposition (high phase difference).
This directional correlation approach differs from standard dual-EMA analysis by focusing on velocity alignment rather than positional crossovers.
Interference Amplitude Calculation
The interference formula implements wave superposition principles: I = (|ψ₁ + ψ₂|² - |ψ₁ - ψ₂|²) × Gain, which mathematically simplifies to I = 4 × ψ₁ × ψ₂ × Gain. This measures the product of both waves—when both are positive and large, interference is maximally constructive; when they have opposite signs or differing magnitudes, interference weakens.
The raw interference value is then normalized using adaptive statistical bounds calculated over a rolling window (default 100 bars). The system computes mean (μ) and standard deviation (σ) of raw interference, then applies bounds of μ ± 2σ, and normalizes to a 0-1 range. This creates a scale-invariant measurement that adapts automatically to different instruments and volatility regimes without requiring manual recalibration.
The combination of phase measurement and normalized amplitude creates a two-dimensional state space for classifying market conditions.
Dual-Mode Detection Architecture
The system offers two detection approaches that can be selected based on market conditions:
Interference Mode: Detects pivot conditions when normalized interference amplitude forms local peaks or troughs (current bar is higher/lower than both adjacent bars) AND exceeds the configured threshold. This identifies extremes in wave interaction strength.
Phase Mode: Detects pivot conditions when phase alignment reverses (crosses from positive to negative or vice versa) AND absolute phase difference exceeds the threshold. This identifies directional relationship changes between waves.
Both modes require price structure confirmation (traditional pivot high/low patterns) and minimum bar spacing to prevent over-signaling. This architecture allows traders to match detection sensitivity to market character—interference mode for amplitude-driven markets, phase mode for directional trend shifts.
Multi-Layer Visual System
The visualization approach uses hierarchical layers to display wave state information:
Foundation Layer: The two EMA waves (ψ₁ and ψ₂) plotted directly on the price chart, showing the underlying wave states being analyzed.
Background Layer: Color-coded zones showing regime state—green tint when phase alignment is positive (constructive interference), red tint when phase alignment is negative below -0.3 (destructive interference).
Dynamic Ribbon: A band centered on the wave average with width proportional to |ψ₁ - ψ₂| × (0.5 + interference_norm). This creates an adaptive channel that expands with interference strength and contracts during low-energy states.
Phase Field: Multi-frequency harmonic oscillations generated using three phase accumulators driven by interference amplitude, phase alignment, and accumulated phase rotation. Multiple sine-wave layers create visual texture that becomes erratic during wave conflict conditions and smooth during aligned states.
Particle System: Floating symbols whose density is proportional to interference amplitude, creating a visual intensity indicator.
Each visual component displays non-redundant information about the wave state system.
Core Calculation Methodology
Wave State Generation
Two exponential moving averages are calculated using configurable lengths (default 8 and 21 bars):
- ψ₁ = EMA(close, fastLen) — fast wave component
- ψ₂ = EMA(close, slowLen) — slow wave component
These serve as the base wave functions for all subsequent analysis.
Velocity Extraction
First derivatives are computed as simple bar-to-bar differences:
- psi1_velocity = ψ₁ - ψ₁
- psi2_velocity = ψ₂ - ψ₂
These represent the "motion" of each wave through price-time space.
Phase Alignment Calculation
The velocity product and magnitude are calculated:
- velocity_product = v₁ × v₂
- velocity_magnitude = √(v₁² + v₂²)
Phase alignment is computed as:
- phase_alignment = velocity_product / (velocity_magnitude²)
This is smoothed using EMA of configurable length (default 5) and converted to degrees:
- phase_degrees = (1 - phase_alignment_smooth) × 90
Interference Amplitude Processing
Raw interference is calculated:
- interference_raw = (constructive_amplitude - destructive_amplitude) × gain
- where constructive_amplitude = (ψ₁ + ψ₂)²
- and destructive_amplitude = (ψ₁ - ψ₂)²
Statistical normalization is applied:
- interference_mean = SMA(interference_raw, normalizationLen)
- interference_std = StdDev(interference_raw, normalizationLen)
- upper_bound = mean + 2 × std
- lower_bound = mean - 2 × std
- interference_norm = (interference_raw - lower_bound) / (upper_bound - lower_bound), clamped to
State Classification
Three regime states are identified:
- Constructive: phase_alignment_smooth > 0 (waves moving in same direction)
- Destructive: phase_alignment_smooth < -0.3 (waves moving in opposite directions)
- Neutral: phase_alignment between -0.3 and 0 (weak directional correlation)
Pivot Detection Logic
In Interference Mode:
- High pivots: interference_norm > interference_norm AND interference_norm > interference_norm AND interference_norm > threshold AND price forms pivot high AND spacing requirement met
- Low pivots: interference_norm shows local trough using opposite conditions
In Phase Mode:
- Pivots: phase alignment reverses sign AND absolute phase_degrees > threshold AND price forms pivot high/low AND spacing requirement met
All conditions must be true for a signal to generate.
Dashboard Metrics System
The dashboard displays real-time calculations:
- I (Interference): Normalized amplitude shown as bar gauge and percentage
- Δφ (Phase): Phase difference shown as bar gauge and degrees
- ψ₁ and ψ₂: Current wave values in price units
- Wave Separation: |ψ₁ - ψ₂| with directional indicator
- STATE: Current regime classification (CONSTRUCTIVE/DESTRUCTIVE/NEUTRAL)
- PIVOT Probability: Composite score calculated as interference_norm × (phase_degrees/180) × 100
The interference matrix shows historical heatmap data across four metrics (interference amplitude, phase difference, constructive flags, destructive flags) over the configurable number of bars.
How to Use This Indicator
Initial Configuration
Apply the indicator to your chart with default settings. The fast wave length (default 8) should be adjusted to match short-term price swings for your instrument and timeframe. The slow wave length (default 21) should be 2-4 times the fast length to create adequate wave separation. Enable the dashboard (recommended position: top right) to monitor regime state and metrics in real-time.
Signal Interpretation
High Pivot Marker (▼ Red Triangle): Appears above price bars when a bearish pivot condition is detected. This indicates that price formed a swing high, the selected detection criteria were met (interference peak or phase reversal depending on mode), threshold requirements were satisfied, and the minimum spacing filter passed. This represents a potential reversal zone where wave mechanics suggest downward directional change conditions.
Low Pivot Marker (▲ Green Triangle): Appears below price bars when a bullish pivot condition is detected. This indicates that price formed a swing low and all detection criteria aligned. This represents a potential reversal zone where wave mechanics suggest upward directional change conditions.
Dashboard STATE Reading
The STATE field shows current wave relationship:
- "🟢 CONSTRUCTIVE": Waves are moving in the same direction (phase alignment positive). This suggests trend continuation conditions where waves are reinforcing each other.
- "🔴 DESTRUCTIVE": Waves are moving in opposite directions (phase alignment below -0.3). This suggests reversal-prone conditions where waves are conflicting.
- "🟡 NEUTRAL": Weak directional correlation between waves. This suggests ranging or transitional conditions.
Use STATE for regime awareness rather than specific entry signals.
Interference and Phase Metrics
Monitor the I (Interference) percentage:
- Above 70%: High amplitude state, significant wave interaction
- 40-70%: Moderate amplitude state
- Below 40%: Low amplitude state, weak interaction
Monitor the Δφ (Phase) degrees:
- Above 120°: Significant wave opposition (destructive conditions)
- 60-120°: Transitional phase relationship
- Below 60°: Wave alignment (constructive conditions)
The PIVOT probability metric combines both: high values (>70%) indicate conditions where both amplitude and phase suggest elevated pivot formation potential.
Trading Workflow Example
Step 1 - Regime Check: Observe dashboard STATE to understand current wave relationship. CONSTRUCTIVE states favor trend-following approaches, DESTRUCTIVE states suggest reversal-prone conditions.
Step 2 - Metric Monitoring: Watch I% and Δφ values. Rising interference with high phase difference indicates building wave conflict.
Step 3 - Visual Confirmation: Observe amplitude ribbon width (expanding = active state) and phase field texture (chaotic = conflict conditions, smooth = aligned conditions).
Step 4 - Signal Wait: Wait for confirmed pivot marker (▼ or ▲) rather than anticipating based on metrics alone. The marker indicates all detection criteria have aligned.
Step 5 - Entry Decision: Use pivot markers as potential reversal zones. Combine with other analysis methods such as support/resistance levels, volume confirmation, and higher timeframe bias for entry decisions.
Step 6 - Risk Management: Place stops beyond recent swing structure or ribbon edges. Monitor dashboard STATE—if it flips to CONSTRUCTIVE in trade direction, the reversal may be confirmed; if PIVOT% drops significantly, conditions may be weakening.
Step 7 - Exit Criteria: Consider exits when opposite pivot marker appears, STATE changes unfavorably, or standard technical targets are reached.
Parameter Optimization Guidelines
Fast Wave Length: Adjust to match short-term swing frequency. Shorter values (5-8) for active trading on lower timeframes, longer values (13-20) for swing trading on higher timeframes.
Slow Wave Length: Should maintain 2-4x ratio with fast length. Shorter values create more interference cycles, longer values create more stable baseline.
Phase Detection Length: Smoothing for phase alignment. Lower values (3-5) for responsive detection, higher values (8-12) for stable readings with less sensitivity.
Interference Gain: Amplification multiplier. Lower values (0.5-1.0) for conservative detection, higher values (1.5-2.5) for more sensitive detection.
Normalization Period: Rolling window for statistical bounds. Shorter periods (50-100) adapt quickly to volatility changes, longer periods (150-300) provide more stable normalization.
Interference Threshold: Minimum amplitude to trigger signals. Lower values (0.50-0.60) generate more signals, higher values (0.70-0.85) are more selective.
Phase Threshold: Minimum phase difference in degrees. Lower values (90-110) are more permissive, higher values (140-170) require stronger opposition.
Min Pivot Spacing: Bars between signals. Match to average swing duration on your timeframe—tighter spacing (3-8 bars) for scalping, wider spacing (15-30 bars) for swing trading.
Best Performance Conditions
This approach works better in markets with:
- Clear swing structure where EMA-based wave analysis is meaningful
- Sufficient volatility for wave separation to develop
- Periodic oscillation between trending and ranging states
- Liquid instruments where EMAs reflect true price flow
This approach may be less effective in:
- Extremely choppy conditions with no directional persistence
- Very low volatility environments where wave separation is minimal
- Gap-heavy instruments where price discontinuities disrupt wave continuity
- Parabolic moves where waves cannot keep pace with price velocity
The system adapts by reducing signal frequency in poor conditions—when interference stays below threshold or phase alignment remains neutral, pivot markers will not appear.
Visual Performance Optimization
The phase field and particle systems are computationally intensive. If experiencing chart lag:
- Reduce Phase Field Layers from 5 to 2-3 (significant performance improvement)
- Lower Particle Density from 3 to 1 (reduces label creation overhead)
- Disable Phase Field entirely (removes most intensive calculations)
- Decrease Matrix History Bars to 15-20 (reduces table computation load)
The core wave analysis and pivot detection continue to function with all visual elements disabled.
Important Disclaimers
This indicator is an analytical tool that measures phase relationships and interference amplitude between two exponential moving averages. It identifies conditions where these wave mechanics suggest potential pivot zones based on historical price data analysis. It should not be used as a standalone trading system.
The phase and interference calculations are deterministic mathematical formulas applied to EMA values. These measurements describe current and historical wave relationships but do not predict future price movements. Past wave patterns and pivot markers do not guarantee future market behavior will follow similar patterns.
All trading involves risk. The pivot markers represent analytical conditions where wave mechanics align with specific thresholds, not certainty of directional change. Use appropriate risk management, position sizing, and combine with additional confirmation methods such as support/resistance analysis, volume patterns, and multi-timeframe alignment. No indicator can eliminate false signals or guarantee profitable trades.
The spacing filter and threshold requirements are designed to reduce noise and over-signaling, but market conditions can change rapidly and render any analytical signal invalid. Always use stop losses and never risk capital you cannot afford to lose.
Technical Implementation Notes
All calculations execute on closed bars only—there is no repainting of signals or values. The normalization system requires approximately 100 bars of historical data to establish stable statistical bounds; values in the first 50-100 bars may be unstable as the rolling statistics converge.
Phase field arrays are fixed-size based on the complexity setting. Particle labels are capped at 80 total to prevent excessive memory usage. Dashboard and matrix tables update only on the last bar to minimize computational overhead. Particle generation is throttled to every 2 bars for performance. Phase accumulators use modulo arithmetic (% 2π) to prevent numerical overflow during extended operation.
The indicator has been tested across multiple timeframes (5-minute through daily) and multiple asset classes (forex, stocks, crypto, indices). It functions identically across all instruments due to the adaptive normalization approach.
Quantum Rotational Field MappingQuantum Rotational Field Mapping (QRFM):
Phase Coherence Detection Through Complex-Plane Oscillator Analysis
Quantum Rotational Field Mapping applies complex-plane mathematics and phase-space analysis to oscillator ensembles, identifying high-probability trend ignition points by measuring when multiple independent oscillators achieve phase coherence. Unlike traditional multi-oscillator approaches that simply stack indicators or use boolean AND/OR logic, this system converts each oscillator into a rotating phasor (vector) in the complex plane and calculates the Coherence Index (CI) —a mathematical measure of how tightly aligned the ensemble has become—then generates signals only when alignment, phase direction, and pairwise entanglement all converge.
The indicator combines three mathematical frameworks: phasor representation using analytic signal theory to extract phase and amplitude from each oscillator, coherence measurement using vector summation in the complex plane to quantify group alignment, and entanglement analysis that calculates pairwise phase agreement across all oscillator combinations. This creates a multi-dimensional confirmation system that distinguishes between random oscillator noise and genuine regime transitions.
What Makes This Original
Complex-Plane Phasor Framework
This indicator implements classical signal processing mathematics adapted for market oscillators. Each oscillator—whether RSI, MACD, Stochastic, CCI, Williams %R, MFI, ROC, or TSI—is first normalized to a common scale, then converted into a complex-plane representation using an in-phase (I) and quadrature (Q) component. The in-phase component is the oscillator value itself, while the quadrature component is calculated as the first difference (derivative proxy), creating a velocity-aware representation.
From these components, the system extracts:
Phase (φ) : Calculated as φ = atan2(Q, I), representing the oscillator's position in its cycle (mapped to -180° to +180°)
Amplitude (A) : Calculated as A = √(I² + Q²), representing the oscillator's strength or conviction
This mathematical approach is fundamentally different from simply reading oscillator values. A phasor captures both where an oscillator is in its cycle (phase angle) and how strongly it's expressing that position (amplitude). Two oscillators can have the same value but be in opposite phases of their cycles—traditional analysis would see them as identical, while QRFM sees them as 180° out of phase (contradictory).
Coherence Index Calculation
The core innovation is the Coherence Index (CI) , borrowed from physics and signal processing. When you have N oscillators, each with phase φₙ, you can represent each as a unit vector in the complex plane: e^(iφₙ) = cos(φₙ) + i·sin(φₙ).
The CI measures what happens when you sum all these vectors:
Resultant Vector : R = Σ e^(iφₙ) = Σ cos(φₙ) + i·Σ sin(φₙ)
Coherence Index : CI = |R| / N
Where |R| is the magnitude of the resultant vector and N is the number of active oscillators.
The CI ranges from 0 to 1:
CI = 1.0 : Perfect coherence—all oscillators have identical phase angles, vectors point in the same direction, creating maximum constructive interference
CI = 0.0 : Complete decoherence—oscillators are randomly distributed around the circle, vectors cancel out through destructive interference
0 < CI < 1 : Partial alignment—some clustering with some scatter
This is not a simple average or correlation. The CI captures phase synchronization across the entire ensemble simultaneously. When oscillators phase-lock (align their cycles), the CI spikes regardless of their individual values. This makes it sensitive to regime transitions that traditional indicators miss.
Dominant Phase and Direction Detection
Beyond measuring alignment strength, the system calculates the dominant phase of the ensemble—the direction the resultant vector points:
Dominant Phase : φ_dom = atan2(Σ sin(φₙ), Σ cos(φₙ))
This gives the "average direction" of all oscillator phases, mapped to -180° to +180°:
+90° to -90° (right half-plane): Bullish phase dominance
+90° to +180° or -90° to -180° (left half-plane): Bearish phase dominance
The combination of CI magnitude (coherence strength) and dominant phase angle (directional bias) creates a two-dimensional signal space. High CI alone is insufficient—you need high CI plus dominant phase pointing in a tradeable direction. This dual requirement is what separates QRFM from simple oscillator averaging.
Entanglement Matrix and Pairwise Coherence
While the CI measures global alignment, the entanglement matrix measures local pairwise relationships. For every pair of oscillators (i, j), the system calculates:
E(i,j) = |cos(φᵢ - φⱼ)|
This represents the phase agreement between oscillators i and j:
E = 1.0 : Oscillators are in-phase (0° or 360° apart)
E = 0.0 : Oscillators are in quadrature (90° apart, orthogonal)
E between 0 and 1 : Varying degrees of alignment
The system counts how many oscillator pairs exceed a user-defined entanglement threshold (e.g., 0.7). This entangled pairs count serves as a confirmation filter: signals require not just high global CI, but also a minimum number of strong pairwise agreements. This prevents false ignitions where CI is high but driven by only two oscillators while the rest remain scattered.
The entanglement matrix creates an N×N symmetric matrix that can be visualized as a web—when many cells are bright (high E values), the ensemble is highly interconnected. When cells are dark, oscillators are moving independently.
Phase-Lock Tolerance Mechanism
A complementary confirmation layer is the phase-lock detector . This calculates the maximum phase spread across all oscillators:
For all pairs (i,j), compute angular distance: Δφ = |φᵢ - φⱼ|, wrapping at 180°
Max Spread = maximum Δφ across all pairs
If max spread < user threshold (e.g., 35°), the ensemble is considered phase-locked —all oscillators are within a narrow angular band.
This differs from entanglement: entanglement measures pairwise cosine similarity (magnitude of alignment), while phase-lock measures maximum angular deviation (tightness of clustering). Both must be satisfied for the highest-conviction signals.
Multi-Layer Visual Architecture
QRFM includes six visual components that represent the same underlying mathematics from different perspectives:
Circular Orbit Plot : A polar coordinate grid showing each oscillator as a vector from origin to perimeter. Angle = phase, radius = amplitude. This is a real-time snapshot of the complex plane. When vectors converge (point in similar directions), coherence is high. When scattered randomly, coherence is low. Users can see phase alignment forming before CI numerically confirms it.
Phase-Time Heat Map : A 2D matrix with rows = oscillators and columns = time bins. Each cell is colored by the oscillator's phase at that time (using a gradient where color hue maps to angle). Horizontal color bands indicate sustained phase alignment over time. Vertical color bands show moments when all oscillators shared the same phase (ignition points). This provides historical pattern recognition.
Entanglement Web Matrix : An N×N grid showing E(i,j) for all pairs. Cells are colored by entanglement strength—bright yellow/gold for high E, dark gray for low E. This reveals which oscillators are driving coherence and which are lagging. For example, if RSI and MACD show high E but Stochastic shows low E with everything, Stochastic is the outlier.
Quantum Field Cloud : A background color overlay on the price chart. Color (green = bullish, red = bearish) is determined by dominant phase. Opacity is determined by CI—high CI creates dense, opaque cloud; low CI creates faint, nearly invisible cloud. This gives an atmospheric "feel" for regime strength without looking at numbers.
Phase Spiral : A smoothed plot of dominant phase over recent history, displayed as a curve that wraps around price. When the spiral is tight and rotating steadily, the ensemble is in coherent rotation (trending). When the spiral is loose or erratic, coherence is breaking down.
Dashboard : A table showing real-time metrics: CI (as percentage), dominant phase (in degrees with directional arrow), field strength (CI × average amplitude), entangled pairs count, phase-lock status (locked/unlocked), quantum state classification ("Ignition", "Coherent", "Collapse", "Chaos"), and collapse risk (recent CI change normalized to 0-100%).
Each component is independently toggleable, allowing users to customize their workspace. The orbit plot is the most essential—it provides intuitive, visual feedback on phase alignment that no numerical dashboard can match.
Core Components and How They Work Together
1. Oscillator Normalization Engine
The foundation is creating a common measurement scale. QRFM supports eight oscillators:
RSI : Normalized from to using overbought/oversold levels (70, 30) as anchors
MACD Histogram : Normalized by dividing by rolling standard deviation, then clamped to
Stochastic %K : Normalized from using (80, 20) anchors
CCI : Divided by 200 (typical extreme level), clamped to
Williams %R : Normalized from using (-20, -80) anchors
MFI : Normalized from using (80, 20) anchors
ROC : Divided by 10, clamped to
TSI : Divided by 50, clamped to
Each oscillator can be individually enabled/disabled. Only active oscillators contribute to phase calculations. The normalization removes scale differences—a reading of +0.8 means "strongly bullish" regardless of whether it came from RSI or TSI.
2. Analytic Signal Construction
For each active oscillator at each bar, the system constructs the analytic signal:
In-Phase (I) : The normalized oscillator value itself
Quadrature (Q) : The bar-to-bar change in the normalized value (first derivative approximation)
This creates a 2D representation: (I, Q). The phase is extracted as:
φ = atan2(Q, I) × (180 / π)
This maps the oscillator to a point on the unit circle. An oscillator at the same value but rising (positive Q) will have a different phase than one that is falling (negative Q). This velocity-awareness is critical—it distinguishes between "at resistance and stalling" versus "at resistance and breaking through."
The amplitude is extracted as:
A = √(I² + Q²)
This represents the distance from origin in the (I, Q) plane. High amplitude means the oscillator is far from neutral (strong conviction). Low amplitude means it's near zero (weak/transitional state).
3. Coherence Calculation Pipeline
For each bar (or every Nth bar if phase sample rate > 1 for performance):
Step 1 : Extract phase φₙ for each of the N active oscillators
Step 2 : Compute complex exponentials: Zₙ = e^(i·φₙ·π/180) = cos(φₙ·π/180) + i·sin(φₙ·π/180)
Step 3 : Sum the complex exponentials: R = Σ Zₙ = (Σ cos φₙ) + i·(Σ sin φₙ)
Step 4 : Calculate magnitude: |R| = √
Step 5 : Normalize by count: CI_raw = |R| / N
Step 6 : Smooth the CI: CI = SMA(CI_raw, smoothing_window)
The smoothing step (default 2 bars) removes single-bar noise spikes while preserving structural coherence changes. Users can adjust this to control reactivity versus stability.
The dominant phase is calculated as:
φ_dom = atan2(Σ sin φₙ, Σ cos φₙ) × (180 / π)
This is the angle of the resultant vector R in the complex plane.
4. Entanglement Matrix Construction
For all unique pairs of oscillators (i, j) where i < j:
Step 1 : Get phases φᵢ and φⱼ
Step 2 : Compute phase difference: Δφ = φᵢ - φⱼ (in radians)
Step 3 : Calculate entanglement: E(i,j) = |cos(Δφ)|
Step 4 : Store in symmetric matrix: matrix = matrix = E(i,j)
The matrix is then scanned: count how many E(i,j) values exceed the user-defined threshold (default 0.7). This count is the entangled pairs metric.
For visualization, the matrix is rendered as an N×N table where cell brightness maps to E(i,j) intensity.
5. Phase-Lock Detection
Step 1 : For all unique pairs (i, j), compute angular distance: Δφ = |φᵢ - φⱼ|
Step 2 : Wrap angles: if Δφ > 180°, set Δφ = 360° - Δφ
Step 3 : Find maximum: max_spread = max(Δφ) across all pairs
Step 4 : Compare to tolerance: phase_locked = (max_spread < tolerance)
If phase_locked is true, all oscillators are within the specified angular cone (e.g., 35°). This is a boolean confirmation filter.
6. Signal Generation Logic
Signals are generated through multi-layer confirmation:
Long Ignition Signal :
CI crosses above ignition threshold (e.g., 0.80)
AND dominant phase is in bullish range (-90° < φ_dom < +90°)
AND phase_locked = true
AND entangled_pairs >= minimum threshold (e.g., 4)
Short Ignition Signal :
CI crosses above ignition threshold
AND dominant phase is in bearish range (φ_dom < -90° OR φ_dom > +90°)
AND phase_locked = true
AND entangled_pairs >= minimum threshold
Collapse Signal :
CI at bar minus CI at current bar > collapse threshold (e.g., 0.55)
AND CI at bar was above 0.6 (must collapse from coherent state, not from already-low state)
These are strict conditions. A high CI alone does not generate a signal—dominant phase must align with direction, oscillators must be phase-locked, and sufficient pairwise entanglement must exist. This multi-factor gating dramatically reduces false signals compared to single-condition triggers.
Calculation Methodology
Phase 1: Oscillator Computation and Normalization
On each bar, the system calculates the raw values for all enabled oscillators using standard Pine Script functions:
RSI: ta.rsi(close, length)
MACD: ta.macd() returning histogram component
Stochastic: ta.stoch() smoothed with ta.sma()
CCI: ta.cci(close, length)
Williams %R: ta.wpr(length)
MFI: ta.mfi(hlc3, length)
ROC: ta.roc(close, length)
TSI: ta.tsi(close, short, long)
Each raw value is then passed through a normalization function:
normalize(value, overbought_level, oversold_level) = 2 × (value - oversold) / (overbought - oversold) - 1
This maps the oscillator's typical range to , where -1 represents extreme bearish, 0 represents neutral, and +1 represents extreme bullish.
For oscillators without fixed ranges (MACD, ROC, TSI), statistical normalization is used: divide by a rolling standard deviation or fixed divisor, then clamp to .
Phase 2: Phasor Extraction
For each normalized oscillator value val:
I = val (in-phase component)
Q = val - val (quadrature component, first difference)
Phase calculation:
phi_rad = atan2(Q, I)
phi_deg = phi_rad × (180 / π)
Amplitude calculation:
A = √(I² + Q²)
These values are stored in arrays: osc_phases and osc_amps for each oscillator n.
Phase 3: Complex Summation and Coherence
Initialize accumulators:
sum_cos = 0
sum_sin = 0
For each oscillator n = 0 to N-1:
phi_rad = osc_phases × (π / 180)
sum_cos += cos(phi_rad)
sum_sin += sin(phi_rad)
Resultant magnitude:
resultant_mag = √(sum_cos² + sum_sin²)
Coherence Index (raw):
CI_raw = resultant_mag / N
Smoothed CI:
CI = SMA(CI_raw, smoothing_window)
Dominant phase:
phi_dom_rad = atan2(sum_sin, sum_cos)
phi_dom_deg = phi_dom_rad × (180 / π)
Phase 4: Entanglement Matrix Population
For i = 0 to N-2:
For j = i+1 to N-1:
phi_i = osc_phases × (π / 180)
phi_j = osc_phases × (π / 180)
delta_phi = phi_i - phi_j
E = |cos(delta_phi)|
matrix_index_ij = i × N + j
matrix_index_ji = j × N + i
entangle_matrix = E
entangle_matrix = E
if E >= threshold:
entangled_pairs += 1
The matrix uses flat array storage with index mapping: index(row, col) = row × N + col.
Phase 5: Phase-Lock Check
max_spread = 0
For i = 0 to N-2:
For j = i+1 to N-1:
delta = |osc_phases - osc_phases |
if delta > 180:
delta = 360 - delta
max_spread = max(max_spread, delta)
phase_locked = (max_spread < tolerance)
Phase 6: Signal Evaluation
Ignition Long :
ignition_long = (CI crosses above threshold) AND
(phi_dom > -90 AND phi_dom < 90) AND
phase_locked AND
(entangled_pairs >= minimum)
Ignition Short :
ignition_short = (CI crosses above threshold) AND
(phi_dom < -90 OR phi_dom > 90) AND
phase_locked AND
(entangled_pairs >= minimum)
Collapse :
CI_prev = CI
collapse = (CI_prev - CI > collapse_threshold) AND (CI_prev > 0.6)
All signals are evaluated on bar close. The crossover and crossunder functions ensure signals fire only once when conditions transition from false to true.
Phase 7: Field Strength and Visualization Metrics
Average Amplitude :
avg_amp = (Σ osc_amps ) / N
Field Strength :
field_strength = CI × avg_amp
Collapse Risk (for dashboard):
collapse_risk = (CI - CI) / max(CI , 0.1)
collapse_risk_pct = clamp(collapse_risk × 100, 0, 100)
Quantum State Classification :
if (CI > threshold AND phase_locked):
state = "Ignition"
else if (CI > 0.6):
state = "Coherent"
else if (collapse):
state = "Collapse"
else:
state = "Chaos"
Phase 8: Visual Rendering
Orbit Plot : For each oscillator, convert polar (phase, amplitude) to Cartesian (x, y) for grid placement:
radius = amplitude × grid_center × 0.8
x = radius × cos(phase × π/180)
y = radius × sin(phase × π/180)
col = center + x (mapped to grid coordinates)
row = center - y
Heat Map : For each oscillator row and time column, retrieve historical phase value at lookback = (columns - col) × sample_rate, then map phase to color using a hue gradient.
Entanglement Web : Render matrix as table cell with background color opacity = E(i,j).
Field Cloud : Background color = (phi_dom > -90 AND phi_dom < 90) ? green : red, with opacity = mix(min_opacity, max_opacity, CI).
All visual components render only on the last bar (barstate.islast) to minimize computational overhead.
How to Use This Indicator
Step 1 : Apply QRFM to your chart. It works on all timeframes and asset classes, though 15-minute to 4-hour timeframes provide the best balance of responsiveness and noise reduction.
Step 2 : Enable the dashboard (default: top right) and the circular orbit plot (default: middle left). These are your primary visual feedback tools.
Step 3 : Optionally enable the heat map, entanglement web, and field cloud based on your preference. New users may find all visuals overwhelming; start with dashboard + orbit plot.
Step 4 : Observe for 50-100 bars to let the indicator establish baseline coherence patterns. Markets have different "normal" CI ranges—some instruments naturally run higher or lower coherence.
Understanding the Circular Orbit Plot
The orbit plot is a polar grid showing oscillator vectors in real-time:
Center point : Neutral (zero phase and amplitude)
Each vector : A line from center to a point on the grid
Vector angle : The oscillator's phase (0° = right/east, 90° = up/north, 180° = left/west, -90° = down/south)
Vector length : The oscillator's amplitude (short = weak signal, long = strong signal)
Vector label : First letter of oscillator name (R = RSI, M = MACD, etc.)
What to watch :
Convergence : When all vectors cluster in one quadrant or sector, CI is rising and coherence is forming. This is your pre-signal warning.
Scatter : When vectors point in random directions (360° spread), CI is low and the market is in a non-trending or transitional regime.
Rotation : When the cluster rotates smoothly around the circle, the ensemble is in coherent oscillation—typically seen during steady trends.
Sudden flips : When the cluster rapidly jumps from one side to the opposite (e.g., +90° to -90°), a phase reversal has occurred—often coinciding with trend reversals.
Example: If you see RSI, MACD, and Stochastic all pointing toward 45° (northeast) with long vectors, while CCI, TSI, and ROC point toward 40-50° as well, coherence is high and dominant phase is bullish. Expect an ignition signal if CI crosses threshold.
Reading Dashboard Metrics
The dashboard provides numerical confirmation of what the orbit plot shows visually:
CI : Displays as 0-100%. Above 70% = high coherence (strong regime), 40-70% = moderate, below 40% = low (poor conditions for trend entries).
Dom Phase : Angle in degrees with directional arrow. ⬆ = bullish bias, ⬇ = bearish bias, ⬌ = neutral.
Field Strength : CI weighted by amplitude. High values (> 0.6) indicate not just alignment but strong alignment.
Entangled Pairs : Count of oscillator pairs with E > threshold. Higher = more confirmation. If minimum is set to 4, you need at least 4 pairs entangled for signals.
Phase Lock : 🔒 YES (all oscillators within tolerance) or 🔓 NO (spread too wide).
State : Real-time classification:
🚀 IGNITION: CI just crossed threshold with phase-lock
⚡ COHERENT: CI is high and stable
💥 COLLAPSE: CI has dropped sharply
🌀 CHAOS: Low CI, scattered phases
Collapse Risk : 0-100% scale based on recent CI change. Above 50% warns of imminent breakdown.
Interpreting Signals
Long Ignition (Blue Triangle Below Price) :
Occurs when CI crosses above threshold (e.g., 0.80)
Dominant phase is in bullish range (-90° to +90°)
All oscillators are phase-locked (within tolerance)
Minimum entangled pairs requirement met
Interpretation : The oscillator ensemble has transitioned from disorder to coherent bullish alignment. This is a high-probability long entry point. The multi-layer confirmation (CI + phase direction + lock + entanglement) ensures this is not a single-oscillator whipsaw.
Short Ignition (Red Triangle Above Price) :
Same conditions as long, but dominant phase is in bearish range (< -90° or > +90°)
Interpretation : Coherent bearish alignment has formed. High-probability short entry.
Collapse (Circles Above and Below Price) :
CI has dropped by more than the collapse threshold (e.g., 0.55) over a 5-bar window
CI was previously above 0.6 (collapsing from coherent state)
Interpretation : Phase coherence has broken down. If you are in a position, this is an exit warning. If looking to enter, stand aside—regime is transitioning.
Phase-Time Heat Map Patterns
Enable the heat map and position it at bottom right. The rows represent individual oscillators, columns represent time bins (most recent on left).
Pattern: Horizontal Color Bands
If a row (e.g., RSI) shows consistent color across columns (say, green for several bins), that oscillator has maintained stable phase over time. If all rows show horizontal bands of similar color, the entire ensemble has been phase-locked for an extended period—this is a strong trending regime.
Pattern: Vertical Color Bands
If a column (single time bin) shows all cells with the same or very similar color, that moment in time had high coherence. These vertical bands often align with ignition signals or major price pivots.
Pattern: Rainbow Chaos
If cells are random colors (red, green, yellow mixed with no pattern), coherence is low. The ensemble is scattered. Avoid trading during these periods unless you have external confirmation.
Pattern: Color Transition
If you see a row transition from red to green (or vice versa) sharply, that oscillator has phase-flipped. If multiple rows do this simultaneously, a regime change is underway.
Entanglement Web Analysis
Enable the web matrix (default: opposite corner from heat map). It shows an N×N grid where N = number of active oscillators.
Bright Yellow/Gold Cells : High pairwise entanglement. For example, if the RSI-MACD cell is bright gold, those two oscillators are moving in phase. If the RSI-Stochastic cell is bright, they are entangled as well.
Dark Gray Cells : Low entanglement. Oscillators are decorrelated or in quadrature.
Diagonal : Always marked with "—" because an oscillator is always perfectly entangled with itself.
How to use :
Scan for clustering: If most cells are bright, coherence is high across the board. If only a few cells are bright, coherence is driven by a subset (e.g., RSI and MACD are aligned, but nothing else is—weak signal).
Identify laggards: If one row/column is entirely dark, that oscillator is the outlier. You may choose to disable it or monitor for when it joins the group (late confirmation).
Watch for web formation: During low-coherence periods, the matrix is mostly dark. As coherence builds, cells begin lighting up. A sudden "web" of connections forming visually precedes ignition signals.
Trading Workflow
Step 1: Monitor Coherence Level
Check the dashboard CI metric or observe the orbit plot. If CI is below 40% and vectors are scattered, conditions are poor for trend entries. Wait.
Step 2: Detect Coherence Building
When CI begins rising (say, from 30% to 50-60%) and you notice vectors on the orbit plot starting to cluster, coherence is forming. This is your alert phase—do not enter yet, but prepare.
Step 3: Confirm Phase Direction
Check the dominant phase angle and the orbit plot quadrant where clustering is occurring:
Clustering in right half (0° to ±90°): Bullish bias forming
Clustering in left half (±90° to 180°): Bearish bias forming
Verify the dashboard shows the corresponding directional arrow (⬆ or ⬇).
Step 4: Wait for Signal Confirmation
Do not enter based on rising CI alone. Wait for the full ignition signal:
CI crosses above threshold
Phase-lock indicator shows 🔒 YES
Entangled pairs count >= minimum
Directional triangle appears on chart
This ensures all layers have aligned.
Step 5: Execute Entry
Long : Blue triangle below price appears → enter long
Short : Red triangle above price appears → enter short
Step 6: Position Management
Initial Stop : Place stop loss based on your risk management rules (e.g., recent swing low/high, ATR-based buffer).
Monitoring :
Watch the field cloud density. If it remains opaque and colored in your direction, the regime is intact.
Check dashboard collapse risk. If it rises above 50%, prepare for exit.
Monitor the orbit plot. If vectors begin scattering or the cluster flips to the opposite side, coherence is breaking.
Exit Triggers :
Collapse signal fires (circles appear)
Dominant phase flips to opposite half-plane
CI drops below 40% (coherence lost)
Price hits your profit target or trailing stop
Step 7: Post-Exit Analysis
After exiting, observe whether a new ignition forms in the opposite direction (reversal) or if CI remains low (transition to range). Use this to decide whether to re-enter, reverse, or stand aside.
Best Practices
Use Price Structure as Context
QRFM identifies when coherence forms but does not specify where price will go. Combine ignition signals with support/resistance levels, trendlines, or chart patterns. For example:
Long ignition near a major support level after a pullback: high-probability bounce
Long ignition in the middle of a range with no structure: lower probability
Multi-Timeframe Confirmation
Open QRFM on two timeframes simultaneously:
Higher timeframe (e.g., 4-hour): Use CI level to determine regime bias. If 4H CI is above 60% and dominant phase is bullish, the market is in a bullish regime.
Lower timeframe (e.g., 15-minute): Execute entries on ignition signals that align with the higher timeframe bias.
This prevents counter-trend trades and increases win rate.
Distinguish Between Regime Types
High CI, stable dominant phase (State: Coherent) : Trending market. Ignitions are continuation signals; collapses are profit-taking or reversal warnings.
Low CI, erratic dominant phase (State: Chaos) : Ranging or choppy market. Avoid ignition signals or reduce position size. Wait for coherence to establish.
Moderate CI with frequent collapses : Whipsaw environment. Use wider stops or stand aside.
Adjust Parameters to Instrument and Timeframe
Crypto/Forex (high volatility) : Lower ignition threshold (0.65-0.75), lower CI smoothing (2-3), shorter oscillator lengths (7-10).
Stocks/Indices (moderate volatility) : Standard settings (threshold 0.75-0.85, smoothing 5-7, oscillator lengths 14).
Lower timeframes (5-15 min) : Reduce phase sample rate to 1-2 for responsiveness.
Higher timeframes (daily+) : Increase CI smoothing and oscillator lengths for noise reduction.
Use Entanglement Count as Conviction Filter
The minimum entangled pairs setting controls signal strictness:
Low (1-2) : More signals, lower quality (acceptable if you have other confirmation)
Medium (3-5) : Balanced (recommended for most traders)
High (6+) : Very strict, fewer signals, highest quality
Adjust based on your trade frequency preference and risk tolerance.
Monitor Oscillator Contribution
Use the entanglement web to see which oscillators are driving coherence. If certain oscillators are consistently dark (low E with all others), they may be adding noise. Consider disabling them. For example:
On low-volume instruments, MFI may be unreliable → disable MFI
On strongly trending instruments, mean-reversion oscillators (Stochastic, RSI) may lag → reduce weight or disable
Respect the Collapse Signal
Collapse events are early warnings. Price may continue in the original direction for several bars after collapse fires, but the underlying regime has weakened. Best practice:
If in profit: Take partial or full profit on collapse
If at breakeven/small loss: Exit immediately
If collapse occurs shortly after entry: Likely a false ignition; exit to avoid drawdown
Collapses do not guarantee immediate reversals—they signal uncertainty .
Combine with Volume Analysis
If your instrument has reliable volume:
Ignitions with expanding volume: Higher conviction
Ignitions with declining volume: Weaker, possibly false
Collapses with volume spikes: Strong reversal signal
Collapses with low volume: May just be consolidation
Volume is not built into QRFM (except via MFI), so add it as external confirmation.
Observe the Phase Spiral
The spiral provides a quick visual cue for rotation consistency:
Tight, smooth spiral : Ensemble is rotating coherently (trending)
Loose, erratic spiral : Phase is jumping around (ranging or transitional)
If the spiral tightens, coherence is building. If it loosens, coherence is dissolving.
Do Not Overtrade Low-Coherence Periods
When CI is persistently below 40% and the state is "Chaos," the market is not in a regime where phase analysis is predictive. During these times:
Reduce position size
Widen stops
Wait for coherence to return
QRFM's strength is regime detection. If there is no regime, the tool correctly signals "stand aside."
Use Alerts Strategically
Set alerts for:
Long Ignition
Short Ignition
Collapse
Phase Lock (optional)
Configure alerts to "Once per bar close" to avoid intrabar repainting and noise. When an alert fires, manually verify:
Orbit plot shows clustering
Dashboard confirms all conditions
Price structure supports the trade
Do not blindly trade alerts—use them as prompts for analysis.
Ideal Market Conditions
Best Performance
Instruments :
Liquid, actively traded markets (major forex pairs, large-cap stocks, major indices, top-tier crypto)
Instruments with clear cyclical oscillator behavior (avoid extremely illiquid or manipulated markets)
Timeframes :
15-minute to 4-hour: Optimal balance of noise reduction and responsiveness
1-hour to daily: Slower, higher-conviction signals; good for swing trading
5-minute: Acceptable for scalping if parameters are tightened and you accept more noise
Market Regimes :
Trending markets with periodic retracements (where oscillators cycle through phases predictably)
Breakout environments (coherence forms before/during breakout; collapse occurs at exhaustion)
Rotational markets with clear swings (oscillators phase-lock at turning points)
Volatility :
Moderate to high volatility (oscillators have room to move through their ranges)
Stable volatility regimes (sudden VIX spikes or flash crashes may create false collapses)
Challenging Conditions
Instruments :
Very low liquidity markets (erratic price action creates unstable oscillator phases)
Heavily news-driven instruments (fundamentals may override technical coherence)
Highly correlated instruments (oscillators may all reflect the same underlying factor, reducing independence)
Market Regimes :
Deep, prolonged consolidation (oscillators remain near neutral, CI is chronically low, few signals fire)
Extreme chop with no directional bias (oscillators whipsaw, coherence never establishes)
Gap-driven markets (large overnight gaps create phase discontinuities)
Timeframes :
Sub-5-minute charts: Noise dominates; oscillators flip rapidly; coherence is fleeting and unreliable
Weekly/monthly: Oscillators move extremely slowly; signals are rare; better suited for long-term positioning than active trading
Special Cases :
During major economic releases or earnings: Oscillators may lag price or become decorrelated as fundamentals overwhelm technicals. Reduce position size or stand aside.
In extremely low-volatility environments (e.g., holiday periods): Oscillators compress to neutral, CI may be artificially high due to lack of movement, but signals lack follow-through.
Adaptive Behavior
QRFM is designed to self-adapt to poor conditions:
When coherence is genuinely absent, CI remains low and signals do not fire
When only a subset of oscillators aligns, entangled pairs count stays below threshold and signals are filtered out
When phase-lock cannot be achieved (oscillators too scattered), the lock filter prevents signals
This means the indicator will naturally produce fewer (or zero) signals during unfavorable conditions, rather than generating false signals. This is a feature —it keeps you out of low-probability trades.
Parameter Optimization by Trading Style
Scalping (5-15 Minute Charts)
Goal : Maximum responsiveness, accept higher noise
Oscillator Lengths :
RSI: 7-10
MACD: 8/17/6
Stochastic: 8-10, smooth 2-3
CCI: 14-16
Others: 8-12
Coherence Settings :
CI Smoothing Window: 2-3 bars (fast reaction)
Phase Sample Rate: 1 (every bar)
Ignition Threshold: 0.65-0.75 (lower for more signals)
Collapse Threshold: 0.40-0.50 (earlier exit warnings)
Confirmation :
Phase Lock Tolerance: 40-50° (looser, easier to achieve)
Min Entangled Pairs: 2-3 (fewer oscillators required)
Visuals :
Orbit Plot + Dashboard only (reduce screen clutter for fast decisions)
Disable heavy visuals (heat map, web) for performance
Alerts :
Enable all ignition and collapse alerts
Set to "Once per bar close"
Day Trading (15-Minute to 1-Hour Charts)
Goal : Balance between responsiveness and reliability
Oscillator Lengths :
RSI: 14 (standard)
MACD: 12/26/9 (standard)
Stochastic: 14, smooth 3
CCI: 20
Others: 10-14
Coherence Settings :
CI Smoothing Window: 3-5 bars (balanced)
Phase Sample Rate: 2-3
Ignition Threshold: 0.75-0.85 (moderate selectivity)
Collapse Threshold: 0.50-0.55 (balanced exit timing)
Confirmation :
Phase Lock Tolerance: 30-40° (moderate tightness)
Min Entangled Pairs: 4-5 (reasonable confirmation)
Visuals :
Orbit Plot + Dashboard + Heat Map or Web (choose one)
Field Cloud for regime backdrop
Alerts :
Ignition and collapse alerts
Optional phase-lock alert for advance warning
Swing Trading (4-Hour to Daily Charts)
Goal : High-conviction signals, minimal noise, fewer trades
Oscillator Lengths :
RSI: 14-21
MACD: 12/26/9 or 19/39/9 (longer variant)
Stochastic: 14-21, smooth 3-5
CCI: 20-30
Others: 14-20
Coherence Settings :
CI Smoothing Window: 5-10 bars (very smooth)
Phase Sample Rate: 3-5
Ignition Threshold: 0.80-0.90 (high bar for entry)
Collapse Threshold: 0.55-0.65 (only significant breakdowns)
Confirmation :
Phase Lock Tolerance: 20-30° (tight clustering required)
Min Entangled Pairs: 5-7 (strong confirmation)
Visuals :
All modules enabled (you have time to analyze)
Heat Map for multi-bar pattern recognition
Web for deep confirmation analysis
Alerts :
Ignition and collapse
Review manually before entering (no rush)
Position/Long-Term Trading (Daily to Weekly Charts)
Goal : Rare, very high-conviction regime shifts
Oscillator Lengths :
RSI: 21-30
MACD: 19/39/9 or 26/52/12
Stochastic: 21, smooth 5
CCI: 30-50
Others: 20-30
Coherence Settings :
CI Smoothing Window: 10-14 bars
Phase Sample Rate: 5 (every 5th bar to reduce computation)
Ignition Threshold: 0.85-0.95 (only extreme alignment)
Collapse Threshold: 0.60-0.70 (major regime breaks only)
Confirmation :
Phase Lock Tolerance: 15-25° (very tight)
Min Entangled Pairs: 6+ (broad consensus required)
Visuals :
Dashboard + Orbit Plot for quick checks
Heat Map to study historical coherence patterns
Web to verify deep entanglement
Alerts :
Ignition only (collapses are less critical on long timeframes)
Manual review with fundamental analysis overlay
Performance Optimization (Low-End Systems)
If you experience lag or slow rendering:
Reduce Visual Load :
Orbit Grid Size: 8-10 (instead of 12+)
Heat Map Time Bins: 5-8 (instead of 10+)
Disable Web Matrix entirely if not needed
Disable Field Cloud and Phase Spiral
Reduce Calculation Frequency :
Phase Sample Rate: 5-10 (calculate every 5-10 bars)
Max History Depth: 100-200 (instead of 500+)
Disable Unused Oscillators :
If you only want RSI, MACD, and Stochastic, disable the other five. Fewer oscillators = smaller matrices, faster loops.
Simplify Dashboard :
Choose "Small" dashboard size
Reduce number of metrics displayed
These settings will not significantly degrade signal quality (signals are based on bar-close calculations, which remain accurate), but will improve chart responsiveness.
Important Disclaimers
This indicator is a technical analysis tool designed to identify periods of phase coherence across an ensemble of oscillators. It is not a standalone trading system and does not guarantee profitable trades. The Coherence Index, dominant phase, and entanglement metrics are mathematical calculations applied to historical price data—they measure past oscillator behavior and do not predict future price movements with certainty.
No Predictive Guarantee : High coherence indicates that oscillators are currently aligned, which historically has coincided with trending or directional price movement. However, past alignment does not guarantee future trends. Markets can remain coherent while prices consolidate, or lose coherence suddenly due to news, liquidity changes, or other factors not captured by oscillator mathematics.
Signal Confirmation is Probabilistic : The multi-layer confirmation system (CI threshold + dominant phase + phase-lock + entanglement) is designed to filter out low-probability setups. This increases the proportion of valid signals relative to false signals, but does not eliminate false signals entirely. Users should combine QRFM with additional analysis—support and resistance levels, volume confirmation, multi-timeframe alignment, and fundamental context—before executing trades.
Collapse Signals are Warnings, Not Reversals : A coherence collapse indicates that the oscillator ensemble has lost alignment. This often precedes trend exhaustion or reversals, but can also occur during healthy pullbacks or consolidations. Price may continue in the original direction after a collapse. Use collapses as risk management cues (tighten stops, take partial profits) rather than automatic reversal entries.
Market Regime Dependency : QRFM performs best in markets where oscillators exhibit cyclical, mean-reverting behavior and where trends are punctuated by retracements. In markets dominated by fundamental shocks, gap openings, or extreme low-liquidity conditions, oscillator coherence may be less reliable. During such periods, reduce position size or stand aside.
Risk Management is Essential : All trading involves risk of loss. Use appropriate stop losses, position sizing, and risk-per-trade limits. The indicator does not specify stop loss or take profit levels—these must be determined by the user based on their risk tolerance and account size. Never risk more than you can afford to lose.
Parameter Sensitivity : The indicator's behavior changes with input parameters. Aggressive settings (low thresholds, loose tolerances) produce more signals with lower average quality. Conservative settings (high thresholds, tight tolerances) produce fewer signals with higher average quality. Users should backtest and forward-test parameter sets on their specific instruments and timeframes before committing real capital.
No Repainting by Design : All signal conditions are evaluated on bar close using bar-close values. However, the visual components (orbit plot, heat map, dashboard) update in real-time during bar formation for monitoring purposes. For trade execution, rely on the confirmed signals (triangles and circles) that appear only after the bar closes.
Computational Load : QRFM performs extensive calculations, including nested loops for entanglement matrices and real-time table rendering. On lower-powered devices or when running multiple indicators simultaneously, users may experience lag. Use the performance optimization settings (reduce visual complexity, increase phase sample rate, disable unused oscillators) to improve responsiveness.
This system is most effective when used as one component within a broader trading methodology that includes sound risk management, multi-timeframe analysis, market context awareness, and disciplined execution. It is a tool for regime detection and signal confirmation, not a substitute for comprehensive trade planning.
Technical Notes
Calculation Timing : All signal logic (ignition, collapse) is evaluated using bar-close values. The barstate.isconfirmed or implicit bar-close behavior ensures signals do not repaint. Visual components (tables, plots) render on every tick for real-time feedback but do not affect signal generation.
Phase Wrapping : Phase angles are calculated in the range -180° to +180° using atan2. Angular distance calculations account for wrapping (e.g., the distance between +170° and -170° is 20°, not 340°). This ensures phase-lock detection works correctly across the ±180° boundary.
Array Management : The indicator uses fixed-size arrays for oscillator phases, amplitudes, and the entanglement matrix. The maximum number of oscillators is 8. If fewer oscillators are enabled, array sizes shrink accordingly (only active oscillators are processed).
Matrix Indexing : The entanglement matrix is stored as a flat array with size N×N, where N is the number of active oscillators. Index mapping: index(row, col) = row × N + col. Symmetric pairs (i,j) and (j,i) are stored identically.
Normalization Stability : Oscillators are normalized to using fixed reference levels (e.g., RSI overbought/oversold at 70/30). For unbounded oscillators (MACD, ROC, TSI), statistical normalization (division by rolling standard deviation) is used, with clamping to prevent extreme outliers from distorting phase calculations.
Smoothing and Lag : The CI smoothing window (SMA) introduces lag proportional to the window size. This is intentional—it filters out single-bar noise spikes in coherence. Users requiring faster reaction can reduce the smoothing window to 1-2 bars, at the cost of increased sensitivity to noise.
Complex Number Representation : Pine Script does not have native complex number types. Complex arithmetic is implemented using separate real and imaginary accumulators (sum_cos, sum_sin) and manual calculation of magnitude (sqrt(real² + imag²)) and argument (atan2(imag, real)).
Lookback Limits : The indicator respects Pine Script's maximum lookback constraints. Historical phase and amplitude values are accessed using the operator, with lookback limited to the chart's available bar history (max_bars_back=5000 declared).
Visual Rendering Performance : Tables (orbit plot, heat map, web, dashboard) are conditionally deleted and recreated on each update using table.delete() and table.new(). This prevents memory leaks but incurs redraw overhead. Rendering is restricted to barstate.islast (last bar) to minimize computational load—historical bars do not render visuals.
Alert Condition Triggers : alertcondition() functions evaluate on bar close when their boolean conditions transition from false to true. Alerts do not fire repeatedly while a condition remains true (e.g., CI stays above threshold for 10 bars fires only once on the initial cross).
Color Gradient Functions : The phaseColor() function maps phase angles to RGB hues using sine waves offset by 120° (red, green, blue channels). This creates a continuous spectrum where -180° to +180° spans the full color wheel. The amplitudeColor() function maps amplitude to grayscale intensity. The coherenceColor() function uses cos(phase) to map contribution to CI (positive = green, negative = red).
No External Data Requests : QRFM operates entirely on the chart's symbol and timeframe. It does not use request.security() or access external data sources. All calculations are self-contained, avoiding lookahead bias from higher-timeframe requests.
Deterministic Behavior : Given identical input parameters and price data, QRFM produces identical outputs. There are no random elements, probabilistic sampling, or time-of-day dependencies.
— Dskyz, Engineering precision. Trading coherence.






















