Perrin Polygons Shape Engine | ProjectSyndicatePerrin Polygons — Shape Engine
Ten tabs of real dot-lattice mathematics, constructed live on your chart. Not a picture of figurate numbers — the actual construction, built dot by dot, every bar.
What it is
Most "Fibonacci" tools draw three lines and call it geometry. This one builds the geometry.
Perrin Polygons renders figurate numbers — the ancient dot-lattices that gave us triangular, square, pentagonal and hexagonal numbers — as living constructions on a chart canvas. Every dot is placed by the formula that defines it. Nothing is an image, nothing is hardcoded, nothing is traced.
The polygonal number
(s-2)·n² − (s-4)·n
P(s,n) = ──────────────────────────
2
is built here the way it is drawn, not the way it is written: as n nested gnomons. Gnomon k is the path W₁→W₂→…→W₍ₛ₋₁₎ of a regular s-gon of side k anchored at the origin, and it carries exactly (s-2)k + 1 dots. Stack k = 0 … n-1 and the total is P(s,n) — exactly, for every s and every n.
That construction is the engine. Everything else is what you can see once you have it.
The idea: why Perrin and polygons belong together
The Perrin sequence
P(n) = P(n-2) + P(n-3), P(0)=3, P(1)=0, P(2)=2
→ 3 · 0 · 2 · 3 · 2 · 5 · 5 · 7 · 10 · 12 · 17 · 22 · 29 · 39 · 51 · 68 …
is the plastic ratio's answer to Fibonacci — it grows by ρ = 1.3247179572, the real root of x³ = x + 1, where Fibonacci grows by φ = 1.618.
It looks like an unrelated curiosity. It isn't. It touches polygons twice, and both are shapes:
1 · The Perrin sequence is a list of polygons.
Read the terms as side counts: 3, 5, 7, 10, 12, 17, 22, 29 → triangle, pentagon, heptagon, decagon, dodecagon, 17-gon, 22-gon, 29-gon. The sequence doesn't describe polygons. It enumerates them.
2 · The Perrin numbers count polygons.
P(n) is exactly the number of maximal independent sets of the n-vertex cycle graph — and a cycle graph is a polygon. Choose vertices so no two are adjacent and no vertex is left uncovered; the number of ways is the nth Perrin number.
Tabs 02 and 05 draw those two facts. They are the reason this indicator exists.
The ten tabs
#TabWhat it draws01ATLASThe whole polygonal family. s = 3…8 across, n = 1…4 down. Every dot the same size, so the shapes grow with n — the sequence made visible.02PERRIN POLYGONSThe Perrin sequence as side counts: eight lattices from triangle to 29-gon.03GNOMONSOne shape, then the same shape taken apart ring by ring — (s-2)k+1 dots at a time.04CENTEREDCentered polygonal numbers: concentric rings of s·k dots around a single centre.05CYCLE GRAPHC(n) plus every one of its maximal independent sets, each drawn as a highlighted polygon. The count is brute-forced live and checked against P(n) on screen.06ROSETTEs = 12→3 nested, each radius divided by a power of ρ.07SPIRALSPlastic spiral (ρ per 120°) beside the golden spiral (φ per 90°) — why the plastic whirl is ~3× tighter.08RADAR ▸ liveThe market as a polygon: one vertex per Perrin-length RSI.09MARKET LATTICE ▸ liveThe last P(s,n) bars poured into a lattice — oldest at the centre, newest on the outer ring, coloured by direction.10IDENTITYA proof you can see: P(s+1,n) − P(s,n) = T(n-1). Three lattices, one shared pitch, counts checked live.
The formula panel
The dead chart space to the left of the shapes carries 30 formula cards — three per tab, switching with the tab.
Pine has no LaTeX. But its labels are monospace, so the panel renders genuine fraction bars instead of collapsing everything into (...)/2:
√( 8(s-2)·x + (s-4)² ) + (s-4)
n = ──────────────────────────────────
2(s-2)
Every card carries live values substituted in, not just symbols — the identity and its evaluation at your current settings. Set the atlas to n=4 and the gnomon card reads rings: 1 + 7 + 13 + 19 = 40.
Font size is yours (up to huge). Nothing is locked small.
Why it's unique
It computes; it doesn't illustrate. The gnomon construction, the plastic ratio, the maximal independent sets, the inverse of P(s,n) — all evaluated on your chart, from first principles.
It checks itself in public. Tab 05 brute-forces every maximal independent set of C(n) across all 2ⁿ subsets, counts them, and prints the result against the Perrin number with a ✓ or ✗. It isn't asserting the theorem at you. It's demonstrating it, and it would show you if it failed.
Every claim was verified before it was drawn. The gnomon construction was checked against P(s,n) for s = 3…12, n = 1…6 (dot counts and totals). MIS(Cₙ) = P(n) was brute-forced for n = 2…13. The inverse formula was checked to be exact for s = 3…12, n = 3…8. None of it was transcribed on trust.
The lattice actually reads. Dots are drawn in canvas units as a fraction of the lattice pitch, not in fixed pixels — so a 40-dot octagon stays legible instead of collapsing into a blob. Comparison tabs share one pitch across every shape, which is what makes a figurate sequence look like a sequence rather than a row of unrelated blobs.
Colour carries information. Five perceptual ramps (Magma, Viridis, Plasma, Ember, Ice) run inner→outer, so ring colour encodes gnomon order rather than fighting it.
Practical applications
1 · A non-Fibonacci lookback family.
Everyone uses 8/13/21/34/55. The Perrin sequence gives 5, 7, 10, 12, 17, 22, 29, 39, 51, 68, 90, 119 — a different, slower-growing ladder (ρ = 1.325 vs φ = 1.618), so the periods are more tightly spaced and sample the middle horizons that Fibonacci skips.
2 · RADAR — read many horizons as one shape.
Instead of stacking eight RSI panes, read the polygon. A swollen shape means every horizon is extended the same way — broad-based pressure. A shrunken shape is the mirror. A lopsided shape — fast vertices pushed out, slow vertices pulled in — is short-term extension against a slower base, which is the geometry of a divergence. One glance replaces eight readings.
3 · MARKET LATTICE — regime texture at a glance.
The last P(s,n) bars, oldest at the centre. Directional runs appear as coloured arcs; chop appears as speckle. The up-fraction is printed underneath. It's a compact way to see whether recent history is trending or shuffling.
4 · Reference geometry for plastic-ratio work.
Exact constants and identities for anyone building ρ-based levels: ρ³ = ρ+1, and the exact "plastic pocket" 1/ρ² + 1/ρ³ = 1 (0.569840 + 0.430160), the plastic analogue of the golden pocket.
5 · Teaching and content.
Figurate numbers, gnomon growth, the plastic ratio, and a graph-theory identity, all on one canvas with the formulas beside them. For educators, students, and anyone publishing.
Settings that matter
◧ Shape aspect (x per y) — the one dial you must set.
Pine cannot read a pane's pixel size, so nothing can automate this. Set it to:
aspect = (Canvas width / 100) × (pane height ÷ pane width)
Default 1.80 = a 440-bar canvas on a pane roughly 2.4× wider than tall. Shapes squashed flat → raise it. Stretched tall → lower it. They are only true polygons when this is right.
Everything else is optional: Lattice dot size (× pitch), five palettes, independent heading / caption / tab / formula text sizes, manual text colours, panel widths, and per-tab shape parameters.
On the tab strip: it is an index, not a button bar. Pine Script exposes no click, mouse or hover events — no TradingView indicator can have a working on-chart button. Tabs switch in Settings → Canvas → Tab.
What this is not
Stated plainly, because the space is full of tools that won't:
It generates no signals. No buy/sell arrows, no alerts, no strategy, no entries, no targets.
It reports no performance. No win rate, no profit factor, no backtest, no equity curve — because it makes no claims that would need them. Nothing here has been shown to have an edge, and nothing here pretends to.
The two live tabs are readouts, not forecasts. RADAR is RSI across Perrin lookbacks. MARKET LATTICE is bar direction. Neither predicts anything.
The plastic ratio is not magic. ρ is a real constant with real mathematics behind it. That it appears in a market tool does not mean markets obey it.
This is an instrument and a teaching engine. It shows you mathematics and it shows you your data. What you conclude is yours.
Pine Script® v6 · separate pane · no repainting · no external data. Wskaźnik

