Fibonacci Circle Zones🟩 The Fibonacci Circle Zones indicator is a technical visualization tool, building upon the concept of traditional Fibonacci circles. It provides configurable options for analyzing geometric relationships between price and time, used to identify potential support and resistance zones derived from circle-based projections. The indicator constructs these Fibonacci circles based on two user-selected anchor points (Point A and Point B), which define the foundational price range and time duration for the geometric analysis.
Key features include multiple mathematical Circle Formulas for radius scaling and several options for defining the circle's center point, enabling exploration of complex, non-linear geometric relationships between price and time distinct from traditional linear Fibonacci analysis. Available formulas incorporate various mathematical constants (π, e, φ variants, Silver Ratio) alongside traditional Fibonacci ratios, facilitating investigation into different scaling hypotheses. Furthermore, selecting the Center point relative to the A-B anchors allows these circular time-price patterns to be constructed and analyzed from different geometric perspectives. Analysis can be further tailored through detailed customization of up to 12 Fibonacci levels, including their mathematical values, colors, and visibility..
📚 THEORY and CONCEPT 📚
Fibonacci circles represent an application of Fibonacci principles within technical analysis, extending beyond typical horizontal price levels by incorporating the dimension of time. These geometric constructions traditionally use numerical proportions, often derived from the Fibonacci sequence, to project potential zones of price-time interaction, such as support or resistance. A theoretical understanding of such geometric tools involves considering several core components: the significance of the chosen geometric origin or center point , the mathematical principles governing the proportional scaling of successive radii, and the fundamental calculation considerations (like chart scale adjustments and base radius definitions) that influence the resulting geometry and ensure its accurate representation.
⨀ Circle Center ⨀
The traditional construction methodology for Fibonacci circles begins with the selection of two significant anchor points on the chart, usually representing a key price swing, such as a swing low (Point A) and a subsequent swing high (Point B), or vice versa. This defined segment establishes the primary vector—representing both the price range and the time duration of that specific market move. From these two points, a base distance or radius is derived (this calculation can vary, sometimes using the vertical price distance, the time duration, or the diagonal distance). A center point for the circles is then typically established, often at the midpoint (time and price) between points A and B, or sometimes anchored directly at point B.
Concentric circles are then projected outwards from this center point. The radii of these successive circles are calculated by multiplying the base distance by key Fibonacci ratios and other standard proportions. The underlying concept posits that markets may exhibit harmonic relationships or cyclical behavior that adheres to these proportions, suggesting these expanding geometric zones could highlight areas where future price movements might decelerate, reverse, or find equilibrium, reflecting a potential proportional resonance with the initial defining swing in both price and time.
The Fibonacci Circle Zones indicator enhances traditional Fibonacci circle construction by offering greater analytical depth and flexibility: it addresses the origin point of the circles: instead of being limited to common definitions like the midpoint or endpoint B, this indicator provides a selection of distinct center point calculations relative to the initial A-B swing. The underlying idea is that the geometric source from which harmonic projections emanate might vary depending on the market structure being analyzed. This flexibility allows for experimentation with different center points (derived algorithmically from the A, B, and midpoint coordinates), facilitating exploration of how price interacts with circular zones anchored from various perspectives within the defining swing.
Potential Center Points Setup : This view shows the anchor points A and B , defined by the user, which form the basis of the calculations. The indicator dynamically calculates various potential Center points ( C through N , and X ) based on the A-B structure, representing different geometric origins available for selection in the settings.
Point X holds particular significance as it represents the calculated midpoint (in both time and price) between A and B. This 'X' point corresponds to the default 'Auto' center setting upon initial application of the indicator and aligns with the centering logic used in TradingView's standard Fibonacci Circle tool, offering a familiar starting point.
The other potential center points allow for exploring circles originating from different geometric anchors relative to the A-B structure. While detailing the precise calculation for each is beyond the scope of this overview, they can be broadly categorized: points C through H are derived from relationships primarily within the A-B time/price range, whereas points I through N represent centers projected beyond point B, extrapolating the A-B geometry. Point J, for example, is calculated as a reflection of the A-X midpoint projected beyond B. This variety provides a rich set of options for analyzing circle patterns originating from historical, midpoint, and extrapolated future anchor perspectives.
Default Settings (Center X, FibCircle) : Using the default Center X (calculated midpoint) with the default FibCircle . Although circles begin plotting only after Point B is established, their curvature shows they are geometrically centered on X. This configuration matches the standard TradingView Fib Circle tool, providing a baseline.
Centering on Endpoint B : Using Point B, the user-defined end of the swing, as the Center . This anchors the circular projections directly to the swing's termination point. Unlike centering on the midpoint (X) or start point (A), this focuses the analysis on geometric expansion originating precisely from the conclusion of the measured A-B move.
Projected Center J : Using the projected Point J as the Center . Its position is calculated based on the A-B swing (conceptually, it represents a forward projection related to the A-X midpoint relationship) and is located chronologically beyond Point B. This type of forward projection often allows complete circles to be visualized as price develops into the corresponding time zone.
Time Symmetry Projection (Center L) : Uses the projected Point L as the Center . It is located at the price level of the start point (A), projected forward in time from B by the full duration of the A-B swing . This perspective focuses analysis on temporal symmetry , exploring geometric expansions from a point representing a full time cycle completion anchored back at the swing's origin price level.
⭕ Circle Formula
Beyond the center point , the expansion of the projected circles is determined by the selected Circle Formula . This setting provides different mathematical methods, or scaling options , for scaling the circle radii. Each option applies a distinct mathematical constant or relationship to the base radius derived from the A-B swing, allowing for exploration of various geometric proportions.
eScaled
Mathematical Basis: Scales the radius by Euler's number ( e ≈ 2.718), the base of natural logarithms. This constant appears frequently in processes involving continuous growth or decay.
Enables investigation of market geometry scaled by e , exploring relationships potentially based on natural exponential growth applied to time-price circles, potentially relevant for analyzing phases of accelerating momentum or volatility expansion.
FibCircle
Mathematical Basis: Scales the radius to align with TradingView’s built-in Fibonacci Circle Tool.
Provides a baseline circle size, potentially emulating scaling used in standard drawing tools, serving as a reference point for comparison with other options.
GoldenFib
Mathematical Basis: Scales the radius by the Golden Ratio (φ ≈ 1.618).
Explores the fundamental Golden Ratio proportion, central to Fibonacci analysis, applied directly to circular time-price geometry, potentially highlighting zones reflecting harmonic expansion or retracement patterns often associated with φ.
GoldenContour
Mathematical Basis: Scales the radius by a factor derived from Golden Ratio geometry (√(1 + φ²) / 2 ≈ 0.951). It represents a specific geometric relationship derived from φ.
Allows analysis using proportions linked to the geometry of the Golden Rectangle, scaled to produce circles very close to the initial base radius. This explores structural relationships often associated with natural balance or proportionality observed in Golden Ratio constructions.
SilverRatio
Mathematical Basis: Scales the radius by the Silver Ratio (1 + √2 ≈ 2.414). The Silver Ratio governs relationships in specific regular polygons and recursive sequences.
Allows exploration using the proportions of the Silver Ratio, offering a significant expansion factor based on another fundamental metallic mean for comparison with φ-based methods.
PhiDecay
Mathematical Basis: Scales the radius by φ raised to the power of -φ (φ⁻ᵠ ≈ 0.53). This unique exponentiation explores a less common, non-linear transformation involving φ.
Explores market geometry scaled by this specific phi-derived factor which is significantly less than 1.0, offering a distinct contractile proportion for analysis, potentially relevant for identifying zones related to consolidation phases or decaying momentum.
PhiSquared
Mathematical Basis: Scales the radius by φ squared, normalized by dividing by 3 (φ² / 3 ≈ 0.873).
Enables investigation of patterns related to the φ² relationship (a key Fibonacci extension concept), visualized at a scale just below 1.0 due to normalization. This scaling explores projections commonly associated with significant trend extension targets in linear Fibonacci analysis, adapted here for circular geometry.
PiScaled
Mathematical Basis: Scales the radius by Pi (π ≈ 3.141).
Explores direct scaling by the fundamental circle constant (π), investigating proportions inherent to circular geometry within the market's time-price structure, potentially highlighting areas related to natural market cycles, rotational symmetry, or full-cycle completions.
PlasticNumber
Mathematical Basis: Scales the radius by the Plastic Number (approx 1.3247), the third metallic mean. Like φ and the Silver Ratio, it is the solution to a specific cubic equation and relates to certain geometric forms.
Introduces another distinct fundamental mathematical constant for geometric exploration, comparing market proportions to those potentially governed by the Plastic Number.
SilverFib
Mathematical Basis: Scales the radius by the reciprocal Golden Ratio (1/φ ≈ 0.618).
Explores proportions directly related to the core 0.618 Fibonacci ratio, fundamental within Fibonacci-based geometric analysis, often significant for identifying primary retracement levels or corrective wave structures within a trend.
Unscaled
Mathematical Basis: No scaling applied.
Provides the base circle defined by points A/B and the Center setting without any additional mathematical scaling, serving as a pure geometric reference based on the A-B structure.
🧪 Advanced Calculation Settings
Two advanced settings allow further refinement of the circle calculations: matching the chart's scale and defining how the base radius is calculated from the A-B swing.
The Chart Scale setting ensures geometric accuracy by aligning circle calculations with the chart's vertical axis display. Price charts can use either a standard (linear) or logarithmic scale, where vertical distances represent price changes differently. The setting offers two options:
Standard : Select this option when the price chart's vertical axis is set to a standard linear scale.
Logarithmic : It is necessary to select this option if the price chart's vertical axis is set to a logarithmic scale. Doing so ensures the indicator adjusts its calculations to maintain correct geometric proportions relative to the visual price action on the log-scaled chart.
The Radius Calc setting determines how the fundamental base radius is derived from the A-B swing, offering two primary options:
Auto : This is the default setting and represents the traditional method for radius calculation. This method bases the radius calculation on the vertical price range of the A-B swing, focusing the geometry on the price amplitude.
Geometric : This setting provides an alternative calculation method, determining the base radius from the diagonal distance between Point A and Point B. It considers both the price change and the time duration relative to the chart's aspect ratio, defining the radius based on the overall magnitude of the A-B price-time vector.
This choice allows the resulting circle geometry to be based either purely on the swing's vertical price range ( Auto ) or on its combined price-time movement ( Geometric ).
🖼️ CHART EXAMPLES 🖼️
Default Behavior (X Center, FibCircle Formula) : This configuration uses the midpoint ( Center X) and the FibCircle scaling Formula , representing the indicator's effective default setup when 'Auto' is selected for both options initially. This is designed to match the output of the standard TradingView Fibonacci Circle drawing tool.
Center B with Unscaled Formula : This example shows the indicator applied to an uptrend with the Center set to Point B and the Circle Formula set to Unscaled . This configuration projects the defined levels (0.236, 0.382, etc.) as arcs originating directly from the swing's termination point (B) without applying any additional mathematical scaling from the formulas.
Visualization with Projected Center J : Here, circles are centered on the projected point J, calculated from the A-B structure but located forward in time from point B. Notice how using this forward-projected origin allows complete inner circles to be drawn once price action develops into that zone, providing a distinct visual representation of the expanding geometric field compared to using earlier anchor points. ( Unscaled formula used in this example).
PhiSquared Scaling from Endpoint B : The PhiSquared scaling Formula applied from the user-defined swing endpoint (Point B). Radii expand based on a normalized relationship with φ² (the square of the Golden Ratio), creating a unique geometric structure and spacing between the circle levels compared to other formulas like Unscaled or GoldenFib .
Centering on Swing Origin (Point A) : Illustrates using Point A, the user-defined start of the swing, as the circle Center . Note the significantly larger scale and wider spacing of the resulting circles. This difference occurs because centering on the swing's origin (A) typically leads to a larger base radius calculation compared to using the midpoint (X) or endpoint (B). ( Unscaled formula used).
Center Point D : Point D, dynamically calculated from the A-B swing, is used as the origin ( Center =D). It is specifically located at the price level of the swing's start point (A) occurring precisely at the time coordinate of the swing's end point (B). This offers a unique perspective, anchoring the geometric expansion to the initial price level at the exact moment the defining swing concludes. ( Unscaled formula shown).
Center Point G : Point G, also dynamically calculated from the A-B swing, is used as the origin ( Center =G). It is located at the price level of the swing's endpoint (B) occurring at the time coordinate of the start point (A). This provides the complementary perspective to Point D, anchoring the geometric expansion to the final price level achieved but originating from the moment the swing began . As observed in the example, using Point G typically results in very wide circle projections due to its position relative to the core A-B action. ( Unscaled formula shown).
Center Point I: Half-Duration Projection : Using the dynamically calculated Point I as the Center . Located at Point B's price level but projected forward in time by half the A-B swing duration , Point I's calculated time coordinate often falls outside the initially visible chart area. As the chart progresses, this origin point will appear, revealing large, sweeping arcs representing geometric expansions based on a half-cycle temporal projection from the swing's endpoint price. ( Unscaled formula shown).
Center Point M : Point M, also dynamically calculated from the A-B swing, serves as the origin ( Center =M). It combines the midpoint price level (derived from X) with a time coordinate projected forward from Point B by the full duration of the A-B swing . This perspective anchors the geometric expansion to the swing's balance price level but originates from the completion point of a full temporal cycle relative to the A-B move. Like other projected centers, using M allows for complete circles to be visualized as price progresses into its time zone. ( SilverFib formula shown).
Geometric Validation & Functionality : Comparing the indicator (red lines), using its default settings ( Center X, FibCircle Formula ), against TradingView's standard Fib Circle tool (green lines/white background). The precise alignment, particularly visible at the 1.50 and 2.00 levels shown, validates the core geometry calculation.
🛠️ CONFIGURATION AND SETTINGS 🛠️
The Fibonacci Circle Zones indicator offers a range of configurable settings to tailor its functionality and visual representation. These options allow customization of the circle origin, scaling method, level visibility, visual appearance, and input points.
Center and Formula
Settings for selecting the circle origin and scaling method.
Center : Dropdown menu to select the origin point for the circles.
Auto : Automatically uses point X (the calculated midpoint between A and B).
Selectable points including start/end (A, B), midpoint (X), plus various points derived from or projected beyond the A-B swing (C-N).
Circle Formula : Dropdown menu to select the mathematical method for scaling circle radii.
Auto : Automatically selects a default formula ('FibCircle' if Center is 'X', 'Unscaled' otherwise).
Includes standard Fibonacci scaling ( FibCircle, GoldenFib ), other mathematical constants ( PiScaled, eScaled ), metallic means ( SilverRatio ), phi transformations ( PhiDecay, PhiSquared ), and others.
Fib Levels
Configuration options for the 12 individual Fibonacci levels.
Advanced Settings
Settings related to core calculation methods.
Radius Calc : Defines how the base radius is calculated (e.g., 'Auto' for vertical price range, 'Geometric' for diagonal price-time distance).
Chart Scale : Aligns circle calculations with the chart's vertical axis setting ('Standard' or 'Logarithmic') for accurate visual proportions.
Visual Settings
Settings controlling the visual display of the indicator elements.
Plots : Dropdown controlling which parts of the calculated circles are displayed ( Upper , All , or Lower ).
Labels : Dropdown controlling the display of the numerical level value labels ( All , Left , Right , or None ).
Setup : Dropdown controlling the visibility of the initial setup graphics ( Show or Hide ).
Info : Dropdown controlling the visibility of the small information table ( Show or Hide ).
Text Size : Adjusts the font size for all text elements displayed by the indicator (Value ranges from 0 to 36).
Line Width : Adjusts the width of the circle plots (1-10).
Time/Price
Inputs for the anchor points defining the base swing.
These settings define the start (Point A) and end (Point B) of the price swing used for all calculations.
Point A (Time, Price) : Input fields for the exact time coordinate and price level of the swing's starting point (A).
Point B (Time, Price) : Input fields for the exact time coordinate and price level of the swing's ending point (B).
Interactive Adjustment : Points A and B can typically be adjusted directly by clicking and dragging their markers on the chart (if 'Setup' is set to 'Show'). Changes update settings automatically.
📝 NOTES 📝
Fibonacci circles begin plotting only once the time corresponding to Point B has passed and is confirmed on the chart. While potential center locations might be visible earlier (as shown in the setup graphic), the final circle calculations require the complete geometry of the A-B swing. This approach ensures that as new price bars form, the circles are accurately rendered based on the finalized A-B relationship and the chosen center and scaling.
The indicator's calculations are anchored to user-defined start (A) and end (B) points on the chart. When switching between charts with significantly different price scales (e.g., from an index at 5,000 to a crypto asset at $0.50), it is typically necessary to adjust these anchor points to ensure the circle elements are correctly positioned and scaled.
⚠️ DISCLAIMER ⚠️
The Fibonacci Circle Zones indicator is a visual analysis tool designed to illustrate Fibonacci relationships through geometric constructions incorporating curved lines, providing a structured framework for identifying potential areas of price interaction. Like all technical and visual indicators, these visual representations may visually align with key price zones in hindsight, reflecting observed price dynamics. It is not intended as a predictive or standalone trading signal indicator.
The indicator calculates levels and projections using user-defined anchor points and Fibonacci ratios. While it aims to align with TradingView’s standard Fibonacci circle tool by employing mathematical and geometric formulas, no guarantee is made that its calculations are identical to TradingView's proprietary methods.
🧠 BEYOND THE CODE 🧠
The Fibonacci Circle Zones indicator, like other xxattaxx indicators , is designed with education and community collaboration in mind. Its open-source nature encourages exploration, experimentation, and the development of new Fibonacci and grid calculation indicators and tools. We hope this indicator serves as a framework and a starting point for future Innovation and discussions.
Supportandresistancezones
ZigZag█ Overview
This Pine Script™ library provides a comprehensive implementation of the ZigZag indicator using advanced object-oriented programming techniques. It serves as a developer resource rather than a standalone indicator, enabling Pine Script™ programmers to incorporate sophisticated ZigZag calculations into their own scripts.
Pine Script™ libraries contain reusable code that can be imported into indicators, strategies, and other libraries. For more information, consult the Libraries section of the Pine Script™ User Manual.
█ About the Original
This library is based on TradingView's official ZigZag implementation .
The original code provides a solid foundation with user-defined types and methods for calculating ZigZag pivot points.
█ What is ZigZag?
The ZigZag indicator filters out minor price movements to highlight significant market trends.
It works by:
1. Identifying significant pivot points (local highs and lows)
2. Connecting these points with straight lines
3. Ignoring smaller price movements that fall below a specified threshold
Traders typically use ZigZag for:
- Trend confirmation
- Identifying support and resistance levels
- Pattern recognition (such as Elliott Waves)
- Filtering out market noise
The algorithm identifies pivot points by analyzing price action over a specified number of bars, then only changes direction when price movement exceeds a user-defined percentage threshold.
█ My Enhancements
This modified version extends the original library with several key improvements:
1. Support and Resistance Visualization
- Adds horizontal lines at pivot points
- Customizable line length (offset from pivot)
- Adjustable line width and color
- Option to extend lines to the right edge of the chart
2. Support and Resistance Zones
- Creates semi-transparent zone areas around pivot points
- Customizable width for better visibility of important price levels
- Separate colors for support (lows) and resistance (highs)
- Visual representation of price areas rather than just single lines
3. Zig Zag Lines
- Separate colors for upward and downward ZigZag movements
- Visually distinguishes between bullish and bearish price swings
- Customizable colors for text
- Width customization
4. Enhanced Settings Structure
- Added new fields to the Settings type to support the additional features
- Extended Pivot type with supportResistance and supportResistanceZone fields
- Comprehensive configuration options for visual elements
These enhancements make the ZigZag more useful for technical analysis by clearly highlighting support/resistance levels and zones, and providing clearer visual cues about market direction.
█ Technical Implementation
This library leverages Pine Script™'s user-defined types (UDTs) to create a robust object-oriented architecture:
- Settings : Stores configuration parameters for calculation and display
- Pivot : Represents pivot points with their visual elements and properties
- ZigZag : Manages the overall state and behavior of the indicator
The implementation follows best practices from the Pine Script™ User Manual's Style Guide and uses advanced language features like methods and object references. These UDTs represent Pine Script™'s most advanced feature set, enabling sophisticated data structures and improved code organization.
For newcomers to Pine Script™, it's recommended to understand the language fundamentals before working with the UDT implementation in this library.
█ Usage Example
//@version=6
indicator("ZigZag Example", overlay = true, shorttitle = 'ZZA', max_bars_back = 5000, max_lines_count = 500, max_labels_count = 500, max_boxes_count = 500)
import andre_007/ZigZag/1 as ZIG
var group_1 = "ZigZag Settings"
//@variable Draw Zig Zag on the chart.
bool showZigZag = input.bool(true, "Show Zig-Zag Lines", group = group_1, tooltip = "If checked, the Zig Zag will be drawn on the chart.", inline = "1")
// @variable The deviation percentage from the last local high or low required to form a new Zig Zag point.
float deviationInput = input.float(5.0, "Deviation (%)", minval = 0.00001, maxval = 100.0,
tooltip = "The minimum percentage deviation from a previous pivot point required to change the Zig Zag's direction.", group = group_1, inline = "2")
// @variable The number of bars required for pivot detection.
int depthInput = input.int(10, "Depth", minval = 1, tooltip = "The number of bars required for pivot point detection.", group = group_1, inline = "3")
// @variable registerPivot (series bool) Optional. If `true`, the function compares a detected pivot
// point's coordinates to the latest `Pivot` object's `end` chart point, then
// updates the latest `Pivot` instance or adds a new instance to the `ZigZag`
// object's `pivots` array. If `false`, it does not modify the `ZigZag` object's
// data. The default is `true`.
bool allowZigZagOnOneBarInput = input.bool(true, "Allow Zig Zag on One Bar", tooltip = "If checked, the Zig Zag calculation can register a pivot high and pivot low on the same bar.",
group = group_1, inline = "allowZigZagOnOneBar")
var group_2 = "Display Settings"
// @variable The color of the Zig Zag's lines (up).
color lineColorUpInput = input.color(color.green, "Line Colors for Up/Down", group = group_2, inline = "4")
// @variable The color of the Zig Zag's lines (down).
color lineColorDownInput = input.color(color.red, "", group = group_2, inline = "4",
tooltip = "The color of the Zig Zag's lines")
// @variable The width of the Zig Zag's lines.
int lineWidthInput = input.int(1, "Line Width", minval = 1, tooltip = "The width of the Zig Zag's lines.", group = group_2, inline = "w")
// @variable If `true`, the Zig Zag will also display a line connecting the last known pivot to the current `close`.
bool extendInput = input.bool(true, "Extend to Last Bar", tooltip = "If checked, the last pivot will be connected to the current close.",
group = group_1, inline = "5")
// @variable If `true`, the pivot labels will display their price values.
bool showPriceInput = input.bool(true, "Display Reversal Price",
tooltip = "If checked, the pivot labels will display their price values.", group = group_2, inline = "6")
// @variable If `true`, each pivot label will display the volume accumulated since the previous pivot.
bool showVolInput = input.bool(true, "Display Cumulative Volume",
tooltip = "If checked, the pivot labels will display the volume accumulated since the previous pivot.", group = group_2, inline = "7")
// @variable If `true`, each pivot label will display the change in price from the previous pivot.
bool showChgInput = input.bool(true, "Display Reversal Price Change",
tooltip = "If checked, the pivot labels will display the change in price from the previous pivot.", group = group_2, inline = "8")
// @variable Controls whether the labels show price changes as raw values or percentages when `showChgInput` is `true`.
string priceDiffInput = input.string("Absolute", "", options = ,
tooltip = "Controls whether the labels show price changes as raw values or percentages when 'Display Reversal Price Change' is checked.",
group = group_2, inline = "8")
// @variable If `true`, the Zig Zag will display support and resistance lines.
bool showSupportResistanceInput = input.bool(true, "Show Support/Resistance Lines",
tooltip = "If checked, the Zig Zag will display support and resistance lines.", group = group_2, inline = "9")
// @variable The number of bars to extend the support and resistance lines from the last pivot point.
int supportResistanceOffsetInput = input.int(50, "Support/Resistance Offset", minval = 0,
tooltip = "The number of bars to extend the support and resistance lines from the last pivot point.", group = group_2, inline = "10")
// @variable The width of the support and resistance lines.
int supportResistanceWidthInput = input.int(1, "Support/Resistance Width", minval = 1,
tooltip = "The width of the support and resistance lines.", group = group_2, inline = "11")
// @variable The color of the support lines.
color supportColorInput = input.color(color.red, "Support/Resistance Color", group = group_2, inline = "12")
// @variable The color of the resistance lines.
color resistanceColorInput = input.color(color.green, "", group = group_2, inline = "12",
tooltip = "The color of the support/resistance lines.")
// @variable If `true`, the support and resistance lines will be drawn as zones.
bool showSupportResistanceZoneInput = input.bool(true, "Show Support/Resistance Zones",
tooltip = "If checked, the support and resistance lines will be drawn as zones.", group = group_2, inline = "12-1")
// @variable The color of the support zones.
color supportZoneColorInput = input.color(color.new(color.red, 70), "Support Zone Color", group = group_2, inline = "12-2")
// @variable The color of the resistance zones.
color resistanceZoneColorInput = input.color(color.new(color.green, 70), "", group = group_2, inline = "12-2",
tooltip = "The color of the support/resistance zones.")
// @variable The width of the support and resistance zones.
int supportResistanceZoneWidthInput = input.int(10, "Support/Resistance Zone Width", minval = 1,
tooltip = "The width of the support and resistance zones.", group = group_2, inline = "12-3")
// @variable If `true`, the support and resistance lines will extend to the right of the chart.
bool supportResistanceExtendInput = input.bool(false, "Extend to Right",
tooltip = "If checked, the lines will extend to the right of the chart.", group = group_2, inline = "13")
// @variable References a `Settings` instance that defines the `ZigZag` object's calculation and display properties.
var ZIG.Settings settings =
ZIG.Settings.new(
devThreshold = deviationInput,
depth = depthInput,
lineColorUp = lineColorUpInput,
lineColorDown = lineColorDownInput,
textUpColor = lineColorUpInput,
textDownColor = lineColorDownInput,
lineWidth = lineWidthInput,
extendLast = extendInput,
displayReversalPrice = showPriceInput,
displayCumulativeVolume = showVolInput,
displayReversalPriceChange = showChgInput,
differencePriceMode = priceDiffInput,
draw = showZigZag,
allowZigZagOnOneBar = allowZigZagOnOneBarInput,
drawSupportResistance = showSupportResistanceInput,
supportResistanceOffset = supportResistanceOffsetInput,
supportResistanceWidth = supportResistanceWidthInput,
supportColor = supportColorInput,
resistanceColor = resistanceColorInput,
supportResistanceExtend = supportResistanceExtendInput,
supportResistanceZoneWidth = supportResistanceZoneWidthInput,
drawSupportResistanceZone = showSupportResistanceZoneInput,
supportZoneColor = supportZoneColorInput,
resistanceZoneColor = resistanceZoneColorInput
)
// @variable References a `ZigZag` object created using the `settings`.
var ZIG.ZigZag zigZag = ZIG.newInstance(settings)
// Update the `zigZag` on every bar.
zigZag.update()
//#endregion
The example code demonstrates how to create a ZigZag indicator with customizable settings. It:
1. Creates a Settings object with user-defined parameters
2. Instantiates a ZigZag object using these settings
3. Updates the ZigZag on each bar to detect new pivot points
4. Automatically draws lines and labels when pivots are detected
This approach provides maximum flexibility while maintaining readability and ease of use.
Optimized Trading Strategy v6my strategy is about support and demand, support and resistance timeframe m5 and m15
HEMA Trend Levels [AlgoAlpha]OVERVIEW
This script plots two Hull-EMA (HEMA) curves to define a color-coded dynamic trend zone and generate context-aware breakout levels, allowing traders to easily visualize prevailing momentum and identify high-probability breakout retests. The script blends smoothed price tracking with conditional box plotting, delivering both trend-following and mean-reversion signals within one system. It is designed to be simple to read visually while offering nuanced trend shifts and test confirmations.
█ CONCEPTS
The Hull-EMA (HEMA) is a hybrid moving average combining the responsiveness of short EMAs with the smoothness of longer ones. It applies layered smoothing: first by subtracting a full EMA from a half-length EMA (doubling the short EMA's weight), and then by smoothing the result again with the square root of the original length. This process reduces lag while maintaining clarity in direction changes. In this script, two HEMAs—fast and slow—are used to define the trend structure and trigger events when they cross. These crossovers generate "trend shift boxes"—temporary support or resistance zones drawn immediately after trend transitions—to detect price retests in the new direction. When price cleanly retests these levels, the script marks them as confirmations with triangle symbols, helping traders isolate better continuation setups. Color-coded bars further enhance visual interpretation: bullish bars when price is above both HEMAs, bearish when below, and neutral (gray) when indecisive.
█ FEATURES
Bullish and bearish bar coloring based on price and HEMA alignment.
Box plotting at each crossover (bullish or bearish) to create short-term decision zones.
Real-time test detection: price must cleanly test and bounce from box levels to be considered valid.
Multiple alert conditions: crossover alerts, test alerts, and trend continuation alerts.
█ USAGE
Use this indicator on any time frame and asset. Adjust HEMA lengths to match your trading style—shorter lengths for scalping or intraday, longer for swing trading. The shaded area between HEMAs helps visually define the current trend. Watch for crossovers: a bullish crossover plots a green support box just below price, and a bearish one plots a red resistance box just above. These zones act as short-term decision points. When price returns to test a box and confirms with strong rejection (e.g., closes above for bullish or below for bearish), a triangle symbol is plotted. These tests can signal strong trend continuation. For traders looking for clean entries, combining the crossover with a successful retest improves reliability. Alerts can be enabled for all key signals: trend shift, test confirmations, and continuation conditions, making it suitable for automated setups or discretionary traders tracking multiple charts.
Dynamic Heat Levels [BigBeluga]This indicator visualizes dynamic support and resistance levels with an adaptive heatmap effect. It helps traders identify key price interaction zones and potential mean reversion opportunities by displaying multiple levels that react to price movement.
🔵Key Features:
Multi-Level Heatmap Channel:
- The indicator plots multiple dynamic levels forming a structured channel.
- Each level represents a historical price interaction zone, helping traders identify critical areas.
- The channel expands or contracts based on market conditions, adapting dynamically to price movements.
Heatmap-Based Strength Indication:
- Levels change in transparency and color intensity based on price interactions for the length period .
- The more frequently price interacts with a level, the more visible and intense the color becomes.
- When a level reaches a threshold (count > 10), it starts to turn red, signaling a high-heat zone with significant price activity.
🔵Usage:
Support & Resistance Analysis: Identify price levels where the market frequently interacts, making them strong areas for trade decisions.
Heatmap Strength Assessment: More intense red levels indicate areas with heavy price activity, useful for detecting key liquidity zones.
Dynamic Heat Levels is a powerful tool for traders looking to analyze price interaction zones with a heatmap effect. It offers a structured visualization of market dynamics, allowing traders to gauge the significance of key levels and detect mean reversion setups effectively.
Strong Levels (with Proximity Alerts)█ OVERVIEW
The "Strong Levels (with Proximity Alerts)" indicator offers a fresh approach to identifying support and resistance levels, inspired by the RexDog Trading System (RDTS). It pinpoints significant price reversals using a unique filtering method that reduces noise and enhances reliability. Paired with customizable ATR-based proximity alerts, this indicator empowers traders to track critical price zones with precision.
█ FEATURES
- Rooted in RDTS :
Inspired by the RexDog Trading System (RDTS), it highlights major pivot points where price executed sharp turnarounds, ensuring levels carry true market weight.
- Second-Highest/Lowest Open/Close Method :
Resistance levels use the *second-highest open/close* near pivot highs, while support levels use the *second-lowest open/close* near pivot lows—skipping extreme wicks for cleaner, more dependable lines.
- ATR-Driven Proximity Alerts :
Customizable proximity thresholds, calculated using the Average True Range (ATR), warn traders when price approaches key levels—a standout feature not found in most support/resistance indicators.
- Flexible Customization :
- Magnitude : Tweak pivot sensitivity (default: 10).
- Line Colors : Set resistance (red by default), support (green), and proximity (yellow) lines.
- Line Options : Adjust line origins, transparency for breached levels, and the maximum number of levels shown.
- ATR Settings : Fine-tune proximity sensitivity with ATR length and multiplier.
█ HOW TO USE
1. Add to Chart :
Find "Strong Levels (with Proximity Alerts)" in TradingView’s indicator library and apply it.
2. Read the Lines :
- Red Lines : Resistance, derived from the second-highest open/close near pivot highs.
- Green Lines : Support, based on the second-lowest open/close near pivot lows.
- Yellow Dashed Lines : Proximity thresholds (optional), signaling when price nears a level.
3. Customize :
- Raise `Magnitude` for stronger levels or lower it for more detail.
- Adjust colors, transparency, and max levels to fit your preferences.
- Toggle proximity thresholds on/off based on your trading style.
- Enabling *Plot Line from Actual Pivot Bar* offers a cleaner chart but may mislead as lines plot into the past.
4. Set Alerts :
- Open TradingView’s alert menu (the three dots ... dropdown menu next in indicator list has an option "Add alert on ...") and choose "Approaching Level" or "Level Touched.".
- Don't forget to choose the right Trigger condition, which by default is "Only Once". I usually set it to "Once Per Bar".
- Tailor alert conditions to your needs.
█ LIMITATIONS
- Past-Based Levels :
- Relying on historical pivots, it may not always forecast future moves, especially in rapid markets.
- The 'Plot Line from Actual Pivot Bar' option while visually appealing can imply historical significance that didn’t exist at the time. Be mindful of that.
- Volatility Sensitivity :
High volatility widens ATR-based thresholds, which might trigger alerts too soon.
- Display Management :
A cap on max levels avoids clutter, but tweaking `Max Levels` may be needed across timeframes.
█ ACCOMPANYING CHART
The chart showcases the indicator’s unique edge:
- A pivot high and low are flagged, with nearby bars highlighted.
- Resistance is plotted at the *second-highest open/close* around the pivot high, bypassing the highest wick.
- Support is set at the *second-lowest open/close* near the pivot low, ignoring the deepest wick.
- Yellow dashed proximity lines illustrate how the indicator warns traders as price nears these zones.
- Annotations clarify how skipping extreme wicks creates cleaner, more actionable levels.
█ HOW TO USE
1. Add to Chart :
Locate "Strong Levels (with Proximity Alerts)" in TradingView’s indicator library and apply it to your chart.
2. Read the Lines :
- Red Lines**: Resistance levels, calculated from the second-highest open/close near pivot highs.
- Green Lines : Support levels, derived from the second-lowest open/close near pivot lows.
- Yellow Dashed Lines : Optional proximity thresholds, alerting you when price nears a level.
3. Customize :
- Increase `Magnitude` for stronger, less frequent levels or decrease it for more granularity.
- Modify colors, transparency, or the maximum number of levels to suit your style.
- Enable or disable proximity thresholds as needed.
4. Set Alerts :
- Access TradingView’s alert menu and select "Approaching Level" or "Level Touched."
- Adjust conditions to match your trading preferences.
5. My Personal Approach :
I prefer using this indicator on higher timeframes, like hourly or daily charts. I adjust my `Magnitude`, so it doesn't trigger too often and set my alerts to trigger "Once Per Bar". When price nears a level, I get an alert and I anticipate a reaction but avoid placing limit orders blindly. Instead, I switch to smaller timeframes and combine it with other tools for confirmation before making a trade. This saves me a lot of screen time, and allows me to focus when it matters.
High and Low in a Given Date/Time RangeThis Pine Script v5 indicator plots horizontal lines at both the highest and lowest price levels reached within a user-defined date/time range.
Description:
Inputs:
The user specifies a start and an end date/time by providing the year, month, day, hour, and minute for each. These inputs are converted into timestamps based on the chart’s timezone.
How It Works:
Timestamp Conversion: The script converts the provided start and end dates/times into timestamps using the chart’s timezone.
Bar Check: It examines every bar and checks if the bar’s timestamp falls between the start and end timestamps.
Price Updates:
If a bar’s time is within the specified range, the indicator updates the highest price if the current bar's high exceeds the previously recorded high, and it updates the lowest price if the current bar's low is lower than the previously recorded low.
Drawing Lines:
A red horizontal line is drawn at the highest price, and a green horizontal line is drawn at the lowest price. Both lines start from the first bar in the range and extend dynamically to the current bar, updating as new high or low values are reached.
End of Range: Once a bar's time exceeds the end timestamp, the lines stop updating.
This tool offers a clear and straightforward way to monitor key price levels during a defined period without any extra fluff.
[GrandAlgo] Liquidity Pivot Cloud - LPCLiquidity Pivot Cloud (LPC) is a visualization tool that extends all pivot levels to the right, creating a structured liquidity map across the chart. Instead of treating pivot points as static levels, LPC transforms them into a dynamic cloud, highlighting key areas where price has historically reacted.
Key Features:
Extended Pivot Levels – Automatically stretches all pivot highs and lows, forming a continuous liquidity zone.
Clear Structure – Provides an organized view of price action, making it easy to identify reaction zones.
Dynamic Liquidity Map – Helps traders spot potential liquidity sweeps and areas of price absorption.
How to Use:
Identify Liquidity Zones – Areas with multiple overlapping pivots signal strong liquidity pools.
Look for Reactions – Price often consolidates, wicks, or reverses around extended pivot clouds.
Combine with Confluence – Use alongside Fair Value Gaps, Institutional Price Blocks, or Market Structure shifts for higher probability setups.
LPC aligns with smart money concepts by revealing key liquidity areas where stop hunts, liquidity grabs, and institutional activity are likely to occur. It helps traders see where price is likely to be drawn before a major move, making it a valuable tool for those trading liquidity-based strategies.
Double Numbered Triangle Chart Progression | RegressionThe Double-Numbered Triangle Progression | Regression Indicator enables forecasting of support and resistance levels by progressing or regressing on the Triangle Chart from a user-selected pivot price. The indicator also plots adjustable pivots on both the chart and the Triangle Price and Time Chart.
How to use to forecast support and resistance levels:
1. Select a Pivot Point: Set the correct price to the pivot by selecting High or Low in the indicator.
2. Set Price Increment: Choose a price increment to adjust the starting price on the Triangle Chart (e.g., 1 or -0.01).
3. Rotate to adjust the number of levels on the Triangle Chart.
4. Plot Levels: Choose the Left Edge, Center, or Right Edge of the Triangle Chart to plot support and resistance levels. These levels automatically expand or decrease depending on the number of levels in step 3. The selected angle's price values are applied to the chart with labels on both sides. The left labels represent the time variable, and the right labels indicate the price. The time variable is used in conjunction with my other indicator "Price and Longitude Angles." The same goes for the Double Numbered Square of Nine indicator.
5. Review Levels: Examine the plotted support and resistance levels with recent market pivots.
6. Identify Correlations: Find the Triangle edge or center that aligns with the most market pivots.
7. The indicator plots user-adjustable pivots on both candles/bars and shows their placement on the Triangle Chart in both Progression and Regression. This visualization helps users identify which angles the highs and lows favor from the selected pivot. Pivot levels' colors can be customized. The close price is plotted on the Triangle Chart in real time with a white background.
Each market has its tendencies, favoring specific angles from the Triangle Chart. The basic idea is to choose between the Left edge, Center, or Right edge of the Triangle to forecast support and resistance levels.
Settings:
Overview:
Example of Forecasting Support and resistance level using this indicator:
In the image above, I am regressing from the significant high at a rate of $-0.008 per cell as shown on the main info label. Based on the plotted pivots, I have chosen the right edge of the triangle as it aligns with these recent pivots. I have drawn a lime green vertical line to indicate that as we add layers to the triangle chart, we introduce support and resistance levels based on the identified angle that aligns with these early pivots from the high.
In the image below, I've moved forward in time to illustrate how the initial angle chosen based on the early pivots forecasted support and resistance levels on $DOGE. Do not expect the price to turn sharply at the levels the indicator generates. As P. Mikula mentions in his work, and I apply the same with the Triangle Chart, " The Square of Nine successfully defines market price swings but does not cause the market to form pivots. "
This indicator is inspired by the methodologies detailed by Patrick Mikula in his book, The Definitive Guide to Forecasting using W.D Gann's Square of Nine. I recommend checking it out. He also mentions another use case as a Triangle Price and Time chart in his book, Gann Scientific Method Unveiled, Volume 2, where you can use my open-source indicator "Price and Longitude Angle" alongside both the Doubled Numbered Square of Nine and this Triangle Chart indicator.
FYI, I am not affiliated with Patrick Mikula in any way.
Planned improvements include adding two more angles: Left Center column and Right Center column as additional options to select.
FYI: Please ensure you select the high when regressing from a high. Also, make sure to add enough layers on the Triangle to see all the pivots. Once you've identified an angle, you can hide the table to gain back space on the chart. Use rounding precision for lower prices.
NFP High/Low Levels PlusNFP High/Low Levels Plus
Description:
This indicator stores the 12 most recent NFP (Non-Farm-Payroll) days and their values.
Values are captured from 0830 (NFP Release) until close of market
The High and Low values for each NFP month are drawn on the chart with horizontal lines.
- Labels indicating the month's high or low line are placed after the line
- Optionally the high/low price can be displayed additionally
Support and Resistance boxes can be drawn at the closest NFP level above and below the
current price.
- Boxes will automatically update as prices cross the NFP value
Macro Indicator
- This option displays a small table in the top right corner that says "Up" or " Down"
- The Macro Indicator can be used to judge the potential direction for the current month
- Macro direction is calculated by the following:
- UP: If two consecutive days both open and close above the most recent NFP High level
- DOWN: If two consecutive days both open and close below the most recent NFP Low level
Micro Indicator
- This option displays a small table in the top right corner that says "Up" or " Down"
- The Micro Indicator can be used to judge the potential direction for low timeframes 1H or
lower
- Micro direction is calculated by the following:
- UP: If two consecutive 10m candles close above the 20EMA
- DOWN: If two consecutive 10m candles close below the 20EMA
NFP Session Bars
- This feature draws an arrow at the bottom of the chart for each candle that falls within the
NFP session day
- This is useful for identifying NFP Days
Support / Resistance Table
- This displays a table bottom center showing the nearest high and low NFP line level
What is an NFP Day and why is it useful to add to my chart?
- NFP Days are one of the most important data releases monthly
- NFP (Non-Farm-Payroll) is the official release of 80% of the US workforce employed in
manufacturing, construction, and goods
- It does not include those who work on farms, private households, non-profit and
government workers
- Historically these high/low levels for the day create strong support and resistance levels
- Having them displayed on the chart can help identify potential strong levels and pivot points
Full Indicator with all options enabled and identified
Easily update NFP Release Days in the indicator settings
Modify various options: Show/Hide lines, labels, directional indicator tables, values tables
Adjust line width, offsets, colors, font sizes, box widths
Enable individual Directional Indicators and modify colors
Example of full indicator enabled
You can find a list of the NFP Release Schedule on the official US Bureau of Labor Statistics website. This is useful for updating the indicator settings with the correct dates
+ Stochastic S/R ZonesHey, all. I have a new indicator here that displays zones on your price chart where the stochastic oscillator has moved out of overbought or oversold back into the range of the indicator that is bounded by those two levels.
I know there are many support and resistance indicators on TradingView already, at least a couple of which use the RSI in a similar way as I am using the stochastic here, but I still believe this is a fairly novel interpretation of the stochastic, and it is, in my opinion, a better oscillator than the RSI to be used in this way.
In addition to the zones being plotted on the chart, the indicator also, optionally, can color candles or plot shapes above candles when the 50 line is crossed, so if you want to use this as a simple momentum indicator without desire of having the below chart indicator taking up screen space, you're pretty much covered on the typical signals you might want from it (with the exception of %K / %D crosses, but there are alerts for that).
Visually, it is a simple, clean indicator. There are the zones, and then candle colors or shapes if you opt to add those. These zones are actually drawn from the candle preceding the cross over or cross under. Reason for that is often times the candle of the cross is fairly impulsive and exiting a consolidation. That period of consolidation is what is important to highlight, at least as far as I am concerned. The zones themselves extend until they are broken by a candle. A support zone stops at the candle that closes below its low. Vice versa for a resistance zone.
Usage is fairly simple. All the standard stochastic inputs are available for you to adjust to your heart's content. Additionally, you can choose either the %K or %D line to use as the source from which the zones are drawn, candles are colored, and shapes are plotted. Not sure if this will matter to most people, but I figured it should be made available.
This should be obvious, but I feel it must be said, just because an oscillator (any oscillator) has exited overbought or oversold does not mean that there must be a reversal (or in the case of a trend pullback, continuation). The oscillator can always simply immediately move back into overbought/sold. Just because a support box prints does not mean you should mortgage your house on a long trade. In strong trends, and depending on your oscillator settings, the indicator might draw a box then only a couple of candles later break it, continuing on with the trend. This of course is telling you something, and you would be wise to listen. As with all things trading, context is important.
Here are a few extra screens for you.
I really hope you all like this. It's been ages since I've created anything new, and despite its simplicity and the few lines of code that make it up, it took a lot of work, as I am a poor coder.
Enjoy,
Scott
Breakout and Retest Signals [AlgoAlpha]OVERVIEW
This script detects breakout and retest signals by identifying key pivot points in price action and analyzing their relationship with historical swing highs and lows. It highlights breakout structures using ATR-based tolerance levels and volume analysis to confirm potential trend continuations or reversals. The script marks significant price levels with dynamic boxes and dashed lines to help traders visualize breakout and retest areas effectively.
CONCEPTS
The script relies on pivot point analysis, a technique used to identify significant price levels where the market has previously reversed. It dynamically tracks a set number of recent swing highs and lows, allowing traders to see if the price is revisiting a previously significant level. The concept of breakouts and retests is widely used in technical analysis to determine potential entry points. A breakout occurs when the price moves beyond a resistance or support level, and a retest happens when the price returns to test that level before continuing in the breakout direction. This script enhances that analysis by incorporating ATR-based tolerance levels, ensuring that price zones are not too large.
FEATURES
Breakout and Retest Markings : Highlights breakout and retest areas with shaded boxes, allowing traders to visualize where price action is confirming key levels.
Volume Delta and Ratio : Analyzes volume at breakout levels to gauge the strength of the move, displaying volume delta information for additional context. The script also displays the ratio of selling to buying at the retest along traders to make better judgement on their entries.
Multi-Timeframe Adaptability : Dynamically adjusts volume analysis to align with the appropriate lower timeframe, ensuring reliable volume comparisons.
Alerts for Breakout and Retest Events : Traders can receive real-time notifications when bullish or bearish breakout retests are detected.
USAGE
This script is best suited for traders looking to identify strong breakout and retest setups across different timeframes. Users can customize the pivot detection period and swing point memory to adjust sensitivity based on their trading style. The ATR length and multiplier allow further refinement of breakout tolerance, reducing noise in volatile markets. The breakout zones are displayed as shaded boxes, where traders can assess whether a price retest is occurring under favorable conditions. Alerts can be set to notify traders of potential trade opportunities.
[GrandAlgo] ATR Trend MatrixThe ATR Trend Matrix is a dynamic trendline indicator designed to help traders visualize market structure using ATR-based trend projections. This tool adapts to price action and highlights potential support and resistance zones based on Average True Range (ATR) calculations.
Key Features
ATR-Based Trendlines – Calculates and plots dynamic trendlines using an adjustable ATR factor.
Multi-Level Matrix System – Provides up to four matrix levels, each customizable with different ATR multipliers.
Swing High & Low Detection – Automatically detects market pivots to serve as anchor points for trendlines.
Adjustable Trend Length – Fine-tune the sensitivity of trendlines using the Swing Length and Trend-Line Length Multiplier.
Auto-Adjustment Mode – When enabled, trendlines update dynamically as ATR evolves.
Buy & Sell Signals – Marks potential trade setups when price crosses below or above Matrix Level 1.
How It Works
Detects Swing Points – Identifies key highs and lows in the market using the length setting.
Plots ATR-Based Trendlines – Calculates trendlines using ATR with user-defined multipliers for four matrix levels.
Adjusts Dynamically – If Auto Adjust is enabled, trendlines shift with ATR movements.
Identifies Trade Signals – Highlights potential buy/sell zones when price interacts with Matrix Level 1 trendlines.
Manages Active Trendlines – Automatically updates and removes trendlines based on price interaction.
User Settings
General Settings
ATR Factor – Controls the ATR multiplier for trendline calculation.
Swing Length – Defines the number of bars for swing high/low detection.
Trend-Line Length Multiplier – Adjusts the extension length of trendlines.
Auto Adjust Trendlines – Enables real-time adjustment of trendlines as ATR changes.
Matrix Settings
Matrix Level 1-4 – Enable or disable individual trendline levels.
Matrix Factors – Customize the ATR multipliers for each matrix level.
Trading Applications
Trend Confirmation – Use the primary trendline and matrix levels to gauge trend strength.
Support & Resistance Zones – ATR-based trendlines can act as dynamic support/resistance.
Breakout & Rejection Signals – Identify potential breakouts or reversals when price interacts with matrix levels.
Volatility-Based Trading – ATR helps adjust trendlines based on market volatility.
The ATR Trend Matrix is a powerful tool for traders who want a dynamic, adaptive trendline system that reacts to market structure and volatility. With customizable settings, multi-level ATR projections, and trade signal detection, this indicator provides a comprehensive approach to price action analysis.
MACD Highs and Lows - Dynamic Support & ResistanceDescription:
Enhance your trading strategy with the MACD Highs and Lows indicator, designed to identify dynamic support and resistance levels based on MACD crossovers. This tool plots key price levels triggered by shifts in MACD momentum, helping traders spot potential reversal zones, breakout points, and trend confirmation signals.
Key Features
Dynamic Levels: Automatically plots recent highs/lows when MACD crosses above/below the zero line.
Customizable MACD Parameters:
Adjustable fast/slow lengths (default: 12/26).
Choose between SMA or EMA for oscillator/signal line.
Flexible signal smoothing (1-50 periods).
Visual Clarity:
Clear green/red lines for highs and lows.
Tracks both price extremes and adjacent candle levels (e.g., high-of-low-bar, low-of-high-bar).
Multi-Timeframe Utility: Works across charts for swing trading, scalping, or trend analysis.
How It Works
Bullish Signal: When MACD crosses above zero, the indicator marks the recent lowest low (support) and its corresponding high.
Bearish Signal: When MACD crosses below zero, it plots the recent highest high (resistance) and its corresponding low.
Levels persist until the next crossover, creating actionable reference zones.
Use Cases
Trend Confirmation: Validate breakouts when price closes above/below plotted levels.
Stop Loss Placement: Set stops beyond recent dynamic highs/lows.
Divergence Detection: Spot discrepancies between MACD momentum and price action.
Settings Tips:
Increase Fast Length for responsiveness or Slow Length for smoother signals.
Use EMA for faster reactions, SMA for reduced noise.
High Volume Points [BigBeluga]High Volume Points is a unique volume-based indicator designed to highlight key liquidity zones where significant market activity occurs. By visualizing high-volume pivots with dynamically sized markers and optional support/resistance levels, traders can easily identify areas of interest for potential breakouts, liquidity grabs, and trend reversals.
🔵 Key Features:
High Volume Points Visualization:
The indicator detects pivot highs and lows with exceptionally high trading volume.
Each high-volume point is displayed as a concentric circle, with its size dynamically increasing based on the volume magnitude.
The exact volume at the pivot is shown within the circle.
Dynamic Levels from Volume Pivots:
Horizontal levels are drawn from detected high-volume pivots to act as support or resistance.
Traders can use these levels to anticipate potential liquidity zones and market reactions.
Liquidity Grabs Detection:
If price crosses a high-volume level and grabs liquidity, the level automatically changes to a dashed line.
This feature helps traders track areas where institutional activity may have occurred.
Volume-Based Filtering:
Users can filter volume points by a customizable threshold from 0 to 6, allowing them to focus only on the most significant high-volume pivots.
Lower thresholds capture more volume points, while higher thresholds highlight only the most extreme liquidity events.
🔵 Usage:
Identify strong support/resistance zones based on high-volume pivots.
Track liquidity grabs when price crosses a high-volume level and converts it into a dashed line.
Filter volume points based on significance to remove noise and focus on key areas.
Use volume circles to gauge the intensity of market interest at specific price points.
High Volume Points is an essential tool for traders looking to track institutional activity, analyze liquidity zones, and refine their entries based on volume-driven market structure.
Support and Resistancelookback: This input allows you to specify the number of bars to look back to calculate the support and resistance levels.
support: This is calculated as the lowest low over the specified lookback period.
resistance: This is calculated as the highest high over the specified lookback period.
plot: The support and resistance levels are plotted on the chart with different colors.
bgcolor: This optional feature highlights the support and resistance zones with a semi-transparent background color.
Dynamic Market Structure DetectorTitle: Dynamic Market Structure Detector – Real-Time BoS & ChoCH Signals
Short Description:
Identify market structure dynamically with real-time Break of Structure (BoS) and Change of Character (ChoCH) signals. Highlight untested support and resistance zones to improve trading precision.
Full Description:
The Dynamic Market Structure Detector is a powerful TradingView indicator designed for traders who want to automate the identification of key market structure levels. This indicator simplifies market analysis by dynamically tracking swing highs and lows, marking critical Break of Structure (BoS) and Change of Character (ChoCH) points, and highlighting untested support and resistance zones.
Key Features:
1. Real-Time Signals:
• Marks Break of Structure (BoS) and Change of Character (ChoCH) points as they occur.
• Automatically updates as the market evolves.
2. Dynamic Swing Highs and Lows:
• Tracks swing highs and lows based on user-defined sensitivity (Swing Length).
• Adjust swing length to tailor signals for intraday or swing trading.
3. Untested Zones Highlight:
• Visualize untested support and resistance zones dynamically.
• Opacity settings allow customization for better chart readability.
4. Customizable Inputs:
• Swing Length:
Adjust the sensitivity of BoS and ChoCH signals.
• Smaller Swing Length values (e.g., 3–5): Capture short-term market movements, ideal for intraday trading.
• Larger Swing Length values (e.g., 10–20): Focus on significant market structure changes for swing or positional trading.
Experiment with these values to find the best fit for your trading style.
• Untested Zone Opacity:
Control the visibility of highlighted support and resistance zones.
• Lower opacity values (e.g., 10–50): Make the zones more prominent, helpful for darker chart backgrounds.
• Higher opacity values (e.g., 70–90): Provide subtle highlights, better suited for lighter chart setups.
• A value of 100% renders the zones completely transparent (invisible).
Use this setting to customize the visual appearance of your chart while still retaining key zone information.
5. User-Friendly Visualization:
• Color-coded labels for BoS (Green) and ChoCH (Red).
• Highlight zones for untested areas using customizable colors (Support: Blue, Resistance: Orange).
Why Use This Indicator?
• Simplifies market structure analysis by automating key calculations.
• Helps traders identify potential trend reversals and continuation points.
• Reduces the need for manual charting, saving time and effort.
• Provides visual clarity on untested zones for better decision-making.
Recommended Usage:
• Intraday Traders: Use smaller Swing Length values (e.g., 3–5) to capture short-term market movements.
• Swing Traders: Opt for higher Swing Length values (e.g., 10–20) to focus on larger market structure changes.
• Monitor untested zones for potential price reactions, enhancing your trade entries and exits.
Notes :
This indicator is best suited for traders who prefer price action trading and market structure analysis. While the indicator provides reliable insights, it is recommended to use it in conjunction with other analysis tools for a holistic trading approach.
Credits:
Developed by TradeTech Analysis to empower traders with automated tools for smarter trading decisions.
Comprehensive Trading Toolkit [BigBeluga]Trading Toolkit is a comprehensive indicator inspired by the trading strategies of the renowned crypto influencer Michaël van de Poppe . This tool combines RSI divergences, correction zones, and advanced support/resistance levels to provide traders with a robust framework for analyzing market movements.
🔵 Key Features:
RSI Divergences on Chart:
Automatically identifies and plots RSI divergences (bullish and bearish) directly on the main price chart.
Green lines indicate bullish divergences, suggesting potential upward reversals.
Red lines indicate bearish divergences, signaling possible downward movements.
Correction Boxes:
Traders typically define a correction as a drop in value of 10% or more. This drop can happen over a few hours or a few days. Also, it can last for less than 24 hours or many months.
This indicator visualizes corrections with blue shaded boxes, triggered by a percentage decline defined in the settings.
The boxes highlight sharp price drops, helping traders identify significant market movements quickly.
Advanced Support and Resistance Levels:
Dynamically detects key support and resistance levels based on price pivots.
When the price is above a level, it plots a green shaded area from the cross point, marking support.
When the price drops below a level, it plots a red shaded area, highlighting resistance.
Dashed lines indicate weaker levels, while solid lines represent stronger, more reliable levels.
🔵 Usage:
Identify Divergences: Use plotted RSI divergences to detect potential market reversals and align them with price action.
Analyze Correction Zones: Utilize correction boxes to evaluate significant price declines and find potential buying opportunities during these corrections.
Leverage Support and Resistance Levels: Confirm breakouts, reversals, or consolidation zones with the color-coded areas.
Enhance Risk Management: Combine divergences and correction zones to set informed stop-loss or take-profit levels.
Trading Toolkit empowers traders with actionable insights into market trends, corrections, and support/resistance dynamics, making it an invaluable tool for crypto and forex markets.
Premarket and Opening Range (First 30 minutes) LevelsThis indicator is for people who like to utilize the pre-market highs and pre-market Low's as well as the first 30 minutes high and low, or some people like to call the opening range. I hope you find value in this. Note, the levels will only appear after tracking. Premarket levels will happen after pre-market closes. Opening Range levels will show right after the first 30 minutes.
Intelligent Support & Resistance Lines (MTF)This script automatically detects and updates key Support & Resistance (S/R) levels using a higher timeframe (MTF) approach. By leveraging volume confirmation, levels are only identified when significant volume (relative to the SMA of volume) appears. Each level is drawn horizontally in real time, and whenever the market breaks above a resistance level (and retests it), the script automatically converts that resistance into support. The opposite occurs if the market breaks below a support level.
Key Features:
Multi-Timeframe (MTF) Data
Select a higher timeframe for more robust S/R calculations.
The script fetches High, Low, Volume, and SMA of Volume from the chosen timeframe.
Automatic Role Reversal
Resistance becomes Support if a breakout retest occurs.
Support becomes Resistance if a breakdown retest occurs.
Dynamic Line Width & Labeling
Each S/R line’s thickness increases with additional touches, making frequently tested levels easier to spot.
Labels automatically display the number of touches (e.g., “R 3” or “S 2”) and can have adjustable text size.
Volume Threshold
Only significant pivots (where volume exceeds a specified multiplier of average volume) are plotted, reducing noise.
Horizontal Offset for Clarity
Lines are drawn with timestamps instead of bar_index, ensuring that old levels remain visible without chart limitations.
Adjustable Maximum Levels
Maintain a clean chart by limiting how many S/R lines remain at once.
How It Works:
Pivot Detection: The script identifies swing highs and lows from the higher timeframe (timeframeSR).
Volume Check: Only pivots with volume ≥ (SMA Volume * volumeThreshold) qualify.
Line Creation & Updates: New lines are drawn at these pivots, labeled “R #” or “S #,” indicating how many times they’ve been touched.
Role Reversal: If price breaks above a resistance and retests it from above, that line is removed from the resistance array and re-created in the support array (and vice versa).
Inputs:
Timeframe for S/R: Choose the higher timeframe for S/R calculations.
Swing Length: Number of bars to consider in a pivot calculation.
Minimum Touches: Minimum required touches before drawing or updating a level.
Volume Threshold (Multiplier): Determines how much volume (relative to SMA) is needed to confirm a pivot.
Maximum Number of Levels: Caps how many S/R lines can be shown at once.
Color for Resistance & Color for Support: Customize your preferred colors for lines and labels.
Label Size: Select from "tiny", "small", "normal", "large", or "huge" to resize the labels.
Disclaimer:
This script is intended for educational purposes and should not be interpreted as financial or investment advice. Always conduct your own research or consult a qualified professional before making trading decisions.
Support and Resistance Non-Repainting [AlgoAlpha]Elevate your technical analysis with the Non-Repainting Support and Resistance indicator from AlgoAlpha. Designed for traders who value precision, this tool highlights key support and resistance zones without repainting, ensuring reliable signals for better market decisions.
Key Features
🔍 Concise Zones: Identifies critical levels in real-time without repainting.
🖍 Customizable Appearance: Choose your preferred colors for bullish and bearish zones.
📏 Pivot Sensitivity Settings: Adjust the lookback period to fit different market conditions.
🔔 Visual Alerts: Highlights zones on your chart with clear, dynamic boxes and lines.
How to Use
Add the Indicator : Add it to your favorites chart by clicking the star icon. Adjust the lookback period, max zone duration, and colors to match your strategy.
Analyze the Chart : Look for zones where prices frequently react, indicating strong support or resistance.
Set Alerts : Enable notifications for new zone formations and zone invalidations, ensuring you never miss critical market moves.
How It Works
The indicator detects pivot highs and lows using a specified lookback period. When a pivot is confirmed, it draws corresponding support or resistance zones using TradingView’s built-in drawing tools. These zones extend until price breaks through them or they expire based on a maximum allowed duration. The indicator continuously checks if price interacts with any active zones and adjusts accordingly, ensuring accurate and real-time visualization.
Psychological Levels- Rounding Numbers Psychological Levels Indicator
Overview:
The Psychological Levels Indicator automatically identifies and plots significant price levels based on psychological thresholds, which are key areas where market participants often focus their attention. These levels act as potential support or resistance zones due to human behavioral tendencies to round off numbers. This indicator dynamically adjusts the levels based on the stock's price range and ensures seamless visibility across the chart.
Key Features:
Dynamic Step Sizes:
The indicator adjusts the levels dynamically based on the stock price:
For prices below 500: Levels are spaced at 10.
For prices between 500 and 3000: Levels are spaced at 50, 100, and 1000.
For prices between 3000 and 10,000: Levels are spaced at 100 and 1000.
For prices above 10,000: Levels are spaced at 500 and 1000.
Extended Visibility:
The plotted levels are extended across the entire chart for improved visualization, ensuring traders can easily monitor these critical zones over time.
Customization Options:
Line Color: Choose the color for the levels to suit your charting style.
Line Style: Select from solid, dashed, or dotted lines.
Line Width: Adjust the thickness of the lines for better clarity.
Clean and Efficient Design:
The indicator only plots levels relevant to the visible chart range, avoiding unnecessary clutter and ensuring a clean workspace.
How It Works:
It calculates the relevant step sizes based on the price:
Smaller step sizes for lower-priced stocks.
Larger step sizes for higher-priced stocks.
Primary, secondary, and (if applicable) tertiary levels are plotted dynamically:
Primary Levels: The most granular levels based on the stock price.
Secondary Levels: Higher-order levels for broader significance.
Tertiary Levels: Additional levels for lower-priced stocks to enhance detail.
These levels are plotted across the chart, allowing traders to visualize key psychological areas effortlessly.
Use Cases:
Day Trading: Identify potential intraday support and resistance levels.
Swing Trading: Recognize key price zones where trends may pause or reverse.
Long-Term Investing: Gain insights into significant price zones for entry or exit strategies.
DonAlt - Smart Money Toolkit [BigBeluga]DonAlt - Smart Money Toolkit is inspired by the analytical insights of popular crypto influencer DonAlt.
This advanced toolkit integrates smart money concepts with key technical analysis elements to enhance your trading decisions.
🔵 KEY FEATURES:
SUPPORT AND RESISTANCE LEVELS Automatically identifies critical market turning points with significant volume. Levels turn green when the price is above them and red when below, providing a visual cue for key market thresholds.
ORDER BLOCKS: Highlights significant price zones preceding major price movements.
- If the move is down , it searches for the last bullish candle and plots a block from its body.
- If the move is up , it searches for the last bearish candle and creates a block from its body.
These blocks help identify areas of institutional interest and potential reversals.
TRENDLINES: Automatically plots trendlines to identify breakout zones or price accumulation areas.
• Bullish trendlines accumulation form when the current low is higher than the previous low.
• Bearish trendlines accumulation emerge when the current high is lower than the previous high.
• Bullish trendlines Breakout form when the price break above it.
• Bearish trendlines Breakout form when the price break below it.
Volatility Integration: The levels incorporate normalized volatility to ensure only significant zones are highlighted, filtering noise and emphasizing meaningful data.
🔵 WHEN TO USE:
This toolkit is ideal for traders seeking to align with "smart money" strategies by identifying key areas of institutional activity, strong support and resistance zones, and potential breakout setups.
🔵 CUSTOMIZATION:
Toggle the visibility of levels, order blocks, or trendlines to match your trading style and focus.
Colors of the Bull and Bear key features
Extend trendline