Experimental Supertrend [CHE]Experimental Supertrend — Combines EMA crossovers for trend regime detection with an adaptive ATR-based hull that selects the narrowest band to contain recent highs and lows, minimizing false breaks in varying volatility.
Summary
This indicator overlays a dynamic supertrend boundary around a midline derived from dual EMAs, using EMA crossovers to switch between bullish and bearish regimes. The hull adapts by evaluating multiple ATR periods and selecting the tightest one that fully encloses price action over a specified window, which helps in creating more stable trend lines that hug price without excessive gaps or breaches. Fills between the midline and hull provide visual cues for trend strength, darkening temporarily after regime changes to highlight transitions. Alerts trigger on crossovers, and markers label entry points, making it suitable for trend-following setups where standard supertrends might whipsaw. Overall, it offers robustness through auto-adjustment, reducing sensitivity to noise while maintaining responsiveness to genuine shifts.
Motivation: Why this design?
Standard supertrend indicators often flip prematurely in choppy markets due to fixed multipliers that do not account for localized volatility patterns, leading to frequent false signals and eroded confidence in trends. This design addresses that by incorporating an EMA-based regime filter for directional bias and an auto-adaptive hull that dynamically tunes the band width based on recent price containment needs. By prioritizing the narrowest effective enclosure, it avoids over-wide bands in calm periods that cause lag or under-wide ones in volatility spikes that invite breaks, providing a more consistent trailing reference without manual tweaking.
What’s different vs. standard approaches?
- Reference baseline: Diverges from the classic ATR-multiplier supertrend, which uses a single fixed period and constant factor applied to close or high/low deviations.
- Architecture differences:
- Auto-selection from candidate ATR lengths to find the optimal period for current conditions.
- Dynamic multiplier clamped between floor and cap values, adjusted by padding to ensure reliable containment.
- Regime-gated rendering, where hull position flips based on EMA relative positioning.
- Post-transition visual fading to emphasize change points without altering core logic.
- Practical effect: Charts show tighter, more reactive bands that rarely breach during trends, reducing visual clutter from flips; the adaptive nature means less intervention across assets, as the hull self-adjusts to volatility clusters rather than applying a one-size-fits-all scale.
How it works (technical)
The indicator first computes two EMAs from close prices using lengths derived from a preset pair or manual inputs, establishing a midline as their average. This midline serves as the central reference for the hull. True range values are then smoothed into multiple ATR candidates using exponential weighting over the specified lengths. For each candidate, deviations of recent highs and lows from the midline are ratioed against the ATR to determine a required multiplier that would enclose all extremes in the containment window—the highest ratio plus padding sets the base, clamped to user-defined bounds. Among valid candidates (those with sufficient history), the one yielding the narrowest overall band width is selected. The hull boundaries are then offset from the midline by this multiplier times the chosen ATR, and further smoothed with a fixed EMA to reduce jitter. Regime direction from EMA comparison gates which boundary acts as support or resistance, with initialization seeding arrays on the first bar to handle state persistence. No higher timeframe data is used, so all logic runs on the chart's native bars without lookahead.
Parameter Guide
EMA Pair — Selects preset lengths for fast and slow EMAs, influencing regime sensitivity and midline stability. Default: "21/55". Trade-offs/Tips: Faster pairs like "9/21" increase cross frequency for scalping but raise false signals; slower like "50/200" smooths for swings, potentially missing early turns. Use Manual for fine control.
Manual Fast — Sets fast EMA length when Manual mode is active; shorter values make regime switches quicker. Default: 21. Trade-offs/Tips: Lower than 10 risks over-reactivity; pair with slow at least double for clear separation.
Manual Slow — Sets slow EMA length when Manual mode is active; longer values anchor the midline more firmly. Default: 55. Trade-offs/Tips: Above 100 adds lag in trends; balance with fast to avoid perpetual neutrality.
ATR Lengths (comma-separated) — Defines candidate periods for ATR smoothing; more options allow finer auto-selection. Default: "7,10,14,21,28,35". Trade-offs/Tips: Fewer candidates speed computation but may miss optimal fits; keep under 10 for efficiency.
Containment Window — Number of recent bars the hull must fully enclose highs/lows of; larger windows favor stability. Default: 50. Trade-offs/Tips: Shorter (under 20) adapts faster to breaks but increases breach risk; longer smooths but delays response.
Min Multiplier Floor — Lowest allowed multiplier for hull width; prevents overly tight bands in low volatility. Default: 0.5. Trade-offs/Tips: Raise to 0.75 for conservative enclosures; too low allows pinches that flip easily.
Max Multiplier Cap — Highest allowed multiplier; caps expansion in spikes to avoid wide, lagging bands. Default: 1.0. Trade-offs/Tips: Lower to 0.75 tightens overall; higher permits more room but risks detachment from price.
Padding (+) — Adds buffer to the auto-multiplier for safer containment without exact touches. Default: 0.05. Trade-offs/Tips: Increase to 0.10 in gappy markets; minimal values hug closer but may still breach on outliers.
Fill Between (Mid ↔ Supertrend) — Toggles shaded area between midline and active hull for trend visualization. Default: true. Trade-offs/Tips: Disable for cleaner charts; pairs well with transparency tweaks.
Base Fill Transparency (0..100) — Sets default opacity of fills; higher values make them subtler. Default: 80. Trade-offs/Tips: Under 50 overwhelms price action; adjust with darken boost for emphasis.
Darken on Trend Change — Enables temporary opacity increase after regime shifts to spotlight transitions. Default: true. Trade-offs/Tips: Off for steady visuals; on aids spotting reversals in real-time.
Darken Fade Bars — Duration in bars for the darken effect to ramp back to base; longer prolongs highlight. Default: 8. Trade-offs/Tips: Shorter (4-6) for fast-paced charts; longer holds attention on changes.
Darken Boost at Change (Δ transp) — Intensity of opacity reduction at crossover; higher values make shifts more prominent. Default: 50. Trade-offs/Tips: Cap at 70 to avoid blackout; tune down if fades obscure details.
Show Supertrend Line — Displays the active hull boundary as a line. Default: true. Trade-offs/Tips: Hide for fill-only views; linewidth fixed at 3 for visibility.
Show EMA Cross Markers — Places circles and labels at crossover points for entry cues. Default: true. Trade-offs/Tips: Disable in clutter; labels show "Buy"/"Sell" at absolute positions.
Alert: EMA Cross Up (Long) — Triggers notification on bullish crossover. Default: true. Trade-offs/Tips: Pair with filters; once-per-bar frequency.
Alert: EMA Cross Down (Short) — Triggers notification on bearish crossover. Default: true. Trade-offs/Tips: Use for exits; ensure broker integration.
Show Debug — Reveals internal diagnostics like selected ATR details (if implemented). Default: false. Trade-offs/Tips: Enable for troubleshooting selections; minimal overhead.
Reading & Interpretation
Bullish regime shows a green line below price as support, with upward fill from midline; bearish uses red line above as resistance, downward fill. Crossovers flip the active boundary, marked by tiny green/red circles and "Buy"/"Sell" labels at the hull level. Fills start at base transparency but darken sharply at changes, fading over the specified bars to signal fresh momentum. If the hull rarely breaches during trends, containment is effective; frequent touches without flips indicate tight adaptation. Debug mode (when enabled) overlays text or plots for selected length and multiplier, helping verify auto-choices.
Practical Workflows & Combinations
- Trend following: Enter long on green "Buy" label above prior low structure; confirm with higher high. Trail stops along the green hull line, tightening as fills stabilize post-fade.
- Exits/Stops: Conservative exit on opposite crossover or hull breach; aggressive hold until fade completes if volume supports. Use darken boost as a volatility cue—high delta suggests waiting for confirmation.
- Multi-asset/Multi-TF: Defaults suit forex/stocks on 15m-4h; for crypto, widen containment to 75 for gaps. Layer on volume oscillator for cross filters; avoid on low-liquidity assets where ATR candidates skew.
Behavior, Constraints & Performance
Closed-bar logic ensures signals confirm at bar end, with live bars updating hull adaptively but no repaints since no future data or security calls are used. Arrays persist ATR states across bars, initialized once with candidates parsed from string. Small fixed loops (over 6 lengths max, inner up to 50) run per bar, capped by max_bars_back=500 for history needs. Resources stay low with 500 labels/lines limits, but dense charts may hit on markers. Known limits include initial lag until containment history builds (50+ bars), potential wide bands on gaps, and suboptimal selections if candidates omit ideal lengths.
Sensible Defaults & Quick Tuning
Start with "21/55" pair, 50-window, 0.5-1.0 multipliers, and 80% transparency for balanced responsiveness on daily charts. For too many flips, raise min floor to 0.75 or add lengths like "42"; for sluggishness, shorten window to 30 or pick faster pair. In high-vol environments, boost padding to 0.10; for smoother visuals, extend fade bars to 12.
What this indicator is—and isn’t
This is a visualization and signal layer for trend regime and adaptive boundaries, aiding entry/exit timing in directional markets. It is not a standalone system—pair with price structure, risk sizing, and broader context. Not predictive of turns, just reactive to containment and crosses.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
Happy trading
Chervolino
Buscar en scripts para "bar"
Squeeze Hour Frequency [CHE]Squeeze Hour Frequency (ATR-PR) — Standalone — Tracks daily squeeze occurrences by hour to reveal time-based volatility patterns
Summary
This indicator identifies periods of unusually low volatility, defined as squeezes, and tallies their frequency across each hour of the day over historical trading sessions. By aggregating counts into a sortable table, it helps users spot hours prone to these conditions, enabling better scheduling of trading activity to avoid or target specific intraday regimes. Signals gain robustness through percentile-based detection that adapts to recent volatility history, differing from fixed-threshold methods by focusing on relative lowness rather than absolute levels, which reduces false positives in varying market environments.
Motivation: Why this design?
Traders often face uneven intraday volatility, with certain hours showing clustered low-activity phases that precede or follow breakouts, leading to mistimed entries or overlooked calm periods. The core idea of hourly squeeze frequency addresses this by binning low-volatility events into 24 hourly slots and counting distinct daily occurrences, providing a historical profile of when squeezes cluster. This reveals time-of-day biases without relying on real-time alerts, allowing proactive adjustments to session focus.
What’s different vs. standard approaches?
- Reference baseline: Classical volatility tools like simple moving average crossovers or fixed ATR thresholds, which flag squeezes uniformly across the day.
- Architecture differences:
- Uses persistent arrays to track one squeeze per hour per day, preventing overcounting within sessions.
- Employs custom sorting on ratio arrays for dynamic table display, prioritizing top or bottom performers.
- Handles timezones explicitly to ensure consistent binning across global assets.
- Practical effect: Charts show a persistent table ranking hours by squeeze share, making intraday patterns immediately visible—such as a top hour capturing over 20 percent of total events—unlike static overlays that ignore temporal distribution, which matters for avoiding low-liquidity traps in crypto or forex.
How it works (technical)
The indicator first computes a rolling volatility measure over a specified lookback period. It then derives a relative ranking of the current value against recent history within a window of bars. A squeeze is flagged when this ranking falls below a user-defined cutoff, indicating the value is among the lowest in the recent sample.
On each bar, the local hour is extracted using the selected timezone. If a squeeze occurs and the bar has price data, the count for that hour increments only if no prior mark exists for the current day, using a persistent array to store the last marked day per hour. This ensures one tally per unique trading day per slot.
At the final bar, arrays compile counts and ratios for all 24 hours, where the ratio represents each hour's share of total squeezes observed. These are sorted ascending or descending based on display mode, and the top or bottom subset populates the table. Background shading highlights live squeezes in red for visual confirmation. Initialization uses zero-filled arrays for counts and negative seeds for day tracking, with state persisting across bars via variable declarations.
No higher timeframe data is pulled, so there is no repaint risk from external fetches; all logic runs on confirmed bars.
Parameter Guide
ATR Length — Controls the lookback for the volatility measure, influencing sensitivity to short-term fluctuations; shorter values increase responsiveness but add noise, longer ones smooth for stability — Default: 14 — Trade-offs/Tips: Use 10-20 for intraday charts to balance quick detection with fewer false squeezes; test on historical data to avoid over-smoothing in trending markets.
Percentile Window (bars) — Sets the history depth for ranking the current volatility value, affecting how "low" is defined relative to past; wider windows emphasize long-term norms — Default: 252 — Trade-offs/Tips: 100-300 bars suit daily cycles; narrower for fast assets like crypto to catch recent regimes, but risks instability in sparse data.
Squeeze threshold (PR < x) — Defines the cutoff for flagging low relative volatility, where values below this mark a squeeze; lower thresholds tighten detection for rarer events — Default: 10.0 — Trade-offs/Tips: 5-15 percent for conservative signals reducing false positives; raise to 20 for more frequent highlights in high-vol environments, monitoring for increased noise.
Timezone — Specifies the reference for hourly binning, ensuring alignment with market sessions — Default: Exchange — Trade-offs/Tips: Set to "America/New_York" for US assets; mismatches can skew counts, so verify against chart timezone.
Show Table — Toggles the results display, essential for reviewing frequencies — Default: true — Trade-offs/Tips: Disable on mobile for performance; pair with position tweaks for clean overlays.
Pos — Places the table on the chart pane — Default: Top Right — Trade-offs/Tips: Bottom Left avoids candle occlusion on volatile charts.
Font — Adjusts text readability in the table — Default: normal — Trade-offs/Tips: Tiny for dense views, large for emphasis on key hours.
Dark — Applies high-contrast colors for visibility — Default: true — Trade-offs/Tips: Toggle false in light themes to prevent washout.
Display — Filters table rows to focus on extremes or full list — Default: All — Trade-offs/Tips: Top 3 for quick scans of risky hours; Bottom 3 highlights safe low-squeeze periods.
Reading & Interpretation
Red background shading appears on bars meeting the squeeze condition, signaling current low relative volatility. The table lists hours as "H0" to "H23", with columns for daily squeeze counts, percentage share of total squeezes (summing to 100 percent across hours), and an arrow marker on the top hour. A summary row above details the peak count, its share, and the leading hour. A label at the last bar recaps total days observed, data-valid days, and top hour stats. Rising shares indicate clustering, suggesting regime persistence in that slot.
Practical Workflows & Combinations
- Trend following: Scan for hours with low squeeze shares to enter during stable regimes; confirm with higher highs or lower lows on the 15-minute chart, avoiding top-share hours post-news like tariff announcements.
- Exits/Stops: Tighten stops in high-share hours to guard against sudden vol spikes; use the table to shift to conservative sizing outside peak squeeze times.
- Multi-asset/Multi-TF: Defaults work across crypto pairs on 5-60 minute timeframes; for stocks, widen percentile window to 500 bars. Combine with volume oscillators—enter only if squeeze count is below average for the asset.
Behavior, Constraints & Performance
Logic executes on closed bars, with live bars updating counts provisionally but finalizing on confirmation; table refreshes only at the last bar, avoiding intrabar flicker. No security calls or higher timeframes, so no repaint from external data. Resources include a 5000-bar history limit, loops up to 24 iterations for sorting and totals, and arrays sized to 24 elements; labels and table are capped at 500 each for efficiency. Known limits: Skips hours without bars (e.g., weekends), assumes uniform data availability, and may undercount in sparse sessions; timezone shifts can alter profiles without warning.
Sensible Defaults & Quick Tuning
Start with ATR Length at 14, Percentile Window at 252, and threshold at 10.0 for broad crypto use. If too many squeezes flag (noisy table), raise threshold to 15.0 and narrow window to 100 for stricter relative lowness. For sluggish detection in calm markets, drop ATR Length to 10 and threshold to 5.0 to capture subtler dips. In high-vol assets, widen window to 500 and threshold to 20.0 for stability.
What this indicator is—and isn’t
This is a historical frequency tracker and visualization layer for intraday volatility patterns, best as a filter in multi-tool setups. It is not a standalone signal generator, predictive model, or risk manager—pair it with price action, news filters, and position sizing rules.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
Best regards and happy trading
Chervolino
Thanks to Duyck
for the ma sorter
三维资金流向(多色版)1️⃣ Colors Correspond to Capital Flow
Based on your multi-color logic:
Green bars → BTC-only inflow
Blue bars → Major altcoins-only inflow
Yellow bars → BTC + major altcoins inflow simultaneously
Red bars → USDT inflow (risk-off / capital retreat)
On the chart, you can observe:
Red bars densely appearing → BTC and alt prices often consolidate or decline, indicating market funds are retreating to safety.
Green bars concentrated → BTC is generally in an uptrend, indicating capital is mainly flowing into BTC.
Blue bars appearing → Major altcoins may rise while BTC is flat, showing that altcoins are absorbing funds.
Yellow bars appearing → BTC and altcoins rise together, usually signaling an overall bullish market.
2️⃣ Observed Patterns
Capital flow vs price movement:
Green + Yellow bars concentrated → BTC shows clear upward movement
Blue bars concentrated → Altcoins rise noticeably
Red bars → Both BTC and altcoins may decline or consolidate
Capital rotation phenomenon:
Red → Green → Yellow → Blue → Can be seen as a rotation of USDT → BTC → BTC+Alt → Alt
This indicates that at different stages, the market rotates between risk-off, major assets, and altcoins.
Volatility:
Tall, frequently alternating bars → Market volatility is high
Short bars → Capital flow is weak, market tends to move sideways
Daytrade Forex Scalper TwinPulse Auction Timer IndicatorWhat this indicator is
TwinPulse Auction Timer is a multi component execution aid designed for liquid markets. It looks for two families of opportunities
Breakouts that leave a compression area after a fresh sweep
Reversals that trigger after a sweep with strong wick polarity
It does not try to predict future prices. It measures present auction conditions with transparent rules and shows you when those conditions align. You get a simple table that says LONG SHORT or WAIT, optional session shading, clean entry and exit level visuals, and alerts you can wire to your workflow.
Why it is different
Most tools show a single signal. TwinPulse combines several independent signals into an Edge Score that you can tune. The components are
• Pulse. A signed measure of wick asymmetry with candle body direction
• Compression. Current true range compared with an average range
• Sweep timer. Bars elapsed since the most recent sweep of a prior high or low
• Bias. Direction of a higher timeframe candle
• Regime. Efficiency ratio and the relation of micro to macro volatility
• Location. Distance from the daily anchored VWAP
• Session. London and New York filter by time windows
Each component is visible in the inputs and in the table so you can understand why a suggestion appears. The script uses request.security() with lookahead off in all calls so it does not peek into the future. Shapes may move while a bar is open since price is still forming. They stop moving when the bar closes.
What you will see on the chart
• L and S shapes on entry bars
• An Exit shape at the price where a stop or the runner target would have been hit
• Four horizontal lines while a trade is active
Entry
Stop
TP1 at one R
TP2 at the runner target expressed in R
• Labels anchored to each line so you can instantly read Entry SL TP1 and TP2 with current values
• Optional shading during your session windows
• Optional daily VWAP line
The table in the top right shows
Action LONG SHORT IN LONG IN SHORT or WAIT
Session ON or OFF
Bias UP DOWN or FLAT
Pulse value
Compression value
Edge L percent and Edge S percent
How it works in detail
Pulse
For each bar the script measures up wick minus down wick divided by range and multiplies that by the sign of the candle body. The result is averaged with pulse_len. Positive numbers indicate aggressive buying. Negative numbers indicate aggressive selling. You control the minimum absolute value with pulse_thr.
Compression
Compression is the ratio of current range to an average range. You can choose the range basis. HL SMA uses simple high minus low smoothed by range_len. ATR uses classic True Range smoothed by atr_len. Values below comp_thr indicate a coil.
Sweeps and the timer
A sweep occurs when price trades beyond the highest high or lowest low seen in the previous sweep_len bars. A strict sweep requires a close back inside that prior range. The timer measures how many bars have elapsed since the last sweep. Breakout setups require the timer to exceed timer_thr.
Bias on a confirmation timeframe
A higher timeframe candle is read with confirm_tf. If close is above open bias is UP. If close is below open bias is DOWN. This keeps breakouts aligned with the prevailing drift.
Regime filters
Efficiency ratio measures the straight line change over the sum of absolute bar to bar changes over er_len. It rises in trendy conditions and falls in noise. Minimum efficiency is controlled by er_min.
Micro to macro volatility ratio compares a short lookback average range with a longer lookback average range using your chosen basis. For breakouts you usually want micro volatility to be near or above macro hence mvr_min. For reversals you often want micro volatility that is not overheated relative to macro hence mvr_max_rev.
VWAP distance gate
Daily anchored VWAP is rebuilt from the open of each session. The script computes the absolute distance from VWAP in units of your average range and requires that distance to exceed vwap_dist_thr when use_vwap_gate is true. This keeps entries away from the mean.
Edge Score
Each gate contributes a weight that you control. The script sums weights of the satisfied gates and divides by the sum of all weights to produce an Edge percent for long and an Edge percent for short. You can then require a minimum Edge percent using edge_min_pct. This turns the indicator into a step by step checklist that you can tune to your taste.
Using the indicator step by step
Choose markets and timeframes
The logic is designed for liquid instruments. Major currency pairs, index futures and cash index CFDs, and the most liquid crypto pairs work well. On intraday use one to fifteen minutes for signals and fifteen to sixty minutes for confirmation. On swing use one hour to one day for signals and one day for confirmation.
Decide on entry mode
Breakouts require a compression area and a sweep timer. Reversals require a strict sweep and a strong pulse. If you are unsure leave the default which allows both.
Pick a range basis
For FX and crypto HL SMA is often stable. For indices and single name equities with gaps ATR can adapt better. If results look too reactive increase the window. If results are too slow reduce it.
Tune regime filters
If you trade trend continuation raise er_min and mvr_min. If you trade counter rotation lower them and rely on the reversal path with the strict sweep condition.
Set the VWAP gate
Enabling it helps you avoid entries at the mean. Push the threshold higher on range bound days. Reduce it in strong trend days.
Table driven decision
Watch Action and the Edge percents. If the script says WAIT you can read Pulse and Compression to see what is missing. Often the best trades appear when both Edge percents are well separated and your session switch is ON.
Use the visuals
When a suggestion triggers you will see entry stop and targets. You can mirror the levels in your own workflow or use alerts.
Consider bar close
Signals are computed in real time. For a strict process you can wait until the bar closes to reduce noise.
Inputs explained with quick guidance
Setup
Signal TF chooses where the logic is computed. Leave blank to use the chart.
Confirm TF sets the higher timeframe for bias.
Session filter restricts signals to the London and New York windows you specify.
Invert flips long and short. It is useful on inverse instruments.
Logic options
Entry mode allows Breakouts Reversals or Both.
Average range basis selects HL SMA or ATR.
ATR length is used when ATR is selected.
Pulse source can be Regular OHLC or Heikin Ashi. Heikin Ashi smooths noisy series, but the script still runs on regular bars and you should publish and use it on standard candles to respect the platform guidance.
Core numeric settings
Sweep lookback controls the size of the liquidity pool targeted by the sweep condition.
Pulse window smooths the wick polarity measure.
Average range window controls your base range when you use HL SMA.
Pulse threshold sets the minimum polarity required.
Compression threshold sets the maximum current range relative to average to consider the market coiled.
Expansion timer bars sets how much time has passed since the last sweep before you allow a breakout.
Regime filters
Efficiency ratio length and minimum value keep you out of aimless drift.
Micro and Macro range lengths feed the micro to macro ratio.
Minimum micro to macro for breakouts and maximum micro to macro for reversals steer the two entry families.
VWAP gate and distance threshold keep you away from the mean.
Levels and trade management visuals
Runner target in R sets TP2 as a multiple of initial risk.
Stop distance as average range multiple sets initial risk size for the visuals.
Move stop to entry after one R touch turns on break even logic once price has traveled one risk unit.
Trail buffer as R fraction uses the last sweep as an anchor and keeps a dynamic stop at a chosen fraction of R beyond it.
Cooldown after exit prevents immediate re entries.
Edge Score
Weights for pulse compression timer bias efficiency ratio micro to macro VWAP gate and session let you align the checklist with your style.
Minimum Edge percent to suggest applies a final filter to LONG or SHORT suggestions.
UI
Table and markers switch the compact dashboard and the shapes.
TP and SL lines and labels draw and name each level.
TP1 partial label percent is printed in the TP1 label for clarity.
Session shading helps with focus.
Daily VWAP line is optional.
Alerts
The script provides alerts for Long Short Exit and for Edge percent crossing the threshold on either side. Use them to drive notifications or to sync with webhooks and your broker integration. Alerts trigger in real time and will repaint during a bar. For conservative use trigger on bar close.
Recommended presets
Intraday trend continuation
Confirm TF fifteen minutes
Entry mode Breakouts
Range basis HL SMA
Pulse threshold near 0.10
Compression threshold near 0.60
Timer around 18
Minimum efficiency ratio near 0.20
Minimum micro to macro near 1.00
VWAP gate enabled with distance near 0.35
Edge minimum 50 or higher
Intraday mean reversion at sweeps
Entry mode Reversals
Pulse source Regular OHLC
Compression threshold can be a little higher
Maximum micro to macro near 1.60
Efficiency ratio minimum lower near 0.12
VWAP gate enabled
Edge minimum 40 to 60
Swing trend continuation
Signal TF one hour
Confirm TF one day
Range basis ATR
ATR length around 14
Average range window 20 to 30
Efficiency ratio minimum near 0.18
Micro to macro windows 12 and 60
Edge minimum 50 to 70
These are starting points only. Your instrument and timeframe will require small adjustments.
Limitations and honest warnings
No indicator is perfect. TwinPulse will mark attractive conditions that do not always lead to profitable trades. During economic releases or very thin liquidity the assumptions behind compression and sweeps may fail. In strong gap environments the HL SMA basis may lag while ATR may overreact. Heikin Ashi pulse can help in choppy markets but it will lag during sharp reversals. Session times use the exchange time of your chart. If you switch symbol or exchange verify the windows.
Edge percent is not a probability of profit. It is the fraction of satisfied gates with your chosen weights. Two traders can set different weights and see different Edge readings on the same bar. That is the design. The score is a guide that helps you act with discipline.
This indicator does not place orders or manage real risk. The lines and labels show a model entry a model stop and two model targets built from the average range at entry and from recent swing points. Use them as references and not as hard rules. Always test on historical data and demo first. Past results do not guarantee anything in the future.
Credits and originality
All code in this publication is original and written for this indicator. The concept of the efficiency ratio originates from Perry Kaufman. The use of a daily anchored volume weighted average price is a standard industry tool. The specific combination of pulse from wick polarity strict sweep timing compression and the tunable Edge Score is unique to this script at the time of publication. If you reuse parts of the open source code in your own work remember to credit the author and contribute meaningful improvements.
How to read the table at a glance
Action reflects your current state.
IN LONG or IN SHORT appears while a trade is active.
LONG or SHORT appears when conditions for entry are met and the Edge threshold is satisfied.
WAIT appears when at least one gate is missing.
Session shows ON during your chosen windows.
Bias shows the color of the confirmation candle.
Pulse is the smoothed polarity number.
Comp shows current range divided by the average range. Values below one mean compression.
Edge L percent and Edge S percent show the long and short checklists as percents.
Final thoughts
Markets move because orders accumulate at certain prices and at certain times. The indicator tries to measure two things that often matter at those turning points. One is the existence of a hidden imbalance revealed by wick polarity and by sweeps of prior extremes. The other is the presence of energy stored in a coil that can release in the direction of a drift. Neither force guarantees profit. Together they can improve your selection and your timing.
Use the defaults for a few days so you learn the personality of the signals. After that adjust one group at a time. Start with the session filter and the Edge threshold. Then tune compression and the timer. Finally adjust the regime filters. Keep notes. You will learn which weights matter for your market and timeframe. The result is a process you can apply with consistency.
Disclaimer
This script and description are for education and analysis. They are not investment advice and they do not promise future results. Use at your own risk. Test thoroughly on historical data and in simulation before considering any live use.
MULTI-CONDITION RSI SIGNAL GENERATOR═══════════════════════════════════════════════
MULTI-CONDITION RSI SIGNAL GENERATOR
═══════════════════════════════════════════════
OVERVIEW:
This indicator generates trading signals based on Relative Strength Index (RSI) movements with multiple confirmation layers designed to filter false signals and identify high-probability reversal opportunities.
═══════════════════════════════════════════════
WHAT MAKES THIS ORIGINAL:
═══════════════════════════════════════════════
Unlike basic RSI indicators that simply plot overbought/oversold crossovers, this system combines FOUR distinct confirmation mechanisms:
1. PERSISTENCE FILTERING - Requires RSI to remain in extreme zones for a minimum duration
2. LOOKBACK VALIDATION - Verifies recent extreme zone visits before signaling
3. DIVERGENCE DETECTION - Identifies price/RSI divergence for stronger signals
4. MOMENTUM CONFIRMATION - Provides trend-continuation entries via midline crosses
This multi-layered approach significantly reduces whipsaw trades that plague simple RSI crossover systems.
═══════════════════════════════════════════════
HOW IT WORKS (TECHNICAL METHODOLOGY):
═══════════════════════════════════════════════
STEP 1: RSI CALCULATION
- Standard RSI calculation using user-defined period (default: 14)
- Monitors two extreme zones: Overbought (default: 70) and Oversold (default: 30)
STEP 2: PERSISTENCE FILTERING
The script counts how many bars RSI has spent in extreme zones within the lookback period:
- For overbought signals: Counts bars where RSI > 70
- For oversold signals: Counts bars where RSI < 30
- Signal only triggers if count >= Minimum Duration (default: 4 bars)
This filters out brief spikes that immediately reverse, focusing on sustained extreme conditions that are more likely to lead to genuine reversals.
STEP 3: LOOKBACK VALIDATION
- Checks if RSI reached extreme zones within the Lookback Bars period (default: 20)
- Uses ta.highest() and ta.lowest() functions to verify recent extremes
- Ensures we're trading reversals from meaningful extremes, not random crossovers
STEP 4: BASIC SIGNAL GENERATION
- BUY SIGNAL: RSI crosses above the oversold level (30) after meeting persistence and lookback conditions
- SELL SIGNAL: RSI crosses below the overbought level (70) after meeting persistence and lookback conditions
STEP 5: DIVERGENCE DETECTION
The script identifies two types of divergence over the Divergence Lookback period (default: 5 bars):
A) BULLISH DIVERGENCE (indicates potential upward reversal):
- Price makes a lower low (current low < previous low)
- RSI makes a higher low (current RSI low > previous RSI low)
- Suggests weakening downward momentum
B) BEARISH DIVERGENCE (indicates potential downward reversal):
- Price makes a higher high (current high > previous high)
- RSI makes a lower high (current RSI high < previous RSI high)
- Suggests weakening upward momentum
STEP 6: STRONG SIGNAL CONFIRMATION
- STRONG BUY: Basic buy signal + bullish divergence present
- STRONG SELL: Basic sell signal + bearish divergence present
- These represent the highest-probability setups
STEP 7: MOMENTUM SIGNALS (OPTIONAL)
- MOMENTUM BUY: RSI crosses above 50 after being oversold (trend continuation)
- MOMENTUM SELL: RSI crosses below 50 after being overbought (trend continuation)
- Smaller signals for traders who want trend-following entries
═══════════════════════════════════════════════
SIGNAL TYPES AND VISUAL INDICATORS:
═══════════════════════════════════════════════
📈 GREEN TRIANGLE (below bar) - Standard Buy Signal
RSI crossed above oversold level with confirmation filters
📉 RED TRIANGLE (above bar) - Standard Sell Signal
RSI crossed below overbought level with confirmation filters
🔵 BLUE TRIANGLE (below bar) - Strong Buy Signal
Buy signal + bullish divergence (HIGHEST PRIORITY)
🟣 PURPLE TRIANGLE (above bar) - Strong Sell Signal
Sell signal + bearish divergence (HIGHEST PRIORITY)
🟢 GREEN CIRCLE (small) - Momentum Buy
RSI crosses above 50 after oversold conditions
🔴 RED CIRCLE (small) - Momentum Sell
RSI crosses below 50 after overbought conditions
BACKGROUND SHADING:
- Light red background: RSI currently overbought
- Light green background: RSI currently oversold
═══════════════════════════════════════════════
PARAMETER SETTINGS:
═══════════════════════════════════════════════
1. OVERBOUGHT LEVEL (default: 70, range: 50-90)
- Higher values = fewer but stronger overbought signals
- Lower values = more sensitive to overbought conditions
- Recommended: 70 for standard markets, 80 for crypto/volatile assets
2. OVERSOLD LEVEL (default: 30, range: 10-50)
- Lower values = fewer but stronger oversold signals
- Higher values = more sensitive to oversold conditions
- Recommended: 30 for standard markets, 20 for crypto/volatile assets
3. RSI PERIOD (default: 14, range: 2-50)
- Standard RSI calculation period
- Lower = more sensitive/faster signals
- Higher = smoother/slower signals
- Recommended: 14 (industry standard)
4. MINIMUM DURATION (default: 4, range: 1-20)
- Required bars in extreme zone before signal
- Higher values = fewer signals but better quality
- Lower values = more signals but more false positives
- Recommended: 3-5 for day trading, 5-10 for swing trading
5. LOOKBACK BARS (default: 20, range: 5-100)
- How far back to check for extreme zone visits
- Should match your typical trading timeframe
- Recommended: 20 for intraday, 50 for daily charts
6. DIVERGENCE LOOKBACK (default: 5, range: 2-20)
- Period for comparing price/RSI highs and lows
- Lower values = more frequent divergence signals
- Higher values = more significant divergences
- Recommended: 5-10 depending on timeframe
═══════════════════════════════════════════════
HOW TO USE THIS INDICATOR:
═══════════════════════════════════════════════
RECOMMENDED TRADING APPROACH:
1. PRIMARY ENTRIES: Focus on Strong Buy/Sell signals (blue/purple triangles)
- These have the highest win rate due to divergence confirmation
- Wait for price action confirmation (support/resistance, candlestick patterns)
2. SECONDARY ENTRIES: Regular Buy/Sell signals (green/red triangles)
- Use these when Strong signals are infrequent
- Require additional confirmation from other indicators or chart patterns
3. TREND CONTINUATION: Momentum signals (small circles)
- Best used when overall trend is clear
- Not recommended for reversal trading
4. FILTER TRADES: Use background shading as context
- Be cautious entering longs when background is red (overbought)
- Be cautious entering shorts when background is green (oversold)
RISK MANAGEMENT GUIDELINES:
- Never risk more than 2-5% of capital per trade
- Use stop losses below recent swing lows (buys) or above swing highs (sells)
- Target at least 1.5:1 reward-to-risk ratio
- Consider position sizing based on signal strength
TIMEFRAME RECOMMENDATIONS:
- 15min - 1hour: Day trading with adjusted parameters (lower minimum duration)
- 4hour - Daily: Swing trading with default parameters
- Weekly: Position trading with increased lookback periods
COMPLEMENTARY TOOLS:
This indicator works best when combined with:
- Support and resistance levels
- Trend indicators (moving averages, trend lines)
- Volume analysis
- Price action patterns (engulfing candles, pin bars)
═══════════════════════════════════════════════
LIMITATIONS AND CONSIDERATIONS:
═══════════════════════════════════════════════
- This is NOT a standalone trading system - requires additional analysis
- RSI-based strategies perform best in ranging/choppy markets
- May generate fewer signals in strong trending markets
- Divergence signals can be early - wait for price confirmation
- Not recommended for highly illiquid assets
- Backtest on your specific market before live trading
- No indicator is 100% accurate - always use proper risk management
═══════════════════════════════════════════════
TECHNICAL NOTES:
═══════════════════════════════════════════════
- Code is original and does not reuse external libraries
- Uses Pine Script v5 native functions only
- Alert conditions included for all signal types
- No repainting - signals appear and remain fixed
- Efficient calculation methods minimize processing load
═══════════════════════════════════════════════
ALERT SETUP:
═══════════════════════════════════════════════
Four alert conditions are available:
1. "Buy Alert" - Triggers on standard buy signals
2. "Sell Alert" - Triggers on standard sell signals
3. "Strong Buy Alert" - Triggers on divergence-confirmed buy signals
4. "Strong Sell Alert" - Triggers on divergence-confirmed sell signals
To set up alerts: Right-click chart → Add Alert → Select desired condition
═══════════════════════════════════════════════
This indicator is provided for educational and informational purposes. Always practice proper risk management and never trade with money you cannot afford to lose.
15-Min RSI Scalper [SwissAlgo]15-Min RSI Scalper
Tracks RSI Momentum Loss and Gain to Generate Signals
-------------------------------------------------------
WHAT THIS INDICATOR CALCULATES
This indicator attempts to identify RSI directional changes (RSI momentum) using a step-by-step "ladder" method. It reads RSI(14) from the next higher timeframe relative to your chart. On a 15-minute chart, it uses 1-hour RSI. On a 5-minute chart, it uses 15-minute RSI, and so on.
How the ladder logic works:
The indicator doesn't track RSI all the time. It only starts tracking when RSI crosses into potentially extreme territory (these are called "events" in the code):
For sell signals : when RSI crosses above a dynamic upper threshold (typically between 60-80, calculated as the 90th percentile of recent RSI)
For buy signals : when RSI crosses below a dynamic lower threshold (typically between 20-40, calculated as the 10th percentile of recent RSI)
Once tracking begins, RSI movement is divided into 2-point steps (boxes). The indicator counts how many boxes RSI climbs or falls.
A signal generates only when:
RSI reverses direction by at least 2 boxes (4 RSI points) from its extreme
RSI holds that reversal for 3 consecutive confirmed bars
Example: Dynamic threshold is at 68. RSI crosses above 68 → tracking starts. RSI climbs to 76 (4 boxes up). Then it drops back to 72 and stays below that level for 3 bars → sell signal prints. The buy signal works the same way in reverse.
-------------------------------------------------------
SIGNAL GENERATION METHODOLOGY
Sell Signal (Red Triangle)
RSI crosses above a dynamic start level (calculated as the 90th percentile of the last 1000 bars, constrained between 60-80)
Indicator tracks upward progression in 2-point boxes
RSI reverses and drops below a boundary 2 boxes below the highest box reached
RSI remains below that boundary for 3 confirmed bars
Red triangle plots above price
Reset condition: RSI returns below 50
Buy Signal (Green Triangle)
RSI crosses below a dynamic start level (10th percentile of last 1000 bars, constrained between 20-40)
Indicator tracks downward progression in 2-point boxes
RSI reverses and rises above a boundary 2 boxes above the lowest box reached
RSI remains above that boundary for 3 confirmed bars
Green triangle plots below price
Reset condition: RSI returns above 50
-------------------------------------------------------
TECHNICAL PARAMETERS
All parameters are hardcoded:
RSI Period: 14
Box Size: 2 RSI points
Reversal Threshold: 2 boxes (4 RSI points)
Confirmation Period: 3 bars
Reset Level: RSI 50
Sell Start Range: 60-80 (dynamic)
Buy Start Range: 20-40 (dynamic)
Lookback for Percentile: 1000 bars
Note: Since the code is open source, users can modify these hardcoded values directly in the script to adjust sensitivity. For example, increasing the confirmation period from 3 to 5 bars will produce fewer but more conservative signals. Decreasing the box size from 2 to 1 will make the indicator more responsive to smaller RSI movements.
-------------------------------------------------------
KEY FEATURES
Automatic Higher Timeframe RSI
When applied to a 15-minute chart, the indicator automatically reads 1-hour RSI data. This is the next standard timeframe above 15 minutes in the indicator's logic.
Dynamic Adaptive Start Levels
Sell signals use the 90th percentile of RSI over the last 1000 bars, constrained between 60-80. Buy signals use the 10th percentile, constrained between 20-40. These thresholds recalculate on each bar based on recent data.
Ladder Box System
RSI movements are tracked in 2-point boxes. The indicator requires a 2-box reversal followed by 3 consecutive bars maintaining that reversal before generating a signal.
Dual Signal Output
Red down-triangles plot above price when the sell signal conditions are met. Green up-triangles plot below the price when buy signal conditions are met.
-------------------------------------------------------
REPAINTING
This indicator does not repaint. All calculations use "barstate.isconfirmed" to ensure signals appear only on closed bars. The request.security() call uses lookahead=barmerge.lookahead_off to prevent forward-looking bias.
-------------------------------------------------------
INTENDED CHART TIMEFRAME
This indicator is designed for use on 15-minute charts. The visual reminder table at the top of the chart indicates this requirement.
On a 15-minute chart:
RSI data comes from the 1-hour timeframe
Signals reflect 1-hour momentum shifts
3-bar confirmation equals 45 minutes of price action
Using it on other timeframes will change the higher timeframe RSI source and may produce different behavior.
-------------------------------------------------------
WHAT THIS INDICATOR DOES NOT DO
Does not predict future price movements
Does not provide entry or exit advice
Does not guarantee profitable trades
Does not replace comprehensive technical analysis
Does not account for fundamental factors, news events, or market structure
Does not adapt to all market conditions equally
-------------------------------------------------------
EDUCATIONAL USE
This indicator demonstrates one approach to momentum reversal detection using:
Multi-timeframe analysis
Adaptive thresholds via percentile calculation
Step-wise momentum tracking
Multi-bar confirmation logic
It is designed as a technical study, not a trading system. Signals represent calculated conditions based on RSI behavior, not trade recommendations. Always do your own analysis before taking market positions.
-------------------------------------------------------
RISK DISCLOSURE
Trading involves substantial risk of loss. This indicator:
Is for educational and informational purposes only
Does not constitute financial, investment, or trading advice
Should not be used as the sole basis for trading decisions
Has not been tested across all market conditions
May produce false signals, late signals, or no signals in certain conditions
Past performance of any indicator does not predict future results. Users must conduct their own analysis and risk assessment before making trading decisions. Always use proper risk management, including stop losses and position sizing appropriate to your account and risk tolerance.
MIT LICENSE
This code is open source and provided as-is without warranties of any kind. You may use, modify, and distribute it freely under the MIT License.
Microgaps (plots-only, 4-channel, same-day only)Purpose:
This indicator visually highlights 3-bar price gaps on your chart, showing clear visual structure for gap zones without lag or diagonal artifacts.
It draws two outer lines (top and bottom of the gap) for every valid 3-bar gap, and optionally a midline when the gap is considered “large.”
⚙️ How it works
A bull gap is detected when the current bar’s low is higher than the high from two bars ago (low > high ).
A bear gap is detected when the current bar’s high is lower than the low from two bars ago (high < low ).
The lines are centered at the middle bar of the 3-bar sequence.
Gaps are only drawn within the same trading day to avoid false overnight gaps.
To prevent overlapping artifacts, up to four concurrent gap channels can be drawn efficiently using GPU-friendly plot() lines.
🔵 Midline logic
The midline (center of the gap) is only displayed when the gap’s vertical size is “large” relative to recent volatility.
“Large” means the gap height is greater than a user-defined fraction of the average bar range over the past N bars.
Example: if the average 8-bar range = 2 points, and the threshold = 0.3, then only gaps larger than 0.6 points will show the midline.
🧩 Parameters
Setting Description
Bull Gap Color / Width Style of bullish gaps (top and bottom lines).
Bear Gap Color / Width Style of bearish gaps (top and bottom lines).
Mid Gap Color / Width Style of the optional midline (shown only when “large”).
Large Gap — Lookback (bars) Number of bars used to calculate the average range (default: 8).
Large Gap — Size vs Avg Range Fraction of the average range that defines a “large” gap (default: 0.5). Set lower (e.g. 0.3) to show more midlines.
💡 Tips
Set threshold lower (0.2–0.4) for more midlines, higher (0.6–1.0) to highlight only extreme gaps.
Works best on intraday timeframes (1-min to 30-min).
Fully GPU-efficient — can scroll back thousands of bars without lag.
SuperTrend Optimizer Remastered[CHE] SuperTrend Optimizer Remastered — Grid-ranked SuperTrend with additive or multiplicative scoring
Summary
This indicator evaluates a fixed grid of one hundred and two SuperTrend parameter pairs and ranks them by a simple flip-to-flip return model. It auto-selects the currently best-scoring combination and renders its SuperTrend in real time, with optional gradient coloring for faster visual parsing. The original concept is by KioseffTrading Thanks a lot for it.
For years I wanted to shorten the roughly two thousand three hundred seventy-one lines; I have now reduced the core to about three hundred eighty lines without triggering script errors. The simplification is generalizable to other indicators. A multiplicative return mode was added alongside the existing additive aggregation, enabling different rankings and often more realistic compounding behavior.
Motivation: Why this design?
SuperTrend is sensitive to its factor and period. Picking a single pair statically can underperform across regimes. This design sweeps a compact parameter grid around user-defined lower bounds, measures flip-to-flip outcomes, and promotes the combination with the strongest cumulative return. The approach keeps the visual footprint familiar while removing manual trial-and-error. The multiplicative mode captures compounding effects; the additive mode remains available for linear aggregation.
Originally (by KioseffTrading)
Very long script (~2,371 lines), monolithic structure.
SuperTrend optimization with additive (cumulative percentage-sum) scoring only.
Heavier use of repetitive code; limited modularity and fewer UI conveniences.
No explicit multiplicative compounding option; rankings did not reflect sequence-sensitive equity growth.
Now (remastered by CHE)
Compact core (~380 lines) with the same functional intent, no compile errors.
Adds multiplicative (compounding) scoring alongside additive, changing rankings to reflect real equity paths and penalize drawdown sequences.
Fixed 34×3 grid sweep, live ranking, gradient-based bar/wick/line visuals, top-table display, and an optional override plot.
Cleaner arrays/state handling, last-bar table updates, and reusable simplification pattern that can be applied to other indicators.
What’s different vs. standard approaches?
Baseline: A single SuperTrend with hand-picked inputs.
Architecture differences:
Fixed grid of thirty-four factor offsets across three ATR offsets.
Per-combination flip-to-flip backtest with additive or multiplicative aggregation.
Live ranking with optional “Best” or “Worst” table output.
Gradient bar, wick, and line coloring driven by consecutive trend counts.
Optional override plot to force a specific SuperTrend independent of ranking.
Practical effect: Charts show the currently best-scoring SuperTrend, not a static choice, plus an on-chart table of top performers for transparency.
How it works (technical)
For each parameter pair, the script computes SuperTrend value and direction. It monitors direction transitions and treats a change from up to down as a long entry and the reverse as an exit, measuring the move between entry and exit using close prices. Results are aggregated per pair either by summing percentage changes or by compounding return factors and then converting to percent for comparison. On the last bar, open trades are included as unrealized contributions to ranking. The best combination’s line is plotted, with separate styling for up and down regimes. Consecutive regime counts are normalized within a rolling window and mapped to gradients for bars, wicks, and lines. A two-column table reports the best or worst performers, with an optional row describing the parameter sweep.
Parameter Guide
Factor (Lower Bound) — Starting SuperTrend factor; the grid adds offsets between zero and three point three. Default three point zero. Higher raises distance to price and reduces flips.
ATR Period (Lower Bound) — Starting ATR length; the grid adds zero, one, and two. Default ten. Longer reduces noise at the cost of responsiveness.
Best vs Worst — Ranks by top or bottom cumulative return. Default Best. Use Worst for stress tests.
Calculation Mode — Additive sums percents; Multiplicative compounds returns. Multiplicative is closer to equity growth and can change the leaderboard.
Show in Table — “Top Three” or “All”. Fewer rows keep charts clean.
Show “Parameters Tested” Label — Displays the effective sweep ranges for auditability.
Plot Override SuperTrend — If enabled, the override factor and ATR are plotted instead of the ranked winner.
Override Factor / ATR Period — Values used when override is on.
Light Mode (for Table) — Adjusts table colors for bright charts.
Gradient/Coloring controls — Toggles for gradient bars and wick coloring, window length for normalization, gamma for contrast, and transparency settings. Use these to emphasize or tone down visual intensity.
Table Position and Text Size — Places the table and sets typography.
Reading & Interpretation
The auto SuperTrend plots one line for up regimes and one for down regimes. Color intensity reflects consecutive trend persistence within the chosen window. A small square at the bottom encodes the same gradient as a compact status channel. Optional wick coloring uses the same gradient for maximum contrast. The performance table lists parameter pairs and their cumulative return under the chosen aggregation; positive values are tinted with the up color, negative with the down color. “Long” labels mark flips that open a long in the simplified model.
Practical Workflows & Combinations
Trend following: Use the auto line as your primary bias. Enter on flips aligned with structure such as higher highs and higher lows. Filter with higher-timeframe trend or volatility contraction.
Exits/Stops: Consider conservative exits when color intensity fades or when the opposite line is approached. Aggressive traders can trail near the plotted line.
Override mode: When you want stability across instruments, enable override and standardize factor and ATR; keep the table visible for sanity checks.
Multi-asset/Multi-TF: Defaults travel well on liquid instruments and intraday to daily timeframes. Heavier assets may prefer larger lower bounds or multiplicative mode.
Behavior, Constraints & Performance
Repaint/confirmation: Signals are based on SuperTrend direction; confirmation is best assessed on closed bars to avoid mid-bar oscillation. No higher-timeframe requests are used.
Resources: One hundred and two SuperTrend evaluations per bar, arrays for state, and a last-bar table render. This is efficient for the grid size but avoid stacking many instances.
Known limits: The flip model ignores costs, slippage, and short exposure. Rapid whipsaws can degrade both aggregation modes. Gradients are cosmetic and do not change logic.
Sensible Defaults & Quick Tuning
Start with the provided lower bounds and “Top Three” table.
Too many flips → raise the lower bound factor or period.
Too sluggish → lower the bounds or switch to additive mode.
Rankings feel unstable → prefer multiplicative mode and extend the normalization window.
Visuals too strong → increase gradient transparency or disable wick coloring.
What this indicator is—and isn’t
This is a parameter-sweep and visualization layer for SuperTrend selection. It is not a complete trading system, not predictive, and does not include position sizing, transaction costs, or risk management. Combine with market structure, higher-timeframe context, and explicit risk controls.
Attribution and refactor note: The original work is by KioseffTrading. The script has been refactored from approximately two thousand three hundred seventy-one lines to about three hundred eighty core lines, retaining behavior without compiler errors. The general simplification pattern is reusable for other indicators.
Metadata
Name/Tag: SuperTrend Optimizer Remastered
Pine version: v6
Overlay or separate pane: true (overlay)
Core idea/principle: Grid-based SuperTrend selection by cumulative flip returns with additive or multiplicative aggregation.
Primary outputs/signals: Auto-selected SuperTrend up and down lines, optional override lines, gradient bar and wick colors, “Long” labels, performance table.
Inputs with defaults: See Parameter Guide above.
Metrics/functions used: SuperTrend, ATR, arrays, barstate checks, windowed normalization, gamma-based contrast adjustment, table API, gradient utilities.
Special techniques: Fixed grid sweep, compounding vs linear aggregation, last-bar UI updates, gradient encoding of persistence.
Performance/constraints: One hundred and two SuperTrend calls, arrays of length one hundred and two, label budget, last-bar table updates, no higher-timeframe requests.
Recommended use-cases/workflows: Trend bias selection, quick parameter audits, override standardization across assets.
Compatibility/assets/timeframes: Standard OHLC charts across intraday to daily; liquid instruments recommended.
Limitations/risks: Costs and slippage omitted; mid-bar instability possible; not suitable for synthetic chart types.
Debug/diagnostics: Ranking table, optional tested-range label; internal counters for consecutive trends.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
Best regards and happy trading
Chervolino
Candle count, with simple numberWhat it does
Counts the length of same-color candle streaks (consecutive bullish or bearish bars) and prints the running number above each bar:
e.g., “1, 2, 3…”; when color flips, it restarts at “1”.
Prime numbers (2, 3, 5, 7, 11, 13) are emphasized by rendering one size step larger and with a user-selected color.
Labels are pinned to each bar (anchored by bar index and price), so they do not drift when you pan or zoom the chart.
How it works
Determines candle direction: bullish if close > open, bearish if close < open.
If the current bar has the same direction as the previous bar, the counter increments; otherwise it resets to 1.
For values 2, 3, 5, 7, 11, 13 the number is highlighted (bigger + custom color).
Each number is drawn just above the bar’s High with a configurable offset.
The script does not repaint on history. During the live bar, the number updates in real time (as expected).
Settings
Digits size — Base text size (Tiny / Small / Normal / Large / Huge).
Prime numbers are automatically shown one step larger than the base size.
Offset above bar (ticks) — Vertical offset from the bar’s High, in instrument ticks.
Prime numbers color — Text color used specifically for prime numbers (non-prime digits are white).
How to read & use it
Rising momentum. Long streaks (e.g., 5–7+) suggest strong directional moves with few pullbacks.
Early pause/mean-reversion hints. After a long streak, the appearance of the opposite color (counter resets to “1”) often coincides with a pause or minor retrace.
Research & statistics. Quickly see which streak lengths are common on your market/timeframe (e.g., “How often do 3–5 bar runs occur?”).
Trade management. You can tie partial exits to specific streak lengths (2, 3, 5…) or reduce risk when the counter flips back to “1”.
Why it’s useful
Provides a clean, numeric view of momentum with zero smoothing or lag.
Works on any symbol and timeframe.
Prime-number emphasis makes important counts pop at a glance.
Pinned labels stay exactly above their bars, ensuring stable, readable visuals at any zoom level.
Notes
Doji bars (close == open) are treated as no direction and reset the streak.
This is a context tool, not a standalone buy/sell signal. Combine it with your entry/exit framework.
Very dense charts may hit platform label limits; the script raises the limit, but extremely long histories on very low timeframes can still be heavy.
Smart Money Support/Resistance - LiteSmart Money Support/Resistance — Lite
Overview & Methodology
This indicator identifies support and resistance as zones derived from concentrated buying and selling pressure, rather than relying solely on traditional swing highs/lows. Its design focuses on transparency: how data is sourced, how zones are computed, and how the on‑chart display should be interpreted.
Lower‑Timeframe (LTF) Data
The script requests Up Volume, Down Volume, and Volume Delta from a lower timeframe to expose intrabar order‑flow structure that the chart’s native timeframe cannot show. In practical terms, this lets you see where buyers or sellers briefly dominated inside the body of a higher‑timeframe bar.
bool use_custom_tf_input = input.bool(true, title="Use custom lower timeframe", tooltip="Override the automatically chosen lower timeframe for volume calculations.", group=grpVolume)
string custom_tf_input = input. Timeframe("1", title="Lower timeframe", tooltip="Lower timeframe used for up/down volume calculations (default 5 seconds).", group=grpVolume)
import TradingView/ta/10 as tvta
resolve_lower_tf(useCustom, customTF) =>
useCustom ? customTF :
timeframe.isseconds ? "1S" :
timeframe.isintraday ? "1" :
timeframe.isdaily ? "5" : "60"
get_up_down_volume(lowerTf) =>
= tvta.requestUpAndDownVolume(lowerTf)
var float upVolume = na
var float downVolume = na
var float deltaVolume = na
string lower_tf = resolve_lower_tf(use_custom_tf_input, custom_tf_input)
= get_up_down_volume(lower_tf)
upVolume := u_tmp
downVolume := d_tmp
deltaVolume := dl_tmp
• Data source: TradingView’s ta.requestUpAndDownVolume(lowerTf) via the official TA library.
• Plan capabilities: higher‑tier subscriptions unlock seconds‑based charts and allow more historical bars per chart. This expands both the temporal depth of LTF data and the precision of short‑horizon analysis, while base tiers provide minute‑level data suitable for day/short‑swing studies.
• Coverage clarity: a small on‑chart Coverage Panel reports the active lower timeframe, the number of bars covered, and the latest computed support/resistance ranges so you always know the bounds of valid LTF input.
Core Method
1) Data acquisition (LTF)
The script retrieves three series from the chosen lower timeframe:
– Up Volume (buyers)
– Down Volume (sellers)
– Delta (Up – Down)
2) Rolling window & extrema
Over a user‑defined lookback (Global Volume Period), the algorithm builds rolling arrays of completed bars and scans for extrema:
– Buyers_max / Buyers_min from Up Volume
– Sellers_max / Sellers_min from Down Volume
Only completed bars are considered; the current bar is excluded for stability.
3) Price mapping
The extrema are mapped back to their source candles to obtain price bounds:
– For “maximum” roles the algorithm uses the relevant candle highs.
– For “minimum” roles it uses the relevant candle lows.
These pairs define candidate resistance (max‑based) and support (min‑based) zones or vice versa.
4) Zone construction & minimum width
To ensure practicality on all symbols, zones enforce a minimum vertical thickness of two ticks. This prevents visually invisible or overly thin ranges on instruments with tight ticks.
5) Vertical role resolution
When both max‑ and min‑based zones exist, the script compares their midpoints. If, due to local price structure, the min‑based zone sits above the max‑based zone, display roles are swapped so the higher zone is labeled Resistance and the lower zone Support. Colors/widths are updated accordingly to keep the visual legend consistent.
6) Rendering & panel
Two horizontal lines and a filled box represent each active zone. The Coverage Panel (bottom‑right by default) prints:
– Lower‑timeframe in use
– Number of bars covered by LTF data
– Current Support and Resistance ranges
If the two zones overlap, an additional “Range Market” note is shown.
Key Inputs
• Global Volume Period: shared lookback window for the extrema search.
• Lower timeframe: user‑selectable override of the automatically resolved lower timeframe.
• Visualization toggles: independent show/hide controls and colors for maximum (resistance) and minimum (support) zones.
• Coverage Panel: enable/disable the single‑cell table and its readout.
Operational Notes
• The algorithm aligns all lookups to completed bars (no peeking). Price references are shifted appropriately to avoid using the still‑forming bar in calculations.
• Second‑based lower timeframes improve granularity for scalping and very short‑term entries. Minute‑based lower timeframes provide broader coverage for intraday and short‑swing contexts.
• Use the Coverage Panel to confirm the true extent of available LTF history on your symbol/plan before drawing conclusions from very deep lookbacks.
Visual Walkthrough
A step‑by‑step image sequence accompanies this description. Each figure demonstrates how the indicator reads LTF volume, locates extrema, builds price‑mapped zones, and updates labels/colors when vertical order requires it.
Chart Interpretation
This chart illustrates two distinct perspectives of the Smart Money Support/Resistance — Lite indicator, each derived from different lookback horizons and lower-timeframe (LTF) resolutions.
1- Short-term view (43 bars, 10-second LTF)
Using the most recent 43 completed bars with 10-second intrabar data, the algorithm detects that both maximum and minimum volume extrema fall within a narrow range. The result is a clearly identified range market: resistance between 178.15–184.55 and support between 175.02–179.38.
The Coverage Panel (bottom-right) confirms the scope of valid input: the lower timeframe used, number of bars covered, and the resulting zones. This short-term scan highlights how the indicator adapts to limited data depth, flagging sideways structure where neither side dominates.
2 - Long-term view (120 bars, 30-second LTF)
Over a wider 120-bar lookback with higher-granularity 30-second data, broader supply and demand zones emerge.
– The long-term resistance zone captures the concentration of buyers and sellers at the upper boundary of recent price history.
– The long-term support zone anchors to the opposite side of the distribution, derived from maxima and minima of both buying and selling pressure.
These zones reflect deeper structural levels where market participants previously committed significant volume.
Combined Perspective
By aligning the short-term and long-term outputs, the chart shows how the indicator distinguishes immediate consolidation (range market) from more durable support and resistance levels derived from extended history. This dual resolution approach makes clear that support and resistance are not static lines but dynamic zones, dependent on both timeframe depth and the resolution of intrabar volume data.
Ch Enhanced Buy Sell Volume// ========================================
// 📊 HOW TO READ THIS INDICATOR 📊
// ========================================
//
// 🟢 GREEN BARS (Above Zero) = BUY VOLUME
// 🔴 RED BARS (Below Zero) = SELL VOLUME
//
// 💡 BAR COLORS MEANING:
// • DARK GREEN = Strong buyer dominance (high conviction buying)
// • LIGHT GREEN = Weak buyer dominance (low conviction)
// • DARK RED = Strong seller dominance (high conviction selling)
// • LIGHT RED = Weak seller dominance (low conviction)
//
// 🎯 TRADING SIGNALS:
// • Tall dark green bars = Strong bullish momentum
// • Tall dark red bars = Strong bearish momentum
// • Light colored bars = Weak conviction, potential reversal
// • Green bars > Red bars = Buyers winning
// • Red bars > Green bars = Sellers winning
//
// 📈 BULLISH SIGNALS:
// • Buy% > 70% = Strong buying interest
// • Dark green bars with high delta = Professional buying
// • Buy volume above yellow MA line = Above average buying
//
// 📉 BEARISH SIGNALS:
// • Sell% > 70% = Strong selling pressure
// • Dark red bars with high delta = Professional selling
// • Sell volume below yellow MA line = Above average selling
//
// ⚠️ WARNING SIGNALS:
// • Price up + Red dominance = Bearish divergence
// • Price down + Green dominance = Bullish divergence
// • Low delta (<10%) = Market indecision
//
// 📊 INFO TABLE (Top-Right):
// • Buy%: Percentage of volume that was buying
// • Sell%: Percentage of volume that was selling
// • Delta%: Strength of dominance (difference between buy/sell)
// • Dom: Which side is currently dominant (BUYERS/SELLERS)
//
// 🟡 YELLOW LINES = Volume Moving Average
// • Upper line: Reference for buy volume (green bars)
// • Lower line: Reference for sell volume (red bars)
// • Above yellow = Higher than average volume
// • Below yellow = Lower than average volume
Trend Score with Dynamic Stop Loss RTH
📘 Trend Score with Dynamic Stop Loss (RTH) — Guide
🔎 Overview
This indicator tracks intraday momentum during Regular Trading Hours and flags trend flips using a cumulative TrendScore. It also draws dynamic stop-loss levels and shows a live stats table for quick decision-making and journaling.
⸻
⚙️ Core Concepts
1) TrendScore (per bar)
• +1 if the current bar makes a higher high than the previous bar (counted once per bar).
• –1 if the current bar makes a lower low than the previous bar (counted once per bar).
• If a bar takes both the prior high and low, the net contribution can cancel out within that bar.
2) Cumulative TrendScore (running total)
• The per-bar TrendScore accumulates across the session to form the cumulative TrendScore (TS).
• TS resets to 0 at session open and is cleared at session close.
• Rising TS = persistent upside pressure; falling TS = persistent downside pressure.
⸻
🔄 Flip Rules (3-point reversal of the cumulative TrendScore)
A flip occurs when the cumulative TrendScore reverses by 3 points in the opposite direction of the current trend.
• Bullish Flip
• Trigger: After a decline, the cumulative TrendScore rises by +3 from its down-leg.
• Interpretation: Bulls have taken control.
• Stop-loss: the lowest price of the prior (down) leg.
• Bearish Flip
• Trigger: After a rise, the cumulative TrendScore falls by –3 from its up-leg.
• Interpretation: Bears have taken control.
• Stop-loss: the highest price of the prior (up) leg.
Flip bars are marked with ▲ (lime) for bullish and ▼ (red) for bearish.
Note: If you prefer a different reversal distance, adjust the flip distance setting in the script’s inputs (default is 3).
⸻
📏 Stop-Loss Lines
• A dotted line is drawn at the prior leg’s extreme:
Green (below price) after a bullish flip.
Red (above price) after a bearish flip.
• Options:
Remove on touch for a clean chart.
Freeze on touch to keep a visual record for journaling.
• All stop lines are cleared at session end.
⸻
🧮 Stats Table (what you see)
• Trend: Bull / Bear / Neutral
• Bars in Trend: Count since the flip bar
• Since Flip: Current close minus flip bar close
• Since SL: Current close minus active stop level
• MFE-Maximum Favorable Excursion: Highest favorable move since flip
• MAE-Maximum Adverse Excursion: Largest adverse move since flip
Table colors reflect the current trend (green for bull, red for bear).
⸻
📊 Trading Playbook
Entries
• Aggressive: Enter immediately on a flip marker.
• Conservative: Wait for a small pullback that doesn’t violate the stop.
Stops
• Place the stop at the script’s flip stop-loss line (the prior leg extreme).
Exits
Choose one style and stick with it:
• Stop-only: Exit when the stop is hit.
• Time-based: Flatten at session close.
• Targets: Scale/close at 1R, 2R.
• Trailing: Trail behind minor swings once MFE > 1R.
Ultimately Exit choice is your own edge, so you must decide for yourself.
💡 Best Practices
• Skip the first few bars after the open (gap noise).
• Use regular candles (Heikin-Ashi will distort highs/lows).
• If you want fewer flips, increase the flip distance (e.g., 4 or 5). For more
responsiveness, use 2. Otherwise, increase your time frame to 5m, 10m, 15m.
• Keep SL lines frozen (not auto-removed) if you’re journaling.
STRAT 3-2-2 (30m) • Upcoming / Approach / Entry + AlertsThis indicator is built for The STRAT trading method, specifically the 3-2-2 reversal pattern. It monitors price action on the 30-minute timeframe (HTF = 30m) and visually/alert-wise highlights where a 3-2-2 setup, approach, or entry trigger occurs.
---
⚙️ How it works
1. Detects bar types:
3 (Outside Bar) = range breaks both high & low of the previous bar
2u (Up bar) = higher high, not outside
2d (Down bar) = lower low, not outside
1 (Inside bar) = fully contained within prior bar
2. Looks for 3-2-2 setups:
Bullish 3-2-2 = 3 → 2d → 2u (expect reversal UP)
Bearish 3-2-2 = 3 → 2u → 2d (expect reversal DOWN)
3. Defines trigger levels:
Bullish trigger = high of the first “2d” bar
Bearish trigger = low of the first “2u” bar
4. Signals 3 phases:
Upcoming: pattern is forming, second “2” hasn’t triggered yet
Approach: price comes within 50% (adjustable) of the trigger level
Entry: price breaks the trigger (actual reversal confirmation)
5. Visualization:
Labels above/below candles show “Approach” and “Entry”
Background or bar colors (toggle in settings) highlight Setup / Approach / Entry
Optional dotted line marks the trigger level for clarity
---
🔔 Alerts
Two alert systems are built in:
1. Safe static conditions (for normal TradingView alert setup):
APPROACH: Bullish 3-2-2 (30m)
APPROACH: Bearish 3-2-2 (30m)
ENTRY: Bullish 3-2-2 (30m)
ENTRY: Bearish 3-2-2 (30m)
2. Dynamic messages (using alert() calls with price info):
If you create an alert with “Any alert() function call”, the pop-up will include the trigger price.
---
📋 Inputs (Settings)
Signal timeframe (HTF) → default 30m
Confirm signals at HTF bar close → waits for bar close (non-repainting)
Approach = % of first '2' bar range → default 50%
Show labels → On/Off
Color candles instead of background → toggle between candle color vs. chart background
Changing of the GuardChanging of the Guard (COG) - Advanced Reversal Pattern Indicator
🎯 What It Does
The Changing of the Guard (COG) indicator identifies high-probability reversal setups by detecting specific candlestick patterns that occur at key institutional levels. This indicator combines traditional price action analysis with volume-weighted and moving average confluence to filter out noise and focus on the most reliable trading opportunities.
🔧 Key Features
Multi-Timeframe VWAP Analysis
• Daily VWAP (Gray circles) - Intraday institutional reference
• Weekly VWAP (Yellow circles) - Short-term institutional bias
• Monthly VWAP (Orange circles) - Long-term institutional sentiment
Triple EMA System
• EMA 20 (Blue) - Short-term trend direction
• EMA 50 (Purple) - Medium-term momentum
• EMA 200 (Navy) - Long-term market structure
Adaptive COG Pattern Detection
• 2-Bar Mode: Quick reversal signals for scalping
• 3-Bar Mode: Balanced approach for swing trading (default)
• 4-Bar Mode: Conservative signals for position trading
📊 How It Works
The indicator identifies "changing of the guard" moments when:
1. Pattern Formation: 2-4 consecutive bars show exhaustion in one direction
2. Reversal Confirmation: A counter-trend bar appears with strong momentum
3. Confluence Trigger: The reversal bar crosses through a significant VWAP or EMA level
Bullish COG: Green triangle appears below bars when bearish exhaustion meets bullish reversal at key support
Bearish COG: Red triangle appears above bars when bullish exhaustion meets bearish reversal at key resistance
💡 Trading Applications
Swing Trading: Use 3-bar mode with EMA 50/200 confluence for multi-day holds
Day Trading: Use 2-bar mode with Daily VWAP confluence for intraday reversals
Position Trading: Use 4-bar mode with Monthly VWAP confluence for major trend changes
⚙️ Customization Options
• Toggle VWAP display on/off
• Toggle EMA display on/off
• Toggle COG signals on/off
• Select detection mode (2-bar, 3-bar, 4-bar)
• Built-in alert system for automated notifications
🎨 Visual Design
Clean, professional interface with:
• Subtle dotted lines for VWAPs to avoid chart clutter
• Color-coded EMAs for easy trend identification
• Clear triangle signals that don't obstruct price action
• Customizable display options for different trading styles
📈 Best Practices
• Combine with volume analysis for additional confirmation
• Use higher timeframe bias to filter trade direction
• Consider market structure and support/resistance levels
• Backtest different modes to find optimal settings for your strategy
⚠️ Risk Management
This indicator identifies potential reversal points but should be used with proper risk management. Always consider:
• Overall market trend and structure
• Volume confirmation
• Multiple timeframe analysis
• Appropriate position sizing
Perfect for traders who want to catch reversals at institutional levels with high-probability setups. The confluence requirement ensures you're trading with the smart money, not against it.
FlowScape PredictorFlowScape Predictor is a non-repainting, regime-aware entry qualifier that turns complex market context into two readiness scores (Long & Short, each 0/25/50/75/100) and clean, confirmed-bar signals. It blends three orthogonal pillars so you act only when trend energy, momentum, and location agree:
Regime (energy): ATR-normalized linear-regression slope of a smooth HMA → EMA baseline, gated by ADX to confirm when pressure is meaningful.
Momentum (push): RSI slope alignment so price has directional follow-through, not just drift.
Structure (location): proximity to pivot-confirmed swings, scaled by ATR, so “ready” appears near constructive pullbacks—not mid-trend chases.
A soft ATR cloud wraps the baseline for context. A yellow Predictive Baseline extends beyond the last bar to visualize near-term trajectory. It is visual-only: scores/alerts never use it.
What you see
Baseline line that turns green/red when regime is strong in that direction; gray when weak.
ATR cloud around the baseline (context for stretch and pullbacks).
Scores (Long & Short, 0–100 in steps of 25) and optional “L/S” icons on bar close.
Yellow Predictive Baseline that extends to the right for a few bars (visual trajectory of the smoothed baseline).
The scoring system (simple and transparent)
Each side (Long/Short) sums four binary checks, 25 points each:
Regime aligned: trendStrong is true and LR slope sign favors that side.
Momentum aligned: RSI side (>50 for Long, <50 for Short) and RSI slope confirms direction.
Baseline side: price is above (Long) / below (Short) the baseline.
Location constructive: distance from the last confirmed pivot is healthy (ATR-scaled; not overstretched).
Valid totals are 0, 25, 50, 75, 100.
Best-quality signal: 100/0 (your side/opposite) on bar close.
Good, still valid: 75/0, especially when the missing block is only “location” right as price re-engages the cloud/baseline.
Avoid: 75/25 or any opposition > 0 in a weak (gray) regime.
The Predictive (Kalman) line — what it is and isn’t
The yellow line is a visual forward extension of the smoothed baseline to help you see the current trajectory and time pullback resumptions. It does not predict price and is excluded from scores and alerts.
How it’s built (plain English):
We maintain a one-dimensional Kalman state x as a smoothed estimate of the baseline. Each bar we observe the current baseline z.
The filter adjusts its trust using the Kalman gain K = P / (P + R) and updates:
x := x + K*(z − x), then P := (1 − K)*P + Q.
Q (process noise): Higher Q → expects faster change → tracks turns quicker (less smoothing).
R (measurement noise): Higher R → trusts raw baseline less → smoother, steadier projection.
What you control:
Lead (how many bars forward to draw).
Kalman Q/R (visual smoothness vs. responsiveness).
Toggle the line on/off if you prefer a minimal chart.
Important: The predictive line extends the baseline, not price. It’s a visual timing aid—don’t automate off it.
How to use (step-by-step)
Keep the chart clean and use a standard OHLC/candlestick chart.
Read the regime: Prefer trades with green/red baseline (trendStrong = true).
Check scores on bar close:
Take Long 100 / Short 0 or Long 75 / Short 0 when the chart shows a tidy pullback re-engaging the cloud/baseline.
Mirror the logic for shorts.
Confirm location: If price is > ~1.5 ATR from its reference pivot, let it come back—avoid chasing.
Set alerts: Add an alert on Long Ready or Short Ready; these fire on closed bars only.
Risk management: Use ATR-buffered stops beyond the recent pivot; target fixed-R multiples (e.g., 1.5–3.0R). Manage the trade with the baseline/cloud if you trail.
Best-practice playbook (quick rules)
Green light: 100/0 (best) or 75/0 (good) on bar close in a colored (non-gray) regime.
Location first: Prefer entries near the baseline/cloud right after a pullback, not far above/below it.
Avoid mixed signals: Skip 75/25 and anything with opposition while the baseline is gray.
Use the yellow line with discretion: It helps you see rhythm; it’s not a signal source.
Timeframes & tuning (practical defaults)
Intraday indices/FX (5m–15m): Demand 100/0 in chop; allow 75/0 when ADX is awake and pullback is clean.
Crypto intraday (15m–1h): Prefer 100/0; 75/0 on the first pullback after a regime turn.
Swing (1h–4h/D1): 75/0 is often sufficient; 100/0 is excellent (fewer but cleaner signals).
If choppy: raise ADX threshold, raise the readiness bar (insist on 100/0), or lengthen the RSI slope window.
What makes FlowScape different
Energy-first regime filter: ATR-normalized LR slope + ADX gate yields a consistent read of trend quality across symbols and timeframes.
Location-aware entries: ATR-scaled pivot proximity discourages mid-air chases, encouraging pullback timing.
Separation of concerns: The predictive line is visual-only, while scores/alerts are confirmed on close for non-repainting behavior.
One simple score per side: A single 0–100 readiness figure is easier to tune than juggling multiple indicators.
Transparency & limitations
Scores are coarse by design (25-point blocks). They’re a gatekeeper, not a promise of outcomes.
Pivots confirm after right-side bars, so structure signals appear after swings form (non-repainting by design).
Avoid using non-standard chart types (Heikin Ashi, Renko, Range, etc.) for signals; use a clean, standard chart.
No lookahead, no higher-timeframe requests; alerts fire on closed bars only.
Volume Rotor Clock [hapharmonic]🕰️ Volume Rotor Clock
The Volume Rotor Clock is an indicator that separates buy and sell volume, compiling these volumes over a recent number of bars or a specified past period, as defined by the user. This helps to reveal accumulation (buying) or distribution (selling) behavior, showing which side has superior volume. With its unique and beautiful display, the Volume Rotor Clock is more than just a timepiece; it's a dynamic dashboard that visualizes the buying and selling pressure of your favorite symbols, all wrapped in an elegant and fully customizable interface.
Instead of just tracking price, this indicator focuses on the engine behind the movement: volume. It helps you instantly identify which assets are under accumulation (buying) and which are under distribution (selling).
---
🎨 20 Pre-configured Templates
---
🧐 Interpreting the Clock Display
The interface is designed to give you multiple layers of information at a glance. Let's break down what each part represents.
1. The Main Clock Hands (Current Chart Symbol)
The clock hands—hour, minute, and second—are dedicated to the symbol on your current active chart .
Minute Hand: Displays the base currency of the current symbol (e.g., USDT, USD) at its tip.
Hour Hand: Displays the percentage of the winning volume side (buy vs. sell) at its tip.
Color Gauge: The color of the text characters at the tip of both the hour and minute hands acts as your primary volume gauge for the current symbol.
If buy volume is dominant , the text will be green .
If sell volume is dominant , the text will be red .
Tooltip: Hovering your mouse over the text at the tip of the hour or minute or other spherical elements hand will reveal a detailed tooltip with the precise Buy Volume, Sell Volume, Total Volume, Buy %, and Sell % for the current chart's symbol.
2. The Volume Scanner: Bulls & Bears (Symbols Inside the Clock) 🐂🐻
The circular symbols scattered inside the clock face are your multi-symbol volume scanner. They represent the assets you've selected in the indicator's settings.
Green Circles (Bulls - Upper Half): These represent symbols from your list where the total buy volume is greater than the total sell volume over the defined "Lookback" period. They are considered to be under bullish accumulation. The size of the circle and its text grows larger as the buy percentage becomes more dominant. The percentage shown within the circle represents the buy volume's share of the total volume, calculated over the 'Lookback (Bars)' you've set.
Red Circles (Bears - Lower Half): These represent symbols where the total sell volume is greater than the total buy volume. They are considered to be under bearish distribution or selling pressure. The size of the circle indicates the dominance of the sell-side volume. The percentage shown within the circle represents the sell volume's share of the total volume, calculated over the 'Lookback (Bars)' you've set.
3. The Bullish Watchlist (Symbols Above the Clock) ⭐
The symbols arranged neatly along the top edge of the clock are the "best of the bulls." They are symbols that are not only bullish but have also passed an additional, powerful strength filter.
What it Means: A symbol appears here when it shows signs of sustained, high-volume buying interest . It's a way to filter out noise and focus on assets with potentially significant accumulation phases.
The Filter Logic: For a bullish symbol (where total buy volume > total sell volume) to be promoted to the watchlist, its trading volume must meet specific criteria based on this formula:
ta.barssince(not(volume > ta.sma(volume, X))) >= Y
In plain English, this means: The indicator checks how many consecutive bars the `volume` has been greater than its `X`-bar Simple Moving Average (`ta.sma(volume, X)`). If this count is greater than or equal to `Y` bars, the condition is met.
(You can configure `X` (Volume MA Length) and `Y` (Consecutive Days Above MA) in the settings.)
Why it's Useful: This filter is powerful because it looks for consistency . A single spike in volume can be an anomaly. However, when an asset's volume remains consistently above its recent average for several consecutive days, it strongly suggests that larger players or a significant portion of the market are actively accumulating the asset. This sustained interest can often precede a significant upward price trend.
---
⚙️ Indicator Settings Explained
The Volume Rotor Clock is highly customizable. Here’s a detailed walkthrough of every setting available in the "Inputs" tab.
🎨 Color Scheme
This group allows you to control the entire aesthetic of the clock.
Template: Choose from a wide variety of professionally designed color themes.
Use Template: A simple checkbox to switch between using a pre-designed theme and creating your own.
`Checked`: You can select a theme from the dropdown menu, which offers 20 unique templates like "Cyberpunk Neon" or "Forest Green". All custom color settings below will be disabled (grayed out and unclickable).
`Unchecked`: The template dropdown is disabled, and you gain full control over every color element in the sections below.
🖌️ Custom Appearance & Colors
These settings are only active when "Use Template" is unchecked.
Flame Head / Tail: Sets the start and end colors for the dynamic flame effect that traces the clock's border, representing the second hand.
Numbers / Main Numbers: Customize the color of the regular hour numbers (1, 2, 4, 5...) and the main cardinal numbers (3, 6, 9, 12).
Sunburst Colors (1-6): Controls the six colors used in the gradient background for the "sunburst" effect inside the clock face.
Hands & Digital: Fine-tune the colors for the Hour/Minute Hand, Second Hand, central Pivot point, and the digital time display.
Chain Color / Width: Customize the appearance of the two chains holding the clock.
📡 Volume Scanner
Control the behavior of the multi-symbol scanner.
Show Scanner Labels: A master switch to show or hide all the bull/bear symbol circles inside the clock.
Lookback (Bars): A crucial setting that defines the calculation period for buy/sell volume for all scanned symbols. The calculation is a sum over the specified number of recent bars.
`0`: Calculates using the current bar only .
`7`: Calculates the sum of volume over the last 8 bars (the current bar + 7 historical bars).
Symbols List: Here you can enable/disable up to 20 slots and input the ticker for each symbol you want to scan (e.g., BINANCE:BTCUSDT , NASDAQ:AAPL ).
⭐ Bullish Watchlist Filter
Configure the criteria for the elite watchlist symbols displayed above the clock.
Enable Watchlist: A master switch to turn the entire watchlist feature on or off.
Volume MA Length: Sets the lookback period `(X)` for the Simple Moving Average of volume used in the filter.
Consecutive Days Above MA: Sets the minimum number of consecutive days `(Y)` that volume must close above its MA to qualify.
Symbols Per Row: Determines the maximum number of watchlist symbols that can fit in a single row before a new row is created above it.
Background / Text Color: When not using a template, you can set custom colors for the watchlist symbols' background and text.
📏 Position & Size
Adjust the clock's placement and dimensions on your chart.
Clock Timezone: Sets the timezone for the digital and analog time display. You can use standard formats like "America/New_York" or enter "Exchange" to sync with the chart's timezone.
Radius (Bars): Controls the overall size of the clock. The radius is measured in terms of the number of bars on the x-axis.
X Offset (Bars): Moves the entire clock horizontally. Positive values shift it to the right; negative values shift it to the left.
Y Offset (Price %): Moves the entire clock vertically as a percentage of your screen's price pane. Positive values move it up; negative values move it down.