Wskaźnik

Wskaźnik

Wskaźnik

Wskaźnik

Wskaźnik

OHLC Range MeterOHLC Range Meter
An indicator that reads the Open / High / Low / Close of every candle and measures each candle's "range" from its High − Low. It's built to show at a glance which candles are moving hard and which are quiet, making it useful for reading momentum and volatility bar by bar — especially for gold (XAUUSD) trading.
Key features
Displays the range (H−L) as a label on every candle. Choose from three units — Points, Price (dollars), or Ticks — to match your own counting style and your broker's price precision. You can optionally add the body range |Close − Open| and the full OHLC values inside each label.
Labels are clearly separated between up and down candles (default: green candles above, red candles below), so direction and trend shifts are instantly readable. The position for each color is fully adjustable.
A real-time summary table in the corner shows the latest candle's OHLC and range. Position it in any of the four corners, adjust font size for both labels and table across five levels, and customize colors and label frequency.
About the units
Points mode divides (High − Low) by your chosen point size. For gold, 0.01 is recommended — a candle moving $2.30 will read as 230, matching how most gold traders count. If your broker quotes prices with three decimals, switch to 0.001, or use Ticks mode, which follows the symbol's actual mintick automatically.
How to use
Open the Pine Editor on TradingView, paste the code, and Add to chart. Adjust units and styling under Settings. Works on any symbol and any timeframe.
Note: TradingView limits labels to the most recent 500. Wskaźnik

OB/FVG + Volume Profile Confluence█ OVERVIEW
OB/FVG + Volume Profile Confluence identifies the most relevant supply and demand zones by combining three complementary market analysis concepts: Order Blocks (OB), Fair Value Gaps (FVG), and Volume Profile.
Not every Order Block or Fair Value Gap carries the same weight. Markets create many of them, but only a small fraction actually influences future price action. This script addresses that by cross-checking every newly formed zone against a local volume profile, keeping only the zones that align with areas of increased market participation. Unlike standard Volume Profile tools that rely on a single POC (Point of Control), this script detects multiple local volume peaks (Vol Peaks), allowing several independent high-activity price levels to be tracked at once.
Each zone is continuously analyzed for its internal volume flow, tracking how much of the volume within it was generated by buyers versus sellers. This updates bar by bar, so the user can see which side of the market is gradually gaining control over a given area.
The indicator can also generate break and exit signals, but only for Order Blocks and Fair Value Gaps that are confluent with the Volume Profile, filtering out a large share of less significant levels.
The result is a tool that combines market structure, supply/demand imbalance, and real volume activity — giving traders not just the location of potential reaction zones, but also a read on their quality and historical strength.
█ CONCEPTS
Volume Profile (Vol Peaks)
Volume Profile shows how volume is distributed across price levels rather than looking only at the volume of each individual candle. Most Volume Profile tools focus on a single POC — the price level with the highest traded volume in the analyzed period. In practice, markets often form several local high-activity areas that can also act as meaningful support/resistance levels. Instead of a single POC, this indicator searches for Vol Peaks — local volume maxima across the entire price profile. Each one marks a level where the market showed above-average trading interest, and these levels are later used to score the quality of Order Blocks and Fair Value Gaps.
Order Blocks (OB)
Order Blocks are price zones where significant activity from large market participants previously occurred — areas where strong bullish or bearish impulses began, and where institutions may have built or closed positions. A bullish Order Block marks a demand zone that often preceded a strong upward move; a bearish Order Block marks a supply zone that preceded a strong decline. The script detects Order Blocks from local pivots and the direction of the candles preceding a structure shift, and can use either the full candle range (including wicks) or the body only.
Note: because Order Blocks require a confirmed pivot, each zone is drawn with a delay of roughly pivot_length + 1 bars after the point where it actually formed. This is a structural property of pivot-based detection, not a defect — it should be kept in mind when reading the chart, since the zone is confirmed only after the fact.
Fair Value Gaps (FVG)
A Fair Value Gap marks an imbalance between buyers and sellers. It forms during a strong price impulse, when the market moves fast enough that a gap remains between consecutive candles — evidence that supply and demand were not being matched evenly. These areas frequently attract price during later corrections, as the market tends to retest zones where trading did not occur smoothly. The indicator detects both bullish and bearish FVGs and can optionally display additional, informational gaps regardless of their confluence with the Volume Profile.
Why combine Order Blocks, Fair Value Gaps, and Volume Profile?
Each method looks at the market from a different angle: an Order Block points to where large participants may have acted; a Fair Value Gap shows where a sharp imbalance between buyers and sellers occurred; Volume Profile shows which price levels actually saw the highest concentration of trading activity. Combining the three isolates zones that simultaneously:
• arise from market structure,
• formed during a strong impulse,
• are confirmed by above-average volume activity.
Volume analysis inside zones
No zone is treated as a static rectangle. From the moment it forms, the indicator analyzes every following candle and calculates how much volume was generated by buyers versus sellers. Based on this, it displays the total volume accumulated inside the zone, the volume delta, and the percentage dominance of one side of the market.
Dynamic zone updates
Most indicators draw an Order Block or Fair Value Gap once and leave it unchanged. In this script, every active zone is updated on every new candle — volume calculations, buyer/seller dominance, labels, and zone appearance all change dynamically as the market develops. This means the user sees not just where a zone historically formed, but its current state.
Break and Exit signals
The indicator can generate two types of signals. Break signals mark a definitive break of a zone, meaning it has lost its validity. Exit signals appear when price leaves a zone after having entered it, which can indicate the end of a retest and a return of the dominant market direction. Both signal types are generated only for zones that are confluent with the Volume Profile.
█ FEATURES
Multi-Peak Volume Profile
• Configurable lookback (up to 1000 bars)
• Price range split into bins (up to 100)
• Automatic detection of multiple local Vol Peaks instead of a single POC
• Filters: max number of peaks, minimum peak strength (% of the strongest bin), minimum distance between peaks
• Script-load optimization by recalculating the profile every N bars
• ATR-based confluence tolerance (a zone is considered confluent when a Vol Peak lies within its range or within ATR × multiplier of its edge)
Order Blocks
• Detection based on local pivots (configurable length)
• Option to include wicks or use the candle body only
• Zone-size filter relative to the average candle body size
• Colors, transparency, and optional buyer/seller volume split inside the box
• Dynamic label showing total volume, delta, and percentage dominance
Fair Value Gaps
• Automatic detection of bullish and bearish FVGs
• Gap-size filter relative to the average candle body size
• Optional display of "simple" FVGs without Volume Profile confluence (fixed box length)
• Same volume visualization and labeling options as Order Blocks
OB / FVG confluence with Vol Peaks
• Only zones located at a Vol Peak (or within ATR tolerance) are highlighted as significant
• Non-confluent zones remain nearly invisible or fully hidden
Dynamic in-zone volume analysis
• Continuously updated buyer/seller volume split
• Displays total volume, delta, and percentage dominance
• Border and label color change according to the currently dominant side of the market
Break and Exit signals
• Break — definitive break of a zone (loss of validity)
• Exit — price leaves a zone after having entered it (end of a retest)
• Signals generated only for zones confluent with a Vol Peak
• Separate signals for Order Blocks and Fair Value Gaps
Alerts
• Break Up / Break Down and Exit Up / Exit Down alerts, for both OB and FVG
█ APPLICATIONS
Filtering higher-quality supply and demand zones
The indicator lets you focus only on the Order Blocks and Fair Value Gaps that overlap with local volume peaks, filtering out most of the lower-relevance zones that otherwise clutter the chart.
Reading zone strength in real time
The dynamic volume split shows which side of the market is gradually taking control of a given area. A shift in dominance from buyers to sellers (or vice versa) can indicate a weakening zone.
Retests and breaks as areas of interest
• Exit signals mark potential continuation points after a zone has been retested
• Break signals confirm that a zone has lost validity, which can be relevant when tracking a breakout move
Break and Exit signals mark areas of interest, not automatic entry points. They are not standalone trade triggers — before treating a signal as significant, it is worth checking whether other tools, such as momentum indicators, are aligned with it.
Mapping market structure together with real activity
Vol Peaks combined with OB/FVG form a map of levels where large-participant activity historically concentrated and where a supply/demand imbalance also occurred.
Confirming setups from other methods
Confluent zones can serve as an additional filter for strategies based on market structure, order flow, or classic support/resistance — for example, treating a confluent supply zone as a reason for caution before going long into it, or using a test or break of a confluent zone as one factor among several when evaluating a trade.
Matching lookback to market structure and strategy
The lookback value should be chosen based on the timeframe and trading style. Too large a lookback causes many locally significant zones to be diluted, as the profile "smooths out" short-term peaks. Too small a lookback produces excessive noise and an overly dense grid of levels.
█ NOTES
• A larger lookback and higher bin count produce a more precise profile, but also increase script load. If you run into timeout issues, increase "Recalculate Volume Profile every N bars."
• Order Block zones are drawn with an inherent delay of roughly pivot_length + 1 bars, since they require a confirmed pivot before they can be plotted.
• Only zones with Vol Peak confluence generate Break/Exit signals — all other zones are purely informational.
• Dynamic changes in a zone's color and label reflect current volume flow, not just the historical moment the zone formed.
• Break and Exit signals represent different market behaviors and should be interpreted separately. They are not automatic entry signals — it is recommended to check for alignment with other tools (e.g., momentum indicators) before acting on them. Wskaźnik

Wskaźnik

Momentum Cascade | Lyro RSOverview:
Momentum Cascade is a rate-of-change momentum tool that passes a single momentum reading through three sequential smoothing stages to filter out early, unconfirmed moves. Rather than reacting to the first sign of a shift, it waits for the momentum signal to "cascade" through instant, reactive, and committed stages before confirming a trend, giving a cleaner read on when a move has genuine follow-through.
Key Features
Three-Stage Cascade Engine: Calculates a rate-of-change momentum value, then passes it through two successive EMA smoothing stages. Stage 1 is the raw instant impulse, Stage 2 is the first reactive smoothing, and Stage 3 is the fully committed signal.
Trend Confirmation Score: Each stage contributes +1 or -1 depending on its direction. A trend only confirms when all three stages agree (score of +3 or -3), filtering out momentum blips that fade before they cascade through.
Gradient Strength Visualization: The committed Stage 3 line and candle coloring use a gradient blend based on how strong the current agreement is across all three stages, giving an at-a-glance read on conviction.
Multi-Layer Plotting: Displays all three cascade stages simultaneously (thin instant line, mid-weight reactive line, and a glow-effect committed line) so you can see momentum building in real time, not just the final confirmation.
Candle Coloring: Optionally recolors chart candles using the same gradient logic as the oscillator, aligning price action visually with the cascade's current trend strength.
Customizable Visuals: Choose from 4 preset palettes — Classic, Mystic, Accented, Royal — or define your own custom bullish/bearish colors.
Built-In Signals: Automatically plots long/short labels on confirmed trend flips (when the score crosses into full +3 or -3 agreement).
How It Works
Momentum Calculation – Computes rate-of-change of price over the chosen length as the raw momentum impulse (Stage 1).
Cascade Smoothing – Passes that momentum through an EMA to produce Stage 2 (reactive), then smooths again to produce Stage 3 (committed).
Scoring – Assigns +1/-1 per stage based on sign, summing to a score between -3 and +3.
Trend Confirmation – A trend state only flips when the score reaches full agreement (+3 or -3), meaning all three stages point the same direction.
Signal Plotting – Trend flips are marked with long/short labels, and candle/line coloring reflects both direction and agreement strength via gradient.
Practical Use
Trend Confirmation – Use full cascade agreement (score of ±3) as confirmation that a momentum shift has enough follow-through to be tradeable, rather than acting on Stage 1 alone.
Early Warning – Watch Stage 1 and Stage 2 for early signs of a potential shift before the full cascade confirms, useful for anticipating entries.
Conviction Reading – Use the gradient strength on Stage 3 and candles to gauge how strongly the current trend is holding versus weakening.
Combine with Structure – Pair cascade confirmations with support/resistance or market structure levels for higher-quality entries.
Customization
Adjust Momentum Length and Stage Smoothing independently to tune responsiveness vs. lag.
Toggle signal labels and candle coloring on/off.
Pick a preset palette or define fully custom bullish/bearish colors.
⚠️Disclaimer
This indicator is a tool for technical analysis and does not provide guaranteed results. It should be used in conjunction with other analysis methods and proper risk management practices. The creators of this indicator are not responsible for any financial decisions made based on its signals. Wskaźnik

Advanced Fibonacci Golden Zone [HexaTrades]Advanced Fibonacci Golden Zone automatically finds the market's significant swing legs and projects the Fibonacci Golden Zone, the 0.5 – 0.618 retracement pocket of the latest leg. That band is where trend-continuation entries are classically hunted. No manual fib drawing: the script detects the swing, anchors the retracement correctly for both directions, draws the zone the moment the swing confirms, manages the setup's whole lifecycle, and drives a duplicate-free alert stream.
⭐️How it works
True late-zone detection:
When a swing confirms, the script scans every bar from the actual pivot through the confirmation bar (wicks or closes, per Zone Touch Source). If the price has already reached the zone's near edge anywhere in that window, the zone is late and is skipped; no zone is ever painted behind a reaction that already happened. Strict rule: exactly touching the edge counts as late.
Superseded setups :
A skipped candidate retires the previously active setup immediately: status “Superseded”, zone frozen/faded, and total silence no false “Invalidated” alert (that one is reserved for setups price actually broke).
Invalidation frozen ATR buffer:
A setup dies when a bar closes beyond the protective swing by more than the Invalidation Buffer (× ATR). The buffer is measured once, at setup creation, and the invalidation price stays fixed for the setup's lifetime; later ATR changes can't move it. Dead zones gray out instantly and can never alert again; a broken leg is “poisoned” so its later extensions can't spawn a fresh setup.
Zone anchoring retracements vs projections
Bullish (up-leg): Retracement anchored at 0.0 at the high, 1.0 at the low → the 0.5–0.618 band sits below price as potential support.
Bearish (down-leg) : Mirror-anchored → the 0.5–0.618 band sits above the price as potential resistance.
Retracements (0–1.0) and continuation projections (1.272× / 1.618× of the impulse, beyond the extreme) are computed by separate functions and labelled separately projections are targets, not retracement ratios.
True late-zone detection :
When a swing confirms, the script scans every bar from the actual pivot through the confirmation bar (wicks or closes, per Zone Touch Source). If the price has already reached the zone's near edge anywhere in that window, the zone is late and is skipped; no zone is ever painted behind a reaction that already happened. Strict rule: exactly touching the edge counts as late.
Superseded setups:
A skipped candidate retires the previously active setup immediately: status “Superseded”, zone frozen/faded, and total silence no false “Invalidated” alert (that one is reserved for setups price actually broke).
Invalidation frozen ATR buffer:
A setup dies when a bar closes beyond the protective swing by more than the Invalidation Buffer (× ATR). The buffer is measured once, at setup creation, and the invalidation price stays fixed for the setup's lifetime; later ATR changes can't move it. Dead zones gray out instantly and can never alert again; a broken leg is “poisoned” so its later extensions can't spawn a fresh setup.
⭐️ Features
- Automatic Golden Zone (default 0.5 – 0.618, both ratios configurable)
- Optional fib levels: retracements 0 · 0.236 · 0.382 · 0.5 · 0.618 · 0.786 · 1.0 + separately labelled 1.272× / 1.618× projections
- ZigZag + HH / HL / LH / LL structure labels with live structure bias
- Historical zones stay frozen & softened; optional “One zone per leg” replaces same-leg drafts in place (off by default)
- Zone lifecycle: Waiting → Inside Zone → Rejected / Broke Out → Invalidated / Superseded dead zones gray out and go permanently silent
⭐️How to use it
- Wait for a fresh zone in the direction of the structure (HH+HL → longs, LH+LL → shorts).
- Let price come into the zone covered by the “Price Enters Golden Zone” .
- Look for the rejection: a candle that gets into the zone and closes back out in the trend direction.
- Targets & invalidation: Target 1 = the 0.0 level (the impulse extreme), Target 2 = the 1.272× projection, Target 3 = the 1.618× projection; status “Invalidated” (close beyond the protective swing + buffer) is the classical exit.
⭐️Alert
1 · Golden Zone Invalidated: close beyond the protective swing + frozen ATR buffer — kills the setup
2 · 1.618× Projection Reached: continuation target hit (also completes 1.272× if reached directly)
3 · 1.272× Projection Reached: continuation target hit
4 · Bullish / Bearish Rejection: candle gets into the zone, closes back out in trend direction (completes the entry latch too)
5 · Zone Breakout: price closes straight through the zone
6 · Price Enters Golden Zone: first touch of the zone
No zone-interaction alert can fire on the candle that creates a setup; signals are eligible from the following confirmed candle.
Bar-close confirmation is enforced in code (barstate.isconfirmed is part of every alert condition); alerts cannot trigger intrabar regardless of the frequency you pick. Still select “Once Per Bar Close”.
Advanced Fibonacci Golden Zone combines confirmed market structure, automatic Fibonacci mapping and complete setup management in one tool. It helps traders identify fresh retracement opportunities without manually drawing Fibonacci levels while keeping invalidation, projections and alerts consistent. Use it alongside trend context, price action and proper risk management—not as a standalone entry signal.
We would love to hear your suggestions. If you have ideas for new features, indicators, analytics, or improvements, please share your feedback. Your input helps guide future updates and improve the indicator for all traders.
Wedge pattern detector indicator is for educational and analytical purposes only. It is not financial advice. Trading involves risk. Always use proper risk management and combine this indicator with your own analysis before taking any trade.
Wskaźnik

Wskaźnik

Strategia

Darwin 40-40 MidlineThe Darwin 40-40 Midline is a custom overlay indicator designed to track and display a dynamic midpoint of price action, anchoring to a specific time interval. Rather than using standard hourly or daily resets, this script resets its tracking specifically at the 40th minute of every hour, providing a unique intra-hour perspective on price equilibrium.
How It Works (The Logic)
This indicator utilizes a dynamic high/low range calculation to plot a continuous midline:
The Reset: The script monitors the timestamp of each bar. As soon as the time hits the 40th minute of the hour (e.g., 09:40, 10:40, 11:40), the indicator resets its internal high and low anchor points to the high and low of that specific bar.
The Dynamic Midpoint: For every subsequent bar following the 40-minute mark, the script checks if price has broken the anchored high or low. If a new high or low is established, the range is updated.
The Plot: The indicator dynamically draws a line at the exact mathematical center of this expanding range (Highest High + Lowest Low) / 2. The line extends forward with each new bar, visually adjusting its level in real-time as the range expands.
How to Use It
Traders often use dynamic midpoints as shifting zones of support, resistance, or trend bias:
Trend Bias: When the price sustains itself above the active midline, the intra-hour bias can be interpreted as bullish. Conversely, trading below the midline suggests a bearish bias.
Mean Reversion: In ranging environments, extended moves away from the midline might be viewed as overextended, with the midline acting as a natural magnet for mean-reversion trades.
Breakouts: A sudden expansion of the range (which shifts the midline drastically) can highlight increasing volatility and potential breakout direction following the 40-minute reset.
Settings & Customization
The indicator includes a dedicated "Midline Settings" group in the configuration menu, allowing users to fully customize the visual appearance of the line to fit any chart theme. Users can adjust:
Midline Color: Change the color of the dynamic line (defaults to yellow).
Midline Width: Adjust the thickness of the line (1 to 5).
Style: Choose between Solid, Dashed, or Dotted line styles.
happy Trading!!!! Wskaźnik

Wskaźnik

Wskaźnik

Wskaźnik

CME Trading Day SeparatorCME Trading Day Separator helps visualize the start of each CME trading day by drawing clean vertical dashed separator lines on intraday charts.
By default, the indicator uses the official CME futures session rollover at 18:00 New York time (America/New_York), automatically handling Daylight Saving Time (DST). This makes it ideal for traders analyzing Nasdaq (NQ), S&P 500 (ES), Gold (GC), Crude Oil (CL), and other CME futures.
Features:
📅 Draws a vertical dashed line at the beginning of every CME trading day.
🕕 Default session start at 18:00 New York time, fully customizable.
🌎 Uses the America/New_York timezone to automatically adjust for DST.
🎨 Customize line color and line width.
🗓️ Optionally display weekday labels.
🔤 Choose between short (Mon, Tue, Wed...) or full (Monday, Tuesday...) weekday names.
📉 Option to display only Monday–Friday trading days.
⚡ Lightweight and optimized for intraday trading.
This indicator is designed to provide a clean visual separation between trading days without cluttering your charts, making session analysis, ICT concepts, and daily market structure significantly easier. Wskaźnik

EMA Ribbon Trend Filter [StrixEDGE]EMA Ribbon Trend Filter is a multi-layered trend analysis system built around a triple EMA ribbon (8/21/55) enhanced with squeeze detection, a composite momentum score, multi-timeframe confluence, and dynamic slope-adaptive coloring.
This is not another moving average overlay. It is a full trend diagnostics dashboard designed to answer five questions at a glance: what is the trend, how strong is it, how long has it been running, is the ribbon compressing toward a breakout, and do higher timeframes agree.
🔹 CORE CONCEPT
Three exponential moving averages — fast (8), mid (21), and slow (55) — form a visual ribbon on the chart. When the EMAs stack in order (fast > mid > slow), the trend is bullish. When they invert, the trend is bearish. Anything else is a transitional state labeled neutral.
The ribbon is more than directional. The distance between the fastest and slowest EMA (the "spread") measures trend strength as a percentage, and the rate at which the ribbon expands or contracts reveals momentum shifts before price confirms them.
🔹 WHAT MAKES THIS DIFFERENT
Most EMA ribbons stop at direction and color. This indicator adds four analytical layers that standard ribbons lack:
▸ Ribbon Squeeze Detection
The indicator continuously measures ribbon width against its own moving average. When the three EMAs converge below a configurable threshold (default: 30% of average width), the ribbon turns yellow and the dashboard flags an active squeeze. Compression precedes expansion — a squeeze ending often marks the start of a directional move. Dedicated markers appear on the chart when a squeeze releases into a bullish or bearish trend.
▸ Composite Momentum Score (0–100)
A single number synthesizing four components, each weighted equally at 25 points:
— EMA alignment: full bullish or bearish stack scores 25, mixed scores 0
— Slope agreement: all three EMAs rising or all falling scores 25, partial agreement scores 12
— Spread strength: scaled between 0–25 based on where the current spread falls relative to the user-defined weak and strong thresholds
— Price position: price above the ribbon in a bullish trend (or below in bearish) scores 25, inside the ribbon scores 10, on the wrong side scores 0
The score is color-coded: cyan (80+), teal (60–79), orange (40–59), red (below 40).
▸ Dynamic Slope-Adaptive Colors
When enabled, each EMA line independently changes color based on its own slope — rising EMAs render green, falling EMAs render red. This provides an early visual warning when individual EMAs begin to flatten or turn, even while the overall stack remains intact. A bullish stack where the slow EMA has turned red is a qualitatively different signal than one where all three are green.
▸ Multi-Timeframe Dashboard
A built-in table displays trend state, spread, and grade across five timeframes simultaneously: the current chart timeframe plus 15-minute, 1-hour, 4-hour, and daily. The active chart timeframe is marked with ► in the MTF rows if it matches one of the fixed timeframes. A confluence row at the bottom counts how many timeframes are bullish versus bearish and outputs a directional bias: Strong Bull (4–5 aligned), Bull Lean (3), Neutral (mixed), Bear Lean (3 bearish), or Strong Bear (4–5 bearish).
🔹 CROSSOVER SIGNAL HIERARCHY
Not all EMA crossovers carry equal weight. The indicator differentiates three tiers with distinct marker sizes and shapes:
▸ Fast × Mid (tiny triangles) — Early signal. The 8 EMA crossing the 21 EMA indicates short-term momentum shift. Frequent, noisy, best used as an alert rather than a trigger.
▸ Fast × Slow (standard triangles) — Confirmation signal. The 8 EMA crossing the 55 EMA has more significance and filters out minor pullbacks.
▸ Mid × Slow (diamonds) — Trend shift signal. The 21 EMA crossing the 55 EMA typically marks a genuine change in trend direction. This is the least frequent and most reliable crossover in the set.
All crossover markers can be toggled off independently.
🔹 DASHBOARD COMPONENTS
The top-right dashboard (position and size adjustable) contains:
Row 1 — TREND: Current trend state (▲ Bullish / ▼ Bearish / ◆ Neutral) with bar count showing how long the trend has been active.
Row 2 — ZONE: Where price sits relative to the ribbon (Above / Inside / Below) alongside the momentum score out of 100.
Row 3 — SQUEEZE: Active squeeze status with a visual strength bar (██████░░░░) showing current spread intensity relative to its recent range.
Rows 4–9 — MTF OVERVIEW: Trend, spread, and grade for the current chart, 15m, 1H, 4H, and 1D timeframes.
Row 10 — BIAS: Multi-timeframe confluence verdict with bull/bear count.
🔹 SETTINGS
EMA Settings
▸ Fast / Mid / Slow EMA Period — Default 8/21/55. Periods must be in ascending order.
▸ Source — Close, Open, High, Low, HL2, HLC3, or OHLC4.
Overlay Settings
▸ Background Transparency — Controls the intensity of the trend-colored chart background (0–99).
▸ Crossover Signals — Toggle the three-tier crossover markers.
▸ Ribbon Fill — Toggle the colored fill between EMA lines. Fill turns yellow during active squeeze.
▸ Dynamic EMA Colors — Toggle slope-based EMA coloring (green = rising, red = falling).
▸ Bar Coloring — Optional candle coloring by trend state and price position. Off by default.
▸ Squeeze Detection — Toggle squeeze markers and dashboard squeeze status.
Dashboard
▸ Table Size — Tiny, Small, Normal, or Large.
▸ Table Position — 8 positions (corners, centers, sides).
Thresholds
▸ Weak/Strong spread thresholds (%) — Define what constitutes a weak, moderate, or strong trend spread. These should be adjusted per asset class (e.g., lower for forex, higher for crypto).
▸ Squeeze Lookback — Number of bars used to calculate the average ribbon width for squeeze detection.
▸ Squeeze Ratio — The compression threshold. A ribbon narrower than this ratio × average width triggers a squeeze flag.
🔹 ALERTS
Nine configurable alert conditions:
▸ Bullish / Bearish EMA Crossover (any tier)
▸ Mid × Slow Bullish / Bearish Shift
▸ Bullish / Bearish Stack Formed
▸ Squeeze Detected (compression begins)
▸ Squeeze Released (expansion starts)
▸ High Momentum (score crosses above 80)
🔹 SUGGESTED USE
This indicator works as a trend filter, not a standalone entry signal. Use it to:
▸ Confirm directional bias across timeframes before entering trades
▸ Identify compression phases where breakouts are likely
▸ Gauge trend quality and exhaustion via the momentum score and bar duration
▸ Filter crossover signals — a Fast × Mid cross during an active squeeze with MTF confluence is a higher-probability setup than the same cross in isolation
Pairs well with oscillators (RSI, Stochastic), volume-based indicators, or support/resistance tools for entry timing. Wskaźnik

BTC DCA Strategy [3Commas & QuantPilot]BTC Smart DCA Strategy
🔷 What it does:
This is a long-only DCA (Dollar-Cost Averaging) strategy for BTC / USDT that opens a position only in oversold conditions and then averages down on a fixed safety-order ladder. A base order fires when 4h RSI(14) drops below the entry threshold; if price keeps falling, five averaging orders add to the position at fixed deviations from the base entry, each larger than the last. The full position is closed at a fixed take-profit above the blended average entry. There is no trailing exit and no stop loss — the position is structurally bounded by the five-order ladder.
- Single entry filter: 4h RSI(14) below 38 (oversold).
- Five averaging orders at fixed deviations (−2%, −5%, −9.5%, −16%, −25%) with 1.8× size scaling per rung.
- Fixed take-profit (5.5%) on the blended average entry; no trailing, no stop loss.
- Every fill and close emits a webhook-ready JSON alert payload for a DCA Bot.
🔷 What changed — two parameters, tuned with QuantPilot:
This strategy started from a baseline configuration (RSI entry below 28, 3% take-profit). Running the same script, on the same market, over the same period through the QuantPilot Pine Script optimizer, two parameters were swept and re-selected: the RSI entry threshold moved from 28 to 38, and the take-profit moved from 3% to 5.5%. Everything else was left untouched — same five-order ladder, same deviations, same 1.8× sizing, same fees.
- Baseline (RSI < 28, TP 3%): Net +3,078.29 USDT (+3.08%), Max Drawdown 3.79%, 62 closed trades, 70.97% profitable, Profit Factor 4.028.
- Optimized (RSI < 38, TP 5.5%): Net +9,250.25 USDT (+9.25%), Max Drawdown 3.67%, 93 closed trades, 76.34% profitable, Profit Factor 10.454.
The result: net profit roughly 3× higher (+3.08% → +9.25%), profit factor up from 4.0 to 10.5, win rate up from 71% to 76% — all while maximum drawdown stayed essentially flat (3.79% → 3.67%). The looser RSI entry (38) lets the strategy engage the dip earlier and more often, while the wider 5.5% target lets each recovery run further before the position is banked. The published defaults use the optimized values; the baseline metrics are shown here purely so the effect of the two parameter changes is transparent.
🔷 Who is it for:
- Swing traders accumulating BTC on RSI pullbacks rather than chasing momentum.
- Bot operators who want a chart-driven signal source with base / safety-order / close webhook JSON ready to drive a DCA Bot.
- Traders comfortable with martingale-style averaging who size their capital to the worst-case ladder fill.
- Range / mean-reversion traders who prefer mechanical oversold entries over discretionary timing.
🔷 How does it work:
Entry (Base Order): On each closed 4h bar the strategy reads RSI(14). When RSI falls below 38 and there is no open position, it opens the base order at market (or limit, optionally) and dispatches the entry webhook.
Averaging Orders: Once in a position, the strategy watches price relative to the original base entry. The five safety orders are armed at fixed deviations from that base entry — not cumulatively — at −2%, −5%, −9.5%, −16%, and −25%. As each threshold is crossed on bar close, the corresponding averaging order fires. Order sizes scale 1.8× per rung ($900 → $1,620 → $2,916 → $5,249 → $9,448 from a $500 base), pulling the blended average entry down toward the latest fill.
Exit (Take Profit): While in a position, the strategy computes a take-profit price 5.5% above the current average entry. When price closes at or above that level, the entire position is closed at market and the close webhook fires. There is no trailing and no stop loss.
Capital Bounds: Total deployed capital cannot exceed the base order plus the five safety orders. Once all five averaging orders are filled, no further adds occur — the position simply waits for the take-profit. This ladder cap is the strategy's primary risk control.
🔷 Why it's unique:
- Optimizer-Tuned Parameters: The RSI threshold (38) and take-profit (5.5%) are not arbitrary — they are the values the QuantPilot Pine Script optimizer selected as best-performing on the historical sample, with every other parameter held constant.
- Fixed-Deviation Martingale Ladder: Safety orders are placed at fixed percentages from the base entry with deliberate 1.8× size scaling, so each rung has progressively more influence on the average — a transparent, fully-specified averaging schedule rather than an opaque adaptive grid.
- Full Webhook Chain: Base order, each safety order, and the close all emit dedicated JSON payloads, driving a DCA Bot end-to-end with no glue layer.
- On-Chart Transparency: The AO ladder, average entry, and take-profit target are plotted live, and the status table reports RSI, AOs filled, base/average entry, TP target, and max deployable capital.
🔷 Considerations Before Using the Strategy:
Optimization / Overfitting Risk: The RSI threshold and take-profit were selected by sweeping those parameters over the same historical window shown in the results. Values that were best in-sample are not guaranteed to be best out-of-sample — this is the standard caveat for any optimized parameter. Treat the optimized metrics as the ceiling of what this configuration achieved historically, not as a forward expectation, and re-validate on fresh data before committing capital.
Trade Volume — Near the Statistical Floor: The optimized configuration produced 93 closed trades over ~30 months (62 on the baseline). This is approaching but still below the ~100-trade threshold often used as a floor for statistical relevance, so treat the win rate and the high profit factor as indicative rather than conclusive.
Martingale Tail Risk: Order sizes scale 1.8× per rung, so the deepest fills are by far the largest. If BTC trends hard below the −25% AO5 level without recovering to take-profit, the position sits fully loaded with no further adds and no stop — unrealized loss can grow until price reverts.
No Stop Loss Justification: There is no exit on adverse moves. Per-order risk is bounded by the fixed ladder allocation; aggregate exposure is capped at base + five AOs (≈ $20,633 on the default $100k account, ~20.6% of equity). Size the base/AO inputs down to match the worst-case exposure you are willing to hold.
Fees: The default commission (0.06% per trade) should be matched to your exchange's actual taker fees.
Demo Testing: Always demo-test before going live. Past results do not guarantee future performance, particularly for martingale-style averaging strategies whose risk profile is dominated by rare deep drawdowns.
🔷 STRATEGY PROPERTIES
Symbol: BYBIT:BTCUSDT.P (Perpetual) — strategy is portable to any BTC / USDT pair.
Timeframe: 4H (RSI sampled on 4h).
Test Period: January 1, 2024 — July 17, 2026 (~30 months).
Initial Capital: 100,000 USDT.
Base Order Size: 500 USDT.
Averaging Orders: 5, at −2% / −5% / −9.5% / −16% / −25% from base entry.
AO Sizing: 1.8× per rung — 900 / 1,620 / 2,916 / 5,249 / 9,448 USDT.
Max Deployed Capital: ≈ 20,633 USDT (~20.6% of equity, all AOs filled).
Commission: 0.06% per trade.
Slippage: 3 ticks.
Entry Filter: 4h RSI(14) below 38 (optimizer-tuned from 28).
Take Profit: 5.5% above average entry (optimizer-tuned from 3%).
Stop Loss: None — ladder allocation is the structural risk cap.
Trailing: None.
Strategy: Long Only.
🔷 STRATEGY RESULTS (Optimized — RSI < 38, TP 5.5%)
⚠️ Remember, past results do not guarantee future performance.
Net Profit: +9,250.25 USDT (+9.25%)
Max Equity Drawdown: 3,980.36 USDT (3.67%)
Total Closed Trades: 93
Percent Profitable: 76.34% (71 / 93)
Profit Factor: 10.454
🔷 STRATEGY RESULTS (Baseline — RSI < 28, TP 3%, for comparison)
Net Profit: +3,078.29 USDT (+3.08%)
Max Equity Drawdown: 3,852.12 USDT (3.79%)
Total Closed Trades: 62
Percent Profitable: 70.97% (44 / 62)
Profit Factor: 4.028
🔷 How to Use It:
🔸 Adjust Settings: Open the strategy inputs and confirm the RSI level (default 38), the five AO deviations and sizes, and the Take Profit (default 6%) match your risk profile. Scale the base/AO sizes down for lower exposure.
🔸 Results Review: Run a full-period backtest and confirm Max Drawdown stays within your personal risk band — note the optimized configuration reached 3.67%. Keep in mind the 93-trade sample is just below the ~100-trade floor for statistical confidence, and the high profit factor reflects that small, optimized sample.
🔸 Create alerts to trigger the DCA Bot: Add one alert on the strategy using "Any alert() function call". Paste your DCA Bot's webhook URL into the alert's Webhook field, and fill the Bot ID, Email Token, and Pair inputs on the script. The base order, each safety order, and the close will each emit a dedicated JSON payload.
🔷 INDICATOR SETTINGS
Base Order Size: Capital committed on the first (base) entry.
AO Deviations: Fixed percentage distances from the base entry where each safety order fires.
AO Sizes: Capital per safety order (1.8× scaling by default).
RSI Timeframe / Length / Level: Oversold filter for the base entry (default 4h, 14, below 38 — optimizer-tuned).
Take Profit (%): Distance above average entry where the full position closes (default 5.5%, optimizer-tuned).
Bot ID / Email Token / Pair: Webhook fields injected into every alert payload.
Visualization: Toggle the AO ladder, fill labels, avg/TP lines, and status table.
Brand Watermark: Configurable text, position, size, and transparency.
👨🏻💻💭 We hope this tool helps enhance your trading. Your feedback is invaluable, so feel free to share any suggestions for improvements or new features you'd like to see implemented.
__
The information and publications within the 3Commas TradingView account are not meant to be and do not constitute financial, investment, trading, or other types of advice or recommendations supplied or endorsed by 3Commas and any of the parties acting on behalf of 3Commas, including its employees, contractors, ambassadors, etc. Strategia

Auto Fibonacci ZonesAuto Fibonacci Zones is a visual Fibonacci retracement tool built around confirmed swing pivots.
The script automatically detects the most recent significant swing leg using confirmed pivot highs and pivot lows, then draws Fibonacci retracement levels from that leg. It is designed to reduce the need for manually redrawing Fibonacci levels each time a new swing structure forms.
What the script shows
- Fibonacci retracement levels from the latest confirmed swing leg
- Optional Fibonacci extension levels
- A highlighted 0.5 - 0.618 retracement zone
- A dashed anchor leg showing the selected swing
- A compact state label describing the current retracement condition
- Optional alerts for key retracement events
How it works
The script uses confirmed pivot highs and confirmed pivot lows to define the current swing leg. A new Fibonacci sheet is accepted only when the detected high-low leg is large enough relative to ATR. This helps avoid redrawing levels on very small price movements.
The main retracement levels include:
- 0
- 0.382
- 0.5
- 0.618
- 0.786
- 1
The script can also show optional extension levels:
- 1.272
- 1.618
Extensions are disabled by default because they are reference geometry only and should not be interpreted as price forecasts.
Level sets
The user can choose between three level display modes:
- Core: shows 0, 0.5, 0.618, and 1
- Major: shows the main Fibonacci levels with a cleaner chart layout
- Standard: shows the common retracement levels
Golden zone
The script highlights the area between 0.5 and 0.618. This zone is commonly watched by traders as a retracement area, but it should not be treated as a guaranteed reversal zone or standalone trading signal.
State label
The state label gives a quick reading of the current retracement condition, such as:
- Shallow retracement
- Deep retracement
- Inside 0.5 - 0.618 zone
- Near full retrace
- Full retrace exceeded
- Beyond 0 level
The state label is only a descriptive reading of where price is relative to the current Fibonacci sheet.
Old or inactive sheets
The script includes options to fade older or fully retraced Fibonacci sheets. This helps keep the chart clean when the selected swing leg is no longer fresh or has already been fully retraced.
Main settings
Swing Detection:
- Pivot strength
- Minimum leg height x ATR
Levels:
- Level set
- Show extensions
- Shade 0.5 - 0.618 zone
Display:
- Show anchor leg
- Show level labels
- Show level prices
- Show state label
- State label offset
- Fade old / invalid sheet
- Expire sheet after bars
Lines and colors:
- Level line width
- Key level line width
- Anchor leg width
- Level colors
- Golden zone color
- Extension color
- Label colors
- Transparency controls
Alerts
The script includes alert conditions for:
- Price entering the 0.5 - 0.618 zone
- Price exiting the 0.5 - 0.618 zone
- Price crossing the 0.618 level
- Price touching or exceeding the 1.0 retracement level
- Price retesting the 0 level
These alerts are descriptive chart events. They are not buy or sell signals.
Repainting and confirmation note
This script uses confirmed pivot highs and confirmed pivot lows. A pivot can only be confirmed after the selected pivot-strength bars have passed.
Because of this, Fibonacci anchors appear only after confirmation. When a newer valid swing leg is confirmed, the current Fibonacci sheet can be replaced by the new one.
This is normal confirmation delay for pivot-based tools. The script does not use lookahead, and the levels are based on confirmed swing structure.
Limitations
Fibonacci levels are visual reference levels, not predictive levels.
A price reaction near any Fibonacci level does not guarantee continuation, reversal, support, or resistance.
The selected swing leg is determined automatically by the script. In some cases, a trader may manually choose a different swing leg based on broader market context.
This indicator is intended for chart analysis, education, and visual review of retracement structure. It is not a trading system, financial advice, or a standalone buy/sell tool. Wskaźnik

Likvidita ERL - Sweeps & Equal Highs/Lows CoreX# Liquidity ERL - Sweeps & Equal Highs/Lows
**Description:**
This indicator maps External Range Liquidity (ERL) and detects liquidity sweeps confirmed by volume — swing highs/lows, equal-highs/equal-lows pools, previous day/week high-low, the Asian session range, and session VWAP, all in one script.
**What the script does**
Liquidity tends to pool at swing highs and lows, since retail stop-loss and breakout orders concentrate there. The script identifies confirmed swing points and draws them as BSL (buy-side liquidity, above price) or SSL (sell-side liquidity, below price) lines. When two or more swings form within a configurable ATR-based tolerance, they merge into a single EQH/EQL pool instead of two separate lines — the more swings merge into one level, the thicker the line gets, visually flagging it as a stronger, more significant zone.
Alongside swing-based liquidity, the script tracks Previous Day High/Low, Previous Day High/Low... wait let me continue: Previous Week High/Low, and the Asian session's high/low range (shown live as a highlighted box while the session is active, then locked in as a level once the session closes) — three classic external liquidity references used by both day and swing traders.
A liquidity sweep is flagged when price wicks through one of these levels and closes back on the original side. Not every sweep is treated as significant: the script cross-checks the sweep candle's volume against its own moving average. Sweeps backed by volume well above average are marked as "quality" sweeps (institutional absorption, likely reversal signal); sweeps on thin volume are treated as probable fakeouts / failed auctions and, by default, are hidden rather than alerted on — a deliberate design choice, since a liquidity grab without volume is a fundamentally different (and far less reliable) pattern than one with it.
**How to read it**
Line color indicates the liquidity type (see the built-in on-chart legend, togglable from settings — position and text size are configurable). A ✓ appended to a label means the sweep was volume-confirmed; a ~ means it wasn't. Once a level is swept, it either disappears (default) or turns gray and dotted, depending on your settings.
**Settings**
Configurable swing sensitivity, equal-highs/lows tolerance (ATR-based), which reference levels to show (day/week/Asia), volume MA length and the multiplier required for a "quality" sweep, session VWAP toggle, full color customization, and separate alerts for quality vs. weak sweeps.
**Disclaimer**
This indicator visualizes liquidity concepts from Smart Money / ICT methodology and is intended for analytical and educational purposes only. It does not constitute financial advice or a trading signal — all trading decisions and associated risks remain solely with the user. Note that on spot forex/CFD symbols, "volume" reflects broker tick volume rather than true traded volume; the quality filter is relative (current vs. its own average) so it remains useful, but isn't directly comparable to real exchange volume (e.g. CME futures). Wskaźnik

Gamma Exposure Profile - Manual Chain InputA self-contained dealer-gamma calculator. Pine cannot fetch external data, so
instead of shipping stale hardcoded levels, this script takes the option
chain as USER INPUT: paste strike rows into the settings and it computes the
full gamma exposure profile on your chart — no republishing, never stale.
What makes it original: most "GEX" scripts on TradingView approximate gamma
from price or volume. This one implements the actual model — Black-Scholes
gamma per strike from open interest and implied volatility, aggregated with
the standard dealer sign convention (long call gamma, short put gamma) — and
derives the flip point by scanning where total exposure changes sign, the
same way institutional GEX tools do.
How it works:
- Input format (one paste): a header line
`#spot=24900;dte=21;mult=5;iv=0.18;date=2026-07-17`
followed by one line per strike: `strike;callOI;putOI `.
- Per strike, the script computes Black-Scholes gamma (r = 0) and the signed
dealer exposure `gamma x (callOI - putOI) x multiplier x spot² x 1%`.
- Gamma flip = the zero crossing of total exposure over a spot grid (closest
to spot); call/put walls = strikes with the largest positive / most
negative exposure; second walls dashed; expected move from ATM IV.
- A second optional text area takes a near-dated chain (e.g. 0-5 DTE) for
the short-term walls, drawn dotted — structure vs day-weather separation.
- The histogram next to price shows the signed per-strike profile; the
background colors the regime (above flip = long gamma, below = short
gamma); a date in the header enables a staleness warning after 36h.
- Alerts: flip cross up/down, put-wall break/reclaim, call-wall break.
How to use it: pull the option chain of the underlying index (your broker
platform or the exchange's public chain), paste the strike rows once per day,
and read the chart: above the flip, dealer hedging dampens moves (mean
reversion toward walls, pinning); below the flip it amplifies them (trend
days, trapdoor under the put wall). The levels are model estimates from your
own snapshot — context, not trade signals.
*This script is part of a consistent set of open-source session, range and
volume tools — the companions are on my profile.*
Wskaźnik
