Range Detect SystemTechnical analysis indicator designed to identify potential significant price ranges and the distribution of volume within those ranges. The system helps traders calculate POC and show volume history. Also detecting breakouts or potential reversals. System identifies ranges with a high probability of price consolidation and helps screen out extreme price moves or ranges that do not meet certain volatility thresholds.
⭕️ Key Features
Range Detection — identifies price ranges where consolidation is occurring.
Volume Profile Calculation — indicator calculates the Point of Control (POC) based on volume distribution within the identified range, enhancing the analysis of market structure.
Volume History — shows where the largest volume was traded from the center of the range. If the volume is greater in the upper part of the range, the color will be green. If the volume is greater in the lower part, the color will be red.
Range Filtering — Includes multi-level filtering options to avoid ranges that are too volatile or outside normal ranges.
Visual Customization — Shows graphical indicators for potential bullish or bearish crossovers at the upper and lower range boundaries. Users can choose the style and color of the lines, making it easier to visualize ranges and important levels on the chart.
Alerts — system will notify you when a range has been created and also when the price leaves the range.
⭕️ How it works
Extremes (Pivot Points) are taken as a basis, after confirming the relevance of the extremes we take the upper and lower extremes and form a range. We check if it does not violate a number of rules and filters, perform volume calculations, and only then is the range displayed.
Pivot points is a built-in feature that shows an extremum if it has not been updated N bars to the left and N bars to the right. Therefore, there is a delay depending on the bars specified to check, which allows for a more accurate range. This approach allows not to make unnecessary recalculations, which completely eliminates the possibility of redrawing or range changes.
⭕️ Settings
Left Bars and Right Bars — Allows you to define the point that is the highest among the specified number of bars to the left and right of this point.
Range Logic — Select from which point to draw the range. Maximums only, Minimums only or both.
Use Wick — Option to consider the wick of the candles when identifying Range.
Breakout Confirmation — The number of bars required to confirm a breakout, after which the range will close.
Minimum Range Length — Sets the minimum number of candles needed for a range to be considered valid.
Row Size — Number of levels to calculate POC. *Larger values increase the script load.
% Range Filter — Dont Show Range is than more N% of Average Range.
Multi Filter — Allows use of Bollinger Bands, ATR, SMA, or Highest-Lowest range channels for filtering ranges based on volatility.
Range Hit — Shows graphical labels when price hits the upper or lower boundaries of the range, signaling potential reversal or breakout points.
Range Start — Show points where Range was created.
Profile
Accumulation Map [LuxAlgo]The Accumulation Map is a charting tool that tracks traded volume across all price levels within a specified period.
It highlights the relationship between an asset's price and traders' willingness to buy or sell, helping to identify accumulation zones.
These zones represent areas of significant trading activity and provide insights into potential support and resistance levels. The indicator displays these zones using a heatmap, offering a clear, visual representation of market sentiment and activity based on volume.
🔶 USAGE
The Accumulation Map shows the distribution of traded volume across different price levels over a specific period. The volume nodes are displayed as color gradients, each reflecting the accumulation level (trading activity) at that price range.
The heatmap visually represents accumulation areas on the chart with color gradients. This visualization helps traders easily spot areas of significant interest and potential support or resistance levels within the market.
Metric Display controls how accumulation metrics appear on the chart. Options include Level Value Ratio, Level Value Proportion, Combined View, or None.
Color Theme allows users to switch between different color themes.
🔶 SETTINGS
The script includes user-defined parameters to customize profiles. Each input in the indicator settings is provided with a tooltip explaining its usage.
🔹 Accumulation Map
Accumulation Map | Heatmap: Toggles the visibility of the Accumulation Profile | Heatmap.
Metric Display: Controls how accumulation metrics are displayed on the chart.
Color Theme: Switches between different color themes.
🔹 Style & Settings
High Accumulation Color and Threshold: Customize the color for zones with high accumulation, and set the percentage threshold for high accumulation areas (recommended 50%–99%).
Average Accumulation: Define the color for zones with average accumulation.
Low Accumulation: Customize the color for zones with low accumulation, with a threshold range of 10%–40%.
Number of Rows: Specify the number of rows the accumulation map will display.
Horizontal Offset: Controls the horizontal offset of the map relative to the most recent bar.
Profile Width (bars): Sets the profile width in bars.
Extend Calculation To The Right: Extends the calculation to the most recent bar
Anchor Points: Set the first and second anchor points for the map.
🔶 RELATED SCRIPTS
Money-Flow-Profile
Market Core [BigBeluga]MARKET CORE Toolkit
The BigBeluga Market Core Toolkit is a comprehensive suite of advanced trading indicators designed to provide traders with a holistic view of market dynamics, structure, and potential opportunities.
In an ever-evolving market, relying on a single indicator can leave traders vulnerable to gaps in their analysis. The BigBeluga Market Core Toolkit addresses this challenge by integrating a range of complementary indicators that work synergistically to reveal the full picture. From detecting key support and resistance levels to identifying market structure shifts, volume imbalances, inefficiencies or analysis of money flow, this toolkit covers every aspect of market behavior.
⬤ Order Blocks
BigBeluga Order Blocks revolutionize the way traders visualize potential areas of significant market activity. Unlike traditional order block indicators that often result in cluttered, noisy charts, these Order Blocks are designed for clarity and effectiveness. They simulate and predict where large areas of market orders may rest by analyzing volume and volatility, providing excellent support or resistance areas.
The blocks offer cleaner chart presentation with reasonable distribution, volume ratio visualization within each block, and categorization into Strong, High and Balanced blocks.
Additionally, a third line has been introduced to rank order blocks by volume using a modified percent rank method for more precise ranking.
This ranking system uses percentile ranks, a concept commonly used in standardized tests. In the context of order blocks, the percentile rank of a particular order block's volume is interpreted as the percentage of the order blocks strength. This method provides a more nuanced and statistically robust way of comparing and prioritizing order blocks.
Key features:
Cleaner chart presentation with reasonable distribution of blocks
Volume ratio visualization within each block (bullish vs bearish)
Categorization into High and Balanced blocks for easy identification of significant levels
Relative volume percentage and volume delta display
Advanced ranking system using modified percent rank method for volume comparison
These Order Blocks help traders:
Forecast excellent support or resistance areas
Gain insight into the balance of the market at specific levels
Identify significant market levels at a glance
Visualize market imbalances through volume delta
Prioritize order blocks based on their relative volume importance
Make more informed decisions about potential entry and exit points
⬤ Beluga Profile
The Beluga Profile is a revolutionary market analysis tool that transforms complex market data into a clear, intuitive visual narrative. At its core, it combines a Dual-Profile Analysis, merging Delta Volume Profile with Money Flow Profile to give traders a comprehensive view of market dynamics.
The percentage scale on the left side aren't just numbers; they represent the Levels Strength Percentage, a crucial ranking system that immediately draws your attention to the most significant price zones. Complementing this, a heat map overlay brings these strength levels to life, offering an instant, color-coded representation of where the market's most influential areas lie.
To the right, a detailed breakdown of volume and money flow for each level provides the hard data behind the visual cues. This granular information allows you to dive deep into the market's structure, understanding not just where the significant levels are, but why they matter.
Below the main chart, the Delta Volume Bar serves as a foundation, showing the average delta of the volume profile. This bar is more than just a measure of volume – it's a window into the underlying forces driving price movement. Just above this bar, a macro trend indicator in the form of an arrow offers a quick, clear signal of the overall market direction based on these delta volume calculations.
But the Beluga Profile doesn't just show you what's happening – it helps you understand the 'why' and 'how'. The Adaptive Points of Interest feature allows you to customize your analysis, focusing on the areas that matter most to your trading strategy. You can select from various options including Money Flow, Delta+, Delta-, Volume+, and Level % (Highest), tailoring the display to your specific analytical needs. This flexibility ensures you can focus on the most relevant data for your trading style. Real-time Active Price Tracking ensures you're always in sync with the latest market movements.
All of these elements work in concert, creating a symphony of market information. They empower you to:
Spot key price levels with uncanny precision
Foresee potential market turns before they happen
Grasp the quality and strength of price moves
Adjust your strategy on the fly as market conditions shift
Develop a holistic understanding of market structure and participant behavior
Make informed decisions backed by a clear view of the overall market trend
In essence, the Beluga Profile isn't just a tool – it's your market storyteller, translating the complex language of price, volume, and money flow into a narrative that you can understand and act upon with confidence.
⬤ Smart Money Concepts (SMC)
The Smart Money Concepts component of the toolkit focuses on automatically detecting key market structures crucial in technical analysis. It identifies and visualizes Break of Structure (BOS) and Change of Character (CHOCH) patterns, helping traders spot potential trend reversals and significant market movements. This includes BOS identification when price breaks previous support or resistance and CHOCH detection for potential trend reversals, with automatic detection of both bullish and bearish patterns.
The latest enhancement to this feature adds a new layer of analysis through Delta Volume Calculation. When a BOS or CHOCH is detected, the toolkit calculates the delta volume within the range from the high or low point to the break point. This analysis considers all the candles in this range and determines whether the volume is predominantly bullish, bearish, or neutral.
Bullish Volume: If the delta volume is bullish, a green diamond is plotted at the high or low point, indicating potential upward momentum.
Bearish Volume: If the delta volume is bearish, a red diamond is plotted, suggesting downward pressure.
Neutral Volume: When the volume is neutral, a yellow diamond is displayed, indicating a balance in buying and selling forces.
This visual representation of volume dynamics provides an additional layer of insight, helping traders assess the strength and direction of price movements following a structure break. You can see an example of this on the attached image, where the diamonds clearly indicate the type of volume driving the breakout.
The toolkit also incorporates Fair Value Gap (FVG) Detection. Fair Value Gaps represent inefficiencies in the market, where there is an imbalance between buy and sell orders. These gaps often act as magnets for price, potentially leading to future reversals or continuations when filled. The toolkit identifies and highlights these gaps, allowing traders to recognize areas where the market may seek to rebalance.
Additionally, Double Top and Bottom Pattern Detection has been integrated, identifying potential reversal points at these classic price formations. Double tops signal potential bearish reversals after a price peak, while double bottoms suggest potential bullish reversals after a price dip. These patterns can be crucial indicators for traders looking to capitalize on upcoming trend changes.
Smart Money Concepts help traders:
Identify potential trend reversals early with a clearer view of market structure.
Recognize significant changes in market structure and volume participation.
Differentiate between temporary pullbacks and genuine trend changes using volume insights (color coded diamonds).
Shows Fair Value gaps which helps to identify price momentum and inefficiencies in the market.
This enhancement ensures that traders can not only see structural changes but also understand the volume behind those moves, leading to more informed and confident trading decisions.
⬤ Support and Resistance Levels
This powerful tool is designed to identify key price levels in the market, providing traders with a clear visual representation of potential support and resistance areas. It goes beyond simple level identification by incorporating a sophisticated ranking system and adjustable sensitivity.
The grading system of levels is a unique feature that evaluates the significance of high and low points in the price action. It takes into consideration how many times the price has touched or interacted with specific levels. This means that levels which have been tested multiple times are given higher importance in the ranking. For example, a price level that has acted as support or resistance three times will be ranked higher than a level that has only been touched once.
By leveraging this grading system, traders can focus on the most significant levels that have repeatedly influenced price action, potentially improving the accuracy of their trading decisions and risk management strategies.
This Support and Resistance Levels indicator helps traders:
Identify and prioritize potential reversal points based on their historical significance and frequency of price interaction
Set more accurate entry and exit points aligned with key market levels, focusing on those with higher ranking
Understand the hierarchical structure of market support and resistance, distinguishing between major and minor levels
Plan stop-loss and take-profit levels with greater precision, using the ranking to gauge the strength of each level
Adapt their analysis to varying market strengths and volatilities, with the ability to filter out less significant levels
Recognize recurring price patterns and potential breakout levels based on the ranked historical price interactions
⬤ How to Use the Toolkit
Each of these indicators, while powerful on its own, works synergistically with the others to provide a more complete picture of the market.
The strength of this toolkit lies in its ability to analyze the market from multiple perspectives
Combining these advanced trading indicators into a cohesive toolkit empowers traders with a comprehensive, multi-dimensional view of the market that no single indicator could provide on its own. The market's complexity demands an approach that goes beyond relying on just one aspect, such as price action, volume, or order flow. Integrating these diverse indicators creates a robust analytical framework that captures the market from multiple angles, leading to more accurate insights and better-informed decision-making.
Analyze Order Blocks to identify potential support/resistance and volume imbalances
Use Beluga Profile for comprehensive market structure and trend analysis
Monitor SMC indicators for potential trend reversals and breakouts
Utilize Support and Resistance Levels for precise entry/exit points and risk management
Combine insights from all tools for a multi-dimensional view of market conditions
⬤ Customization
Each component of the toolkit offers various customization options to suit different trading styles and preferences. These inputs allow traders to adjust settings to better fit their analysis needs and strategies:
Order Blocks
- Order Blocks : Set the amount of Order Blocks on the chart.
- Color Selection : Choose the color for highlighting the order blocks on your chart.
Market Structure
- Sensitivity : Adjust the sensitivity for detecting market structure breaks. Higher sensitivity will detect more granular breaks, while lower sensitivity focuses on more significant movements.
- Data : Enable or disable the display of market structure data.
- Zigzag Option : Toggle Zigzag displays from highs and lows.
S/R (Support and Resistance)
- Sensitivity : Control how sensitive the tool is in detecting support and resistance levels. Lower sensitivity will highlight fewer but stronger levels, while higher sensitivity may reveal more levels.
- Width % : Adjust the width of the support and resistance zones to visually emphasize their importance.
- Color Selection : Choose colors for both support and resistance levels for better clarity.
FVG (Fair Value Gap)
- Max : Set the maximum number of fair value gaps to display. Higher values will show more gaps, while lower values will focus on the most prominent ones.
- Color Selection : Customize the color for the fair value gap areas.
Volume Profile
- Length : Define the look-back period for the volume profile analysis. A longer length considers more historical data, while a shorter length focuses on recent data.
- Levs : Choose the number of volume levels to display, allowing for more or fewer volume bars within the profile.
- BG : Enable or disable background shading for the volume profile.
- HeatMap : Activate or deactivate the heat map overlay for volume intensity visualization.
- POC (Point of Control) : Toggle the Point of Control display and choose between different metrics, such as volume+, money flow, Delta+ and Delta-, Level % (Highesr), to base the POC on.
- Color Selection : Customize the color for the Point of Control line.
These customization options provide traders with the flexibility to tailor the toolkit to their specific trading strategies, enhancing their ability to identify key market signals with precision.
Each component of the toolkit offers various customization options to suit different trading styles and preferences.
The BigBeluga Market Core Toolkit synthesizes complex market data into clear, actionable formats, providing traders with professional-level insights. It's a comprehensive market analysis system that can give traders a significant edge in understanding market behavior and identifying high-probability trade setups. While highly effective, it's recommended to use this toolkit in conjunction with fundamental analysis and sound risk management practices for optimal trading results.
Weekly Profiles [TFO]This Weekly Profiles indicator was built to overlay historical data to show how prior weeks of price action have unfolded under specified input conditions.
When "Show Historical Weekly Profiles" is enabled, the indicator draws out how prior weeks have traded. This is done by tracking weekly price movements, measuring the percent change from each week's respective weekly open price, and translating that percent change to the current week's open price to visually describe how price fluctuated in those previous weeks.
With "Show Weekly Profile Table" enabled, we can observe some basic statistics on the weekly profiles that have been collected, such as the average range and which days have made the high/low of the week from the given dataset.
There are also options to refine the dataset by specifying which days have made the high/low of the week, which will only show profiles that meet said criteria. For instance, by enabling "Low of Week" and selecting "Monday", the indicator will show every weekly profile that made its low on a Monday. In the following chart, we can again use the table to observe that we currently have 14 such weeks on NQ1! (from the data available on our current chart timeframe and TradingView plan), whose average range is 3.65% from the week's low to the week's high, and from those 14 weeks, the high of the week was made on a Friday 10 times or 71% of the time.
The "Profile Resolution" option specifies the interval at which to show changes in price (given that it is greater than or equal to the current chart timeframe). In the below chart, the Profile Resolution is set to 4 hours. As such, it simplifies the profiles by tracking the close price of each 4 hour candle (again as a percent change from each profile's respective open price). The larger Profile Resolution can make it easier to observe commonalities between profiles, such as the below chart of NQ1! that highlights a noticeable price decrease during the New York morning session across several of the available weekly profiles.
There is also an option to "Highlight Closest Profiles" which does exactly that. Essentially, all weekly profiles are given a score according to how close the current week's price action is matching each profile up until the current point in time. For example, if one were observing this indicator on a Wednesday afternoon, each profile would be scored according to how close price is to each profile, starting from the weekly open, up until the Wednesday afternoon of each profile. Everything after that point in time is disregarded since it hasn't happened yet and can't be measured. With this in mind, profiles with greater similarity to the current week are highlighted with deeper colors, and profiles with lesser similarity are given lighter, more transparent colors.
The "Randomize Colors" option will use various colors for the weekly profiles for easier visual differentiation (especially where there are several profiles crowding each other), as opposed to otherwise having one color for all profiles. Lastly, there are basic styling options to control the table position, table size, and the line width of all weekly profiles.
Rolling Price Activity Heatmap [AlgoAlpha]📈 Rolling Price Activity Heatmap 🔥
Enhance your trading experience with the Rolling Price Activity Heatmap , designed by AlgoAlpha to provide a dynamic view of price activity over a rolling lookback period. This indicator overlays a heatmap on your chart, highlighting areas of significant price activity, allowing traders to spot key price levels at a glance.
🌟 Key Features
📊 Rolling Heatmap: Visualize historical price activity intensity over a user-defined lookback period.
🔄 Customizable Lookback: Adjust the heatmap lookback period to suit your trading style.
🌫️ Transparency Filter: Fine-tune the heatmap’s transparency to filter out less significant areas.
🎨 Color Customization: Choose colors for up, down, and highlight areas to fit your chart’s theme.
🔄 Inverse Heatmap Option: Flip the heatmap to highlight less active areas if needed.
🛠 Add the Indicator: Add the Indicator to favorites. Customize settings like lookback period, transparency filter, and colors to fit your trading style.
📊 Market Analysis: Watch for areas of high price activity indicated by the heatmap to identify potential support and resistance levels.
🔧 How it Works
This script calculates the highest and lowest prices within a specified lookback period and divides the price range into 15 segments. It counts the number of candles that fall within each segment to determine areas of high and low price activity. The script then plots the heatmap on the chart, using varying levels of transparency to indicate the strength of price activity in each segment, providing a clear visual representation of where significant trading occurs.
Stay ahead of the market with this powerful visualization tool and make informed trading decisions! 📈💼
Pivot Point Profile [LuxAlgo]The Pivot Point Profile indicator groups and displays data accumulated from previous pivot points, providing a comprehensive method for prioritizing and displaying areas of interest directly given by swing highs and lows.
Users have access to common settings present in other profile-type indicators.
🔶 USAGE
The Pivot Point Profile is particularly helpful in identifying highly active reversal zones that have been visited multiple times by price. Because of this, we could generally expect these areas to serve as future points of interest, often acting as support or resistance when re-visited.
The profile displays data associated with both Pivot Highs and Pivot Lows. Each row consists of pivot high and pivot low counts side-by-side, forming the total width of the row.
By analyzing the row as a whole, we can gain a better understanding of WHERE to look for interactions.
By analyzing the pivot counts independently, we can gain a better understanding of WHAT to expect when returning to these areas.
For example:
If a row in the profile contains entirely Pivot Lows, this could be seen as an indication to look for buyers to hold that level for a continuation upwards. A break of this level could be interpreted as a lack of interest from previous buyers at this level, indicating a further move down.
🔹 Concentrated Areas
Each row in the profile displays the current count of high pivots and low pivots within the selected lookback. The largest count for each pivot direction is identified as a "Concentrated Area (CA)", these CAs are highlighted over the chart with a line displaying the average of all pivots within that CA. The CA Average is the average of all pivot points (in the majority direction) within the given row.
These can hold more importance as potential support/resistance areas.
Note: The CA Threshold can be manually adjusted to highlight all rows based on a user-selected value.
🔶 DETAILS
🔹 Calculation
The idea behind the Pivot Point Profile is a new analysis method for pivot points, taking the idea of a volume profile and adapting it to display pivot points instead of volume. By using this data, in theory, we should be able to better prioritize zones to anticipate reversals, as well as identify key levels to watch for buyer & seller interactions to use as confirmations in direction.
The (vertical) width of each row is the product of the script's "Row Size", this is the number of rows that the profile will consist of. With a max of 250, the profile can be decently granular. That being said, A more granular profile will have fewer overlapping pivot points. By decreasing the row size (Using fewer rows in the profile) you will increase the tolerance for grouping pivot points. Potentially leading to a more comprehensive Profile. Inversely, By reducing the tolerance for grouping, you will better visualize only similar highs and lows but may have noisier data to sift through.
The Profile is calculated based on a "Lookback" parameter, using only the lookback amount of previous high and low pivots to calculate the profile. Configuring this parameter alongside "Pivot Length", will allow for great control over the frame of reference of the profile.
Note: This indicator is capable of utilizing the full chart history of pivot points, this can be done by enabling the "Use Full Chart History" setting, this will cause the script will calculate from everything it has access to on your current chart.
🔹 Display
The Pivot Point Profile display can be customized to fit a various range of chart styles and visual needs. The specific settings to adjust these can be located in the "Profile Display" Section of the User Inputs.
Profile Width: Sets the Left to Right Width of the Profile. This is the maximum width that the profile will occupy and will scale to fit within this width.
Profile Offset: Sets the distance of the Profile's Axis from the current chart candle. This moves the entire profile left and right to enable to user to set the distance between the profile and the current candle.
Direction: Changes the display direction of the profile, allowing for "Left", "Right", or "Center" display styles.
🔶 SETTINGS
🔹 Pivot Point Parameters
Pivot Type: Choose between "Fractal Pivots" or "SMC Structure" to use as the basis for pivots.
Length: Sets the length for the pivot calculations.
🔹 Profile Calculations Parameters
Lookback: Sets the number of pivots to calculate within, in increments of high and low pairs. (Setting this to 1 = 1 Pivot High & 1 Pivot Low)
Use Full Chart History: Disregards the set lookback and instead uses all available chart data to calculate from.
Row Size: Sets the total number of rows to calculate the profile with.
🔹 Profile Display
Profile Width: Sets the max left & right width (in bars) that the profile will occupy.
Profile Offset: Sets the distance of the profile axis from the last chart bar.
Direction: Sets the display direction
🔹 Concentrated Areas
Highlight CAs: Extends the rows left from concentrated areas.
CA Threshold: Manually set the threshold for determining concentrated areas, when disabled, only the largest rows will be displayed.
CA Averages: Toggles the concentrated area averages for each pivot direction.
Note: CA Averages can be displayed independently without CA Highlights being displayed, and vice versa.
Volume Positive & Negative Levels [ChartPrime]Volume Positive & Negative Levels
Overview:
The Volume Positive & Negative Levels indicator by ChartPrime is designed to provide traders with a clear visualization of volume activity across different price levels. By plotting volume levels as histograms, this tool helps identify significant areas of buying (positive volume) and selling (negative volume) pressure, enhancing the ability to spot potential support and resistance zones.
Key Features:
⯁ Lookback Period:
- The `lookbackPeriod` parameter, set to 500 bars, determines the range over which the volume analysis is conducted, ensuring a comprehensive view of the market’s volume activity. The maximum lookback period is 500 bars or the bars currently visible on the chart, whichever is smaller.
⯁ Dynamic Volume Calculation:
- Volume is calculated dynamically based on the price action, with positive volume indicating buying pressure (close > open) and negative volume indicating selling pressure (close < open).
⯁ Color Coding for Clarity:
- Positive Volume: Represented with a distinct color (`#ad9a2c`), making it easy to identify areas of buying interest.
- Negative Volume: Highlighted with another color (`#ad2cad`), simplifying the detection of selling pressure.
Volume Threshold and Bins:
- The indicator allows users to set a volume threshold (`volume_level`) to highlight significant volume levels, with the default set at 70.
- The number of bins (`numBins`) defines the granularity of the volume profile, with a higher number providing more detail.
⯁ Volume Profile Visualization:
- The volume profile is plotted as a histogram, with the height of each bar proportional to the volume at that price level. This visualization helps in quickly assessing the strength of volume at various price points.
⯁ Interactive Labels and Threshold Indicators:
- Labels: The indicator uses labels to mark significant volume levels, providing quick reference points for traders.
- Threshold Lines: Lines are drawn at specified volume thresholds, with colors and widths dynamically adjusted based on the volume levels.
⯁ User Inputs:
- Volume Threshold (`volume_level`): Sets the minimum volume required to highlight significant levels.
- Number of Bins (`numBins`): Determines the resolution of the volume profile.
- Line Width (`line_withd`): Specifies the width of the lines used in the visualization.
The Volume Positive & Negative Levels indicator is a powerful tool for traders looking to gain deeper insights into market dynamics. By providing a clear visual representation of volume activity across different price levels, it helps traders identify key support and resistance zones, spot trends, and make more informed trading decisions. Whether you are a day trader or a swing trader, this indicator enhances your ability to analyze volume data effectively, improving your overall trading strategy.
Open Liquidity Heatmap [BigBeluga]Open Liquidity Heatmap is an indicator designed to display accumulated resting liquidity on the chart.
Unlike any other liquidity heatmap, this aims to accumulate liquidity at specific levels that build up over time, showing larger areas of liquidity.
🔶 FEATURES
The indicator includes the following settings:
Lookback : Used to determine the range calculation of the heatmap.
Leverage : Leverage of the liquidation (Counted as % in price, Example: 4.5 will return a distance from price of 4.5%, indicating any possible resting liquidity in this range).
Levels : Amount of levels to display (Each level is counted as liquidity resting on the chart; fewer levels will return a bigger area of liquidity sitting on the chart).
Mode : Apply a color gradient from the minimum liquidation to the maximum liquidity level. Set the maximum color gradient value (Counted as volume).
Offset : Automatically determine the offset range of the Volume Profiles. Manual offset of the Volume Profiles.
🔶 CALCULATION
for i = 0 to step - 1
float plotter = na
switch i
0 =>
plotter := hs
=>
plotter := hs - diff * ( i )
cls.hm.gnL(plotter)
cls.vp.put(plotter, 0)
We calculate levels like a normal volume profile with steps, from the highest point within the lookback to the lowest one. Each level will contain the corresponding amount of volume that the candle has closed in that range.
As we can see in the image above, we add liquidity each time the distance in % from price is between two levels.
Unlike many liquidity indicators that provide a single candle liquidity heatmap, this aims to add up liquidity (volume) in already present levels.
This can be extremely useful to see which levels are likely to be more liquid and tend to get a bigger reaction to the price.
Imagine it like a range of levels that each time price revisits that area, a new position area is added; we add volume in that area each time price visits that zone. Liquidity builds up in those zones, causing a bigger reaction to the price once the price visits it.
This indicator is not the same as a single candle heatmap like many others. What is a single candle heatmap?
A single candle heatmap is when a level is created on every new candle, coloring the level based on the total volume of it.
This indicator, on the contrary, aims to provide a more specific use by adding up liquidity each time price visits it.
🔶 BASIC DEMOSTRATION
This is a basic demonstration of how we can spot high liquidity points overall using confluence:
We see the POC of the liquidation in a low volume area of the normal volume profile adding up as confluence.
Resistance from the POC Volume Profile suggesting price will go lower.
Major long open liquidity down.
As we can see, price takes out all the long liquidity and right after pumping, indicating that all the major liquidity got taken out.
Some key note to take is that a POC in the liquidation heatmap in a low volume area of the normal Volume Profile add confluence of a possible big reaction in that zone.
In the forex market, we suggest to use a low distance from price (Leverage) while in a crypto market you can use the one that fit the best the current timeframe.
🔶 CONCLUSION
This indicator aims to show open resting liquidity that had built up over time, showing the most amount of liquidation in specific areas in an aggregated way unlike many liquidation heatmap indicators that show single-level liquidation.
🔶 RELATED SCRIPT
Volume Footprint Voids [BigBeluga]Volume Footprint Voids is a unique tool that uses lower timeframe calculation to plot different styles of single candle POC.
This indicator is very powerful for scalping and finding very precise entry and exits, spotting potential trapped traders, and more.
Unlike many other volume profiles, this aims to plot single candle profiles as well as their own footprints.
🔶 FEATURES
The script includes the following settings:
Windows: Plotting style and calculations
Coloring modes
Display modes
lower-timeframe calculations
🔶 CALCULATION
In the image above we can see how the script calculates each level position that will serve as a calculation process to see how much volume/closes there are within the levels.
In the image above, we can have a more clear example of how we count each candle close.
We use the prior screenshot as an example, after setting each level we will use the lower-timeframe input to measure the amount of closes within the ranges.
Depending on the lot size, the box will be larger or smaller, usually the POC will always have the highest box size.
NOTE: Size is the starting point, always from the low of the candle.
To find more voids, select a closer LTF to the current one you're using.
To find fewer voids, select a timeframe away from your current one.
Due to Pine Script limitations, we are only able to plot a certain amount of footprints, and we can't plot the whole history chart.
POC will be the largest block displayed, indicating the time point of control
Gray areas are closes above the average
Black are Void or imbalance that price will fill in the future, like FVG
The image above shows an incorrect size input that will lead to bad calculations, while on the other side, a correct size input that will lead to a clear vision and better calculation.
🔶 WINDOWS
The "▲▼" Mode will display delta buyers and delta sellers coloring with voids as black.
It also offers a gradient mode for a beautier visualization
The "Total Volume" mode will display the net volume within the lot size (closes within the levels).
This is useful to spot possible highest net volume within the same highest lot size.
The "POC + Gaps" will show both POC and Gaps as the highest block while all the rest will be considered as the smaller block.
This is useful to see where the highest lot were and if there are higher or lower imbalances within the candle
The last option "Gaps" will simply display the gaps as the highest block, while the POC as the lowest block.
This is useful to have a better view of the gaps areas
🔶 EXAMPLE
This is one of the most basic examples of how this script can be used. POC at the bottom creating a strong support area as price holds and creates higher voids gap that price fills while rising.
🔶 SETTINGS
Users have full control over the script, from colors to choosing the lower-timeframe inputs to disabling the lot size.
Periodic Volume Profile++ [Pt]█ Introduction
The Advanced Pro ++ Version of the Periodic Volume Profile is an advanced TradingView indicator, designed for traders focusing on volume-driven strategies. It provides detailed volume distribution and key levels over selected periods with extensive customization options.
█ Features Overview
Highly customizable and versatile, this tool is essential for a trader's toolkit, offering a variety of settings to suit specific trading needs.
█ Volume Profile
Display Modes: Four options - Off, Total, Up/Down, Gradient.
POC Highlighting: Option to highlight the Point of Control (POC) VP histogram bar.
VP Bar Size Control: Customize the number of ticks per VP bar, including a 'use min tick' option.
Volume Display: Show volume figures on the profile.
Developing VP Color Theme: Different color themes for developing VP.
█ Point of Control (POC)
Historical POCs: Display POCs from a specified number of past periods.
POC Levels: Auto-drawn levels indicating price, period, timeframe, and volume.
Color Customization: Separate color options for closest POCs, older POCs, and NPOCs (Naked POCs).
Closest Historical POC Display: Show nearest historical POC within a customizable range.
Low Volume POC Fading: Fade out low volume POC lines.
█ Value Area and Background Color
Display Options: Off, Custom Color, or Color based on Period Close vs. Open.
Customizable Colors: Tailor the color scheme as per preference.
Value Area High/Low Prices: Display options for VAH and/or VAL.
█ Extra Options
Periodic Candle Bar Display: Show candle bar for each period with customizable colors.
Previous POC, VAH, VAL Display: Display these levels in dashed lines.
The Advanced Pro ++ Volume Profile indicator is a top choice for traders seeking in-depth analysis of volume patterns and market structure, offering unparalleled customization and precision.
Intraday Volume Profile [BigBeluga]The Intraday Volume Profile aims to show delta volume on lower timeframes to spot trapped shorts at the bottom or trapped longs at the top, with buyers pushing the price up at the bottom and sellers at the top acting as resistance.
🔶 FEATURES
The indicator includes the following features:
LTF Delta precision (timeframe)
Sensibility color - adjust gradient color sensitivity
Source - source of the candle to use as the main delta calculation
Color mode - display delta coloring in different ways
🔶 DELTA EXAMPLE
In the image above, we can see how delta is created.
If delta is positive, we know that buyers have control over sellers, while if delta is negative, we know sellers have control over buyers.
Using this data, we can spot interesting trades and identify trapped individuals within the candle.
🔶 HOW TO USE
In the image above, we can see how shorts are trapped at the bottom of the wick (red + at the bottom), leading to a pump also called a "short squeeze."
Same example as before, but with trapped longs (blue + at the top).
This can also work as basic support and resistance, for example, trapped shorts at the bottom with positive delta at the bottom acting as strong support for price.
Users can have the option to also display delta data within the corresponding levels, showing Buyers vs Sellers for more precise trading ideas.
NOTE:
User can only display the most recent data for the last 8 buyers and sellers.
It is recommended to use a hollow candle while using this script.
Liquidity composition / quantifytools- Overview
Liquidity composition divides each candle into sections that are used to display transaction activity at price. In simple terms, an X-ray through candle is formed, revealing the orderflow that built the candle in greater detail. Liquidity composition consists of two main components, lots and columns. Lots and columns can be used to visualize user specified volume types, currently supporting net volume and volume delta. Lots and columns can be used to visualize same or different volume types, allowing a combination of volume footprint, volume delta footprint and volume profile in one single view. Liquidity composition principally works on any chart, whether that is equities, currencies, cryptocurrencies or commodities, even charts with no volume data (in which case volatility is used to approximate transaction activity). The script also works on any timeframe, from minute charts to monthly charts. Orderflow can be observed in real-time as it develops and none of the indications are repainted.
Example: Displaying same volume types on lots and columns
Example: Displaying different volume types on lots and columns
Liquidity composition supports user specified derivative data, such as point of control(s) and net activity coloring. Derivative data can be calculated based on either net volume or volume delta, resulting in different highlights.
With net volume, volume delta and derivative data in one view, key orderflow events such as delta imbalances, high volume nodes, low volume nodes and point of controls can be used to quickly identify accumulation/distribution, imbalances, unfinished/finished auctions and trapped traders.
Accessing script 🔑
See "Author's instructions" section, found at bottom of the script page.
Key takeaways
- Liquidity composition breaks down transaction activity at price, measured in net volume or volume delta
- Developing activity can be observed real-time, none of the indications are repainted
- Transaction activity is calculated using volumes accrued in lower timeframe price movements
- Lots and columns can be used to display same or different volume types (e.g. volume delta lots and net volume columns) in single view
- Users can specify derivative data such as volume delta POCs, net volume POC and net activity coloring
- For practical guide with practical examples, see last section
Disclaimer
Orderflow data is estimated using lower timeframe price movement. While accurate and useful, it's important to note the calculations are estimations and are not based on orderbook data. Estimates are calculated by allotting volume developing on lower timeframe chart to its respective section based on closing price. Volume delta (difference between buyers/sellers) is calculated by subtracting down move volumes (sell volume) from up move volumes (buy volume). Accuracy of the orderflow estimations largely depends on quality of lower timeframe chart used for calculations, which is why this tool cannot be expected to work accurately on illiquid charts with broken data.
Liquidity composition does not provide a standalone trading strategy or financial advice. It also does not substitute knowing how to trade. Example charts and ideas shown for use cases are textbook examples under ideal conditions, not guaranteed to repeat as they are presented. Liquidity composition should be viewed as one tool providing one kind of evidence, to be used in conjunction with other means of analysis.
- Example charts
Chart #1: BTCUSDT
Chart #2: EURUSD
Chart #3: ES futures
- Calculations
By default, size of sections and lower timeframe accuracy are automatically determined for all charts and timeframes. Number of lower timeframe price moves used for calculating orderflow is kept at fixed value, by default set to 350. Accuracy value dictates how many lower timeframe candles are included in the calculation of volume at price. At 350, the script will always use 350 lower timeframe price movements in calculations (when possible). When calculated dynamic timeframe is less than 1 minute, the script switches to available seconds based timeframes. Minimum dynamic timeframe can be capped to 1 minute (as seconds based timeframes are not available for all plans) or dynamic timeframe can be overridden using an user specified timeframe.
Example: Calculating dynamic lower timeframe
Main chart: 4H / 240 minutes
Accuracy value: 100
Formula: 240 minutes / 100 = 2.4 minutes
Timeframe used for calculations = 2 minutes
Section size is automatically determined based on typical historical candle range, the bigger it is, the bigger the section size as well. Like dynamic timeframe, automatic section size can be manually overridden by user specified size expressed in ticks (minimum price unit). Users can also adjust sensitivity of automatic sizing by setting it higher (smaller sections, more detail and more noise) or lower (less sections, less detail and less noise). Section size and dynamic timeframe can be monitored via metric table.
Volume at price is calculated by allotting volume associated with a lower timeframe price movement to its respective section based on closing price (volume is stored to the section that covers closing price). When used on a chart with no volume data, volatility is used instead to determine likely magnitude of participation. Volume delta (difference between buyers/sellers) is calculated by subtracting down move volumes (sell volume) from up move volumes (buy volume). Volumes accrued in sections are monitored over a longer period of time to determine a "normal" amount of activity, which is then used to normalize accrued volumes by benchmarking them against historical values.
Volume values displayed on the left side represent how close or far volume traded at given section is to an extreme, represented by value of 10 . The more value exceeds 10, the more extreme transaction activity is historically. The lesser the value, the less extreme (and therefore more typical) transaction activity is. Users can adjust sensitivity of volume extreme threshold, either by increasing it (more transaction activity is needed to constitute an extreme) or decreasing it (less transaction activity is needed to constitute an extreme).
Example: Interpreting volume scale
0 = Very little to no transaction activity compared to historical values
5 = Transaction activity equal to average historical values
10 = Transaction activity equal to an extreme in historical values
10+ = The more transaction activity exceeds value of 10, the more extreme it is historically
Accuracy of orderflow data largely depends on quality of lower timeframe data used in calculations. Sometimes quality of underlying lower timeframe data is insufficient due to suboptimal accuracy or broken lower timeframe data, usually caused by illiquid charts with gaps and inconsistent values. Therefore, one should always ensure the usage of most liquid chart available with no gaps in lower timeframe data. To combat poor orderflow data, a simple data quality check is conducted by calculating percentage of sections with volume data out of all available sections. Idea behind the test is to capture instances where unusual amount of sections are completely empty, most likely due to data gaps in LTF chart. E.g. 90% of sections hold some volume data, 10% are completely empty = 90% data quality score.
Data quality score should be viewed as a metric alerting when detail of underlying data is insufficient to consider accurate. When data quality score is slightly below threshold, lower timeframe chart used for calculations is likely fine, but accuracy value is too low. In this case, one should increase accuracy value or manually override used timeframe with a smaller one. When data quality score is well below threshold, lower timeframe chart used for calculations is likely broken and cannot be fixed. In this case, one should look for alternative charts with more reliable data (e.g. ES1! -> SPY, BITSTAMP:BTCUSD -> BINANCE:BTCUSDT).
Example : When insufficient data quality scores can/cannot be fixed
- Derivative data
Point of control
Point of control, referring to point in price where transaction activity is highest, can be calculated based on the volume type of lots or columns (based on net volume or volume delta). Depending on the calculation basis, displayed point of controls will vary. POC calculated based on net volume is no different from traditional POC, it is simply the section with highest amount of transaction activity, marked with an X. When calculating POC based on volume delta, the script will highlight two point of controls, named leading and losing point of control . Leading POC refers to lot with highest amount of volume delta, marked with an X. If leading POC was net buy volume, losing POC is marked on section with highest net sell volume, marked with S respectfully. Same logic applies in vice versa, if leading POC is net sell volume, losing POC is marked on highest buy volume section, using the letter B.
Net activity
Similarly to point of control calculation, net activity can be calculated based on either volume types, lots or columns. When calculating net activity based on net volume, candles will be colorized according to magnitude of total volume traded. When calculating net activity based on volume delta, candles will be colorized according to side with most volume traded (buyers or sellers). Net activity color can be applied on borders or body of a candle.
- Visuals
Lots, columns, candles and POCs can be colorized using a fixed color or a volume based dynamic color, with separate color options for buy side volume, sell side volume and net volume.
Metric table can be offsetted horizontally or vertically from any four corners of the chart, allowing space for tables from other scripts.
Table sizes, label sizes and offsets for visuals are fully customizable using settings menu.
- Practical guide
OHLC data (candles) is a simple condensed visualization of an auction market process. Candles show where price was in the beginning of an auction period (timeframe), the highest/lowest point and where price was at the end of an auction. The core utility of Liquidity composition is being able to view the same auction market process in much greater detail, revealing likely intention, effort and magnitude driving the process. All basic orderflow concepts, such as ones presented by auction market theory can be applied to Liquidity composition as well.
The most obvious and easy to spot use case for orderflow tools is identifying trapped traders/absorption, seen in high transaction activity at the very highs/lows of a candle or even better, at wicks. High participation at wicks can be used to identify forced orders absorbed into limit orders, idea behind being that when high transaction activity is placed at a wick, price went one direction with a lot of participation (high effort) and came right back up (low impact) within the same time period.
Absorption can show itself in many ways:
- Extreme buy volume sections at wick highs or buy side POC at wick highs
- Multiple, clustered high buy volume sections (but not extreme) at wick highs
- Positive net volume delta into a reversal down
- Extreme sell volume sections at wick lows or sell side POC at wick lows
- Multiple, clustered high sell volume sections (but not extreme) at wick lows
- Negative net volume delta into a reversal up
- Extreme net volume sections at or net volume POC at wick highs/lows
- Extreme net volume into a reversal up/down
For accurate analysis, orderflow based events should be viewed in the context of price action. To identify absorption, it's best to look for opportunities where an opposing trend is clearly in place, e.g. absorption into highs on an uptrend, absorption into lows on a downtrend. When price is ranging without a clear trend or there's no opposing trend, extreme activity at an extreme end of a candle might be aggressive participants attempting to initiate a new trend, rather than getting absorbed in the same sense. With enough effort put into pushing price to the opposite direction at overextended price, a shift in trend direction might be near.
Price action based levels are a great way to get context around orderflow events. Simple range highs/lows as a single data point serve as a high probability regimes for reversals, making them a great point of confluence for identifying trapped traders.
Low to zero volume sections can be used to identify points in price with little to no trading, leaving a volume null/void behind. Typically sections like these represent gaps on a lower timeframe chart, which can be used as reference levels for targets and support/resistance.
Net volume can be used for same purposes as above, but for determining general intention of market participants it's a much more suitable tool than volume delta. According to auction market theory, low/no participation is considered to reject prices and high participation is considered to accept prices. With this concept in mind, unfinished auctions occur when participation is high at highs or high at lows, idea behind being that participants are showing willingness and interest to trade at higher or lower prices. Auction is considered finished when the opposite is true, i.e. when participants are not showing willingness to trade at higher/lower prices. In general, direction of unfinished auctions can be expected to continue shortly and direction of unfinished auctions can be expected to hold.
While shape of volume delta and net volume are usually similar, they're not the same thing and do not represent the same event under the hood. Volume delta at 0 does not necessarily mean participation is 0, but can also mean high participation with equal amount of buying and selling. With this distinction in mind, using volume delta and net volume in tandem has the benefit of being able to identify points in price with a lot of up and down price movement packed into a small area, i.e. consolidation. Points in price where price hangs around for an extended period of time can be used to identify levels of interest for re-tests and breakout opportunities.
Volume Profile PlusThis indicator provides a high-resolution and high-precision implementation of Volume Profile with flexible range settings. Its key features include:
1. Support for a high resolution of up to 2,500 rows.
2. Capability to examine lower timeframe bars (default 5,000 intra-bars) for enhanced precision.
3. Three range modes — "Visible Range", "Anchored Range", and "All Range".
4. Highlighting of Point of Control and Value Area.
5. Extensive customization options allowing users to configure dimensions, on-chart placements, and color schemes.
🔵 Settings
The settings screen, along with the explanations for each setting, is provided below:
🔵 High Resolution using Polyline
Inspired by @fikira, this indicator utilizes the newly introduced `polyline` type in PineScript to plot the volume profile. It employs a single polyline instance to represent the entire histogram. With each polyline instance supporting up to 10,000 points and each histogram row requiring 4 points, this indicator can accommodate 2500 rows, resulting in a significantly higher resolution compared to conventional volume profile indicators that use `line`s or `box`es to draw the histogram.
🔵 High Precision Data-binning using Lower Timeframe Data
Conventional volume profile indicators often face one or both of the following limitations:
1. They only consider volume within the chart's current timeframe.
2. They assign each bar's total volume to a single price bucket based on the bar's average price, rather than distributing volume across multiple price buckets.
As a result, when the number of bars in the chart is low, those indicators may provide imprecise results, making it difficult to accurately identify significant volume nodes and the point of control.
To address these limitations and enhance accuracy, this indicator examines data from lower timeframes and distributes the volume to fine-grained price buckets. It intelligently selects an appropriate lower timeframe to ensure precise output while complying with a maximum specified number of bars to maintain good performance.
🔵 Three Range Modes
This indicator offers users the flexibility to choose from three range modes:
1. Visible Range (Default Mode): In this mode, the volume profile calculation begins at the time of the left-most bar displayed in the current viewport. As the user scrolls through the viewport, the volume profile updates automatically.
2. Anchored Range: This mode allows the user to set the start time either by using the datetime input boxes or by dragging the anchor line on the chart.
3. All Range: In this mode, the volume profile calculation is based on all the historical bars available in the chart.
Heat profileA trader once told me that top wicks equals sell interest and bottom wicks equals buy interest. If that's true then this indicator tries to organize and visualize this idea.
It uses transparent boxes to give the impression of a heat map. Due to limitations of my own skill and possibly pinescript it is not possible to render it in a useful manner using different colors that depicts buy and sell interests respectively. This means it works more like a volume profile in that it mixes the buy and sell interest together in the heat map. This can still be helpful because it help traders focus their attention on areas other than the current price candle.
In my limited time of using it, it seems like on the large timeframes the highlighted areas is where the price wants to go, and on small time frames the darkest areas is where the price wants to go. But i will leave it up to any user to spot and use their own patterns with the indicator.
Last but not least, the indicator only uses the last 50 candles, which can be too little on a small timeframe. Unfortunately the way i have done it this limitation is hardcoded in the script due to how pinescript works, by editing the code you can increase it. (Put max_boxes_count = x after overlay = true. Maximum number is 500)
Hope you enjoy. Have a nice day.
OI Visible Range Ladder [Kioseff Trading]Hello!
This Script “OI Visible Range Ladder” calculates open interest profiles for the visible range alongside an OI ladder for the visible period!
Features
OI Profile Anchored to Visible Range
OI Ladder Anchored to Visible Range
Standard POC and Value Area Lines, in Addition to Separated POCs and Value Area Lines for each category of OI x Price
Configurable Value Area Targets
Curved Profiles
Up to 9999 Profile Rows per Visible Range
Stylistic Options for Profiles
Up to 9999 volume profile levels (Price levels) can be calculated for each profile, thanks to the new polyline feature, allowing for less aggregation / more precision of open interest at price.
The image above shows primary functionality!
Green profiles = Up OI / Up Price
Yellow profiles = Down OI / Up Price
Purple profiles = Up OI / Down Price
Red profiles = Down OI / Down Price
The image above shows POCs for each OI x Price category!
Profiles can be anchored on the left side for a more traditional look.
The indicator is robust enough to calculate on “small price periods”, or for a price period spanning your entire chart fully zoomed out!
That’s about it :D
This indicator is Part of a series titled “Bull vs. Bear” - a suite of profile-like indicators.
Thanks for checking this out!
If you have any suggestions please feel free to share!
Initial Balance (customizable)Introducing the Initial Balance
Discover precision and clarity in your trading decisions with the Initial Balance. Crafted for traders who seek an edge, this tool pinpoints the range established during the first hour of the trading session, offering a holistic understanding of market sentiments right from the start.
Key Features:
Accurate Visualization: See the initial balance range plotted seamlessly on your chart, providing a transparent view of early market movement.
Customizable Timeframes: Whether you're an early bird catching the first market moves or prefer trading a bit later, set your own start time to fit your trading strategy.
Subtle Aesthetics: With non-intrusive lines and a customizable transparency setting, this indicator integrates smoothly with any chart, ensuring your view remains clear and undistracted.
Adaptable to Any Market: No matter your trading domain - be it stocks, forex, or commodities - this tool adjusts to offer valuable insights.
Why Use the Initial Balance Indicator?
Understanding the initial balance gives a trader the advantage of interpreting the day's potential trend. It's a reflection of early market consensus and serves as a foundation for the day's trading action. By leveraging this, you can better align your strategies with market momentum and improve your trading outcomes.
Add clarity and precision to your trading toolkit. Try the Initial Balance and elevate your trading insights.
lib_profileLibrary "lib_profile"
a library with functions to calculate a volume profile for either a set of candles within the current chart, or a single candle from its lower timeframe security data. All you need is to feed the
method delete(this)
deletes this bucket's plot from the chart
Namespace types: Bucket
Parameters:
this (Bucket)
method delete(this)
Namespace types: Profile
Parameters:
this (Profile)
method delete(this)
Namespace types: Bucket
Parameters:
this (Bucket )
method delete(this)
Namespace types: Profile
Parameters:
this (Profile )
method update(this, top, bottom, value, fraction)
updates this bucket's data
Namespace types: Bucket
Parameters:
this (Bucket)
top (float)
bottom (float)
value (float)
fraction (float)
method update(this, tops, bottoms, values)
update this Profile's data (recalculates the whole profile and applies the result to this object) TODO optimisation to calculate this incremental to improve performance in realtime on high resolution
Namespace types: Profile
Parameters:
this (Profile)
tops (float ) : array of range top/high values (either from ltf or chart candles using history() function
bottoms (float ) : array of range bottom/low values (either from ltf or chart candles using history() function
values (float ) : array of range volume/1 values (either from ltf or chart candles using history() function (1s can be used for analysing candles in bucket/price range over time)
method tostring(this)
allows debug print of a bucket
Namespace types: Bucket
Parameters:
this (Bucket)
method draw(this, start_t, start_i, end_t, end_i, args, line_color)
allows drawing a line in a Profile, representing this bucket and it's value + it's value's fraction of the Profile total value
Namespace types: Bucket
Parameters:
this (Bucket)
start_t (int) : the time x coordinate of the line's left end (depends on the Profile box)
start_i (int) : the bar_index x coordinate of the line's left end (depends on the Profile box)
end_t (int) : the time x coordinate of the line's right end (depends on the Profile box)
end_i (int) : the bar_index x coordinate of the line's right end (depends on the Profile box)
args (LineArgs type from robbatt/lib_plot_objects/24) : the default arguments for the line style
line_color (color) : the color override for POC/VAH/VAL lines
method draw(this, forced_width)
draw all components of this Profile (Box, Background, Bucket lines, POC/VAH/VAL overlay levels and labels)
Namespace types: Profile
Parameters:
this (Profile)
forced_width (int) : allows to force width of the Profile Box, overrides the ProfileArgs.default_size and ProfileArgs.extend arguments (default: na)
method init(this)
Namespace types: ProfileArgs
Parameters:
this (ProfileArgs)
method init(this)
Namespace types: Profile
Parameters:
this (Profile)
profile(tops, bottoms, values, resolution, vah_pc, val_pc, bucket_buffer)
split a chart/parent bar into 'resolution' sections, figure out in which section the most volume/time was spent, by analysing a given set of (intra)bars' top/bottom/volume values. Then return price center of the bin with the highest volume, essentially marking the point of control / highest volume (poc) in the chart/parent bar.
Parameters:
tops (float ) : array of range top/high values (either from ltf or chart candles using history() function
bottoms (float ) : array of range bottom/low values (either from ltf or chart candles using history() function
values (float ) : array of range volume/1 values (either from ltf or chart candles using history() function (1s can be used for analysing candles in bucket/price range over time)
resolution (int) : amount of buckets/price ranges to sort the candle data into (analyse how much volume / time was spent in a certain bucket/price range) (default: 25)
vah_pc (float) : a threshold percentage (of values' total) for the top end of the value area (default: 80)
val_pc (float) : a threshold percentage (of values' total) for the bottom end of the value area (default: 20)
bucket_buffer (Bucket ) : optional buffer of empty Buckets to fill, if omitted a new one is created and returned. The buffer length must match the resolution
Returns: poc (price level), vah (price level), val (price level), poc_index (idx in buckets), vah_index (idx in buckets), val_index (idx in buckets), buckets (filled buffer or new)
create_profile(start_idx, tops, bottoms, values, resolution, vah_pc, val_pc, args)
split a chart/parent bar into 'resolution' sections, figure out in which section the most volume/time was spent, by analysing a given set of (intra)bars' top/bottom/volume values. Then return price center of the bin with the highest volume, essentially marking the point of control / highest volume (poc) in the chart/parent bar.
Parameters:
start_idx (int) : the bar_index at which the Profile should start drawing
tops (float ) : array of range top/high values (either from ltf or chart candles using history() function
bottoms (float ) : array of range bottom/low values (either from ltf or chart candles using history() function
values (float ) : array of range volume/1 values (either from ltf or chart candles using history() function (1s can be used for analysing candles in bucket/price range over time)
resolution (int) : amount of buckets/price ranges to sort the candle data into (analyse how much volume / time was spent in a certain bucket/price range) (default: 25)
vah_pc (float) : a threshold percentage (of values' total) for the top end of the value area (default: 80)
val_pc (float) : a threshold percentage (of values' total) for the bottom end of the value area (default: 20)
args (ProfileArgs)
Returns: poc (price level), vah (price level), val (price level), poc_index (idx in buckets), vah_index (idx in buckets), val_index (idx in buckets), buckets (filled buffer or new)
history(src, len, offset)
allows fetching an array of values from the history series with offset from current candle
Parameters:
src (int)
len (int)
offset (int)
history(src, len, offset)
allows fetching an array of values from the history series with offset from current candle
Parameters:
src (float)
len (int)
offset (int)
history(src, len, offset)
allows fetching an array of values from the history series with offset from current candle
Parameters:
src (bool)
len (int)
offset (int)
history(src, len, offset)
allows fetching an array of values from the history series with offset from current candle
Parameters:
src (string)
len (int)
offset (int)
Bucket
Fields:
idx (series int) : the index of this Bucket within the Profile starting with 0 for the lowest Bucket at the bottom of the Profile
value (series float) : the value of this Bucket, can be volume or time, for using time pass and array of 1s to the update function
top (series float) : the top of this Bucket's price range (for calculation)
btm (series float) : the bottom of this Bucket's price range (for calculation)
center (series float) : the center of this Bucket's price range (for plotting)
fraction (series float) : the fraction this Bucket's value is compared to the total of the Profile
plot_bucket_line (Line type from robbatt/lib_plot_objects/24) : the line that resembles this bucket and it's valeu in the Profile
ProfileArgs
Fields:
show_poc (series bool) : whether to plot a POC line across the Profile Box (default: true)
show_profile (series bool) : whether to plot a line for each Bucket in the Profile Box, indicating the value per Bucket (Price range), e.g. volume that occured in a certain time and price range (default: false)
show_va (series bool) : whether to plot a VAH/VAL line across the Profile Box (default: false)
show_va_fill (series bool) : whether to fill the 'value' area between VAH/VAL line (default: false)
show_background (series bool) : whether to fill the Profile Box with a background color (default: false)
show_labels (series bool) : whether to add labels to the right end of the POC/VAH/VAL line (default: false)
show_price_levels (series bool) : whether add price values to the labels to the right end of the POC/VAH/VAL line (default: false)
extend (series bool) : whether extend the Profile Box to the current candle (default: false)
default_size (series int) : the default min. width of the Profile Box (default: 30)
args_poc_line (LineArgs type from robbatt/lib_plot_objects/24) : arguments for the poc line plot
args_va_line (LineArgs type from robbatt/lib_plot_objects/24) : arguments for the va line plot
args_poc_label (LabelArgs type from robbatt/lib_plot_objects/24) : arguments for the poc label plot
args_va_label (LabelArgs type from robbatt/lib_plot_objects/24) : arguments for the va label plot
args_profile_line (LineArgs type from robbatt/lib_plot_objects/24) : arguments for the Bucket line plots
args_profile_bg (BoxArgs type from robbatt/lib_plot_objects/24)
va_fill_color (series color) : color for the va area fill plot
Profile
Fields:
start (series int) : left x coordinate for the Profile Box
end (series int) : right x coordinate for the Profile Box
resolution (series int) : the amount of buckets/price ranges the Profile will dissect the data into
vah_threshold_pc (series float) : the percentage of the total data value to mark the upper threshold for the main value area
val_threshold_pc (series float) : the percentage of the total data value to mark the lower threshold for the main value area
args (ProfileArgs) : the style arguments for the Profile Box
h (series float) : the highest price of the data
l (series float) : the lowest price of the data
total (series float) : the total data value (e.g. volume of all candles, or just one each to analyse candle distribution over time)
buckets (Bucket ) : the Bucket objects holding the data for each price range bucket
poc_bucket_index (series int) : the Bucket index in buckets, that holds the poc Bucket
vah_bucket_index (series int) : the Bucket index in buckets, that holds the vah Bucket
val_bucket_index (series int) : the Bucket index in buckets, that holds the val Bucket
poc (series float) : the according price level marking the Point Of Control
vah (series float) : the according price level marking the Value Area High
val (series float) : the according price level marking the Value Area Low
plot_poc (Line type from robbatt/lib_plot_objects/24)
plot_vah (Line type from robbatt/lib_plot_objects/24)
plot_val (Line type from robbatt/lib_plot_objects/24)
plot_poc_label (Label type from robbatt/lib_plot_objects/24)
plot_vah_label (Label type from robbatt/lib_plot_objects/24)
plot_val_label (Label type from robbatt/lib_plot_objects/24)
plot_va_fill (LineFill type from robbatt/lib_plot_objects/24)
plot_profile_bg (Box type from robbatt/lib_plot_objects/24)
Buying Selling Volume StrategyFirst I would like to give the original credit and thanks to @ceyhun for his amazing volume script.
The way I decided to convert it into a strategy is divided into multiple types.
First, I decided in order to smooth out the values and make it more accurate to adapt the values to multiple timeframes.
After that I took the initial values from the buyers and sellers , and made a rest operation between them to have a flat difference between the power of both sides.
WIth that later on I decided to to apply a volatility filter,in this case bollinger bands, in order to find out potential leading trends.
At the same time in order to filter even more, I decided to make use as well for weekly VWAP values of the asset used.
Lastly I added a dynamic risk management into it , based on the ATR Daily values of the asset values.
As for the rules used, for example for long, I am looking that the price of the asset is above the weekly VWAP, after that I am checking that the MTF volume rest operation is both bullish and above the upper side of the bollinger.
For short we would want the asset to be below the weekly VWAP, and the volume to be bearish and above the upper side of bollinger.
The exit is either based on daily ATR values multipliers, or if we have a reverse condition.
If you have any questions, please let me know !
TGIF StatsTGIF - "Thank God it's Friday"
After a heavily bearish week (tuesday, wednesday and thursday) price sometimes looks for some retracement on fridays. Vice versa for bullish weeks.
This script shows how often that specific scenario happens and displays that data in a table.
The user has the option to input a starting year for the statistic and is able to filter between bearish or bullish weeks.
*disclaimer : if paired with a higher timeframe pd array taught by ICT the stats should be better, that's not included in the code though*
⚠️ Open Source ⚠️
Coders and TV users are authorized to copy this code base, but a paid distribution is prohibited. A mention to the original author is expected, and appreciated.
⚠️ Terms and Conditions ⚠️
This financial tool is for educational purposes only and not financial advice. Users assume responsibility for decisions made based on the tool's information. Past performance doesn't guarantee future results. By using this tool, users agree to these terms.
Open Interest Suite [Aggregated] - By LeviathanThis script is an all-in-one indicator that uses aggregated Open Interest data to plot OI candles, Open Interest Delta, OI x rVOL, and OI RSI. It also includes tools such as an OI Distribution profile, large OI increase/decrease coloring, a Stats Screener, and much more.
You can select and have the script plot the following:
- Open Interest in the form of OHLC candles
- Open Interest Delta in the form of a histogram
- Open Interest x Relative Volume in the form of a histogram
- Open Interest RSI in the form of a line
Additional features include:
- OI Distribution Profile (It shows the distribution of open interest in the visible range on y axis. This makes it easier to identify when Open Interest is relatively high or low and at which values most of the action took place)
- Stats screener (The screener includes the real-time net Open Interest value, Rekt Longs/Rekt Shorts based on large OI decreases and Aggressive Longs/Shorts based on large OI increases)
- Coloring (You can color OI Delta nodes, background and chart candles based on large OI increases/decreases)
- more
Instructions for the settings will be provided in the tooltips shortly.
Full credit goes to @KioseffTrading for the profile generation code.
Open Interest Profile [Fixed Range] - By LeviathanThis script generates an aggregated Open Interest profile for any user-selected range and provides several other features and tools, such as OI Delta Profile, Positive Delta Levels, OI Heatmap, Range Levels, OIWAP, POC and much more.
The indicator will help you find levels of interest based on where other market participants are opening and closing their positions. This provides a deeper insight into market activity and serves as a foundation for various different trading strategies (trapped traders, supply and demand, support and resistance, liquidity gaps, imbalances,liquidation levels, etc). Additionally, this indicator can be used in conjunction with other tools such as Volume Profile.
Open Interest (OI) is a key metric in derivatives markets that refers to the total number of unsettled or open contracts. A contract is a mutual agreement between two parties to buy or sell an underlying asset at a predetermined price. Each contract consists of a long side and a short side, with one party consenting to buy (long) and the other agreeing to sell (short). The party holding the long position will profit from an increase in the asset's price, while the one holding the short position will profit from the price decline. Every long position opened requires a corresponding short position by another market participant, and vice versa. Although there might be an imbalance in the number of accounts or traders holding long and short contracts, the net value of positions held on each side remains balanced at a 1:1 ratio. For instance, an Open Interest of 100 BTC implies that there are currently 100 BTC worth of longs and 100 BTC worth of shorts open in the market. There might be more traders on one side holding smaller positions, and fewer on the other side with larger positions, but the net value of positions on both sides is equivalent - 100 BTC in longs and 100 BTC in shorts (1:1). Consider a scenario where a trader decides to open a long position for 1 BTC at a price of $30k. For this long order to be executed, a counterparty must take the opposite side of the contract by placing a short order for 1 BTC at the same price of $30k. When both long and short orders are matched and executed, the Open Interest increases by 1 BTC, indicating the introduction of this new contract to the market.
The meaning of fluctuations in Open Interest:
- OI Increase - signifies new positions entering the market (both longs and shorts).
- OI Decrease - indicates positions exiting the market (both longs and shorts).
- OI Flat - represents no change in open positions due to low activity or a large number of contract transfers (contracts changing hands instead of being closed).
Typically, we monitor Open Interest in the form of its running value, either on a chart or through OI Delta histograms that depict the net change in OI for each price bar. This indicator enhances Open Interest analysis by illustrating the distribution of changes in OI on the price axis rather than the time axis (akin to Volume Profiles). While Volume Profile displays the volume that occurred at a given price level, the Open Interest Profile offers insight into where traders were opening and closing their positions.
How to use the indicator?
1. Add the script to your chart
2. A prompt will appear, asking you to select the “Start Time” (start of the range) and the “End Time” (end of the range) by clicking anywhere on your chart.
3. Within a few seconds, a profile will be generated. If you wish to alter the selected range, you can drag the "Start Time" and "End Time" markers accordingly.
4. Enjoy the script and feel free to explore all the settings.
To learn more about each input in indicator settings, please read the provided tooltips. These can be accessed by hovering over or clicking on the ( i ) symbol next to the input.
Market Profile @joshuuuTime is fractal. Every candle has an open, low, high and closing price.
Depending on what timeframe you are on, some opening prices could be more interesting than others.
This indicator tracks, which timeframe you are currently on and displays different things accordingly, so that the chart is never messy.
Below the hourly timeframe, the indicator highlights ICT Killzones, times of the day where most volume occurs and price moves the "cleanest". There are different versions to display those sessions in the settings.
From the hourly timeframe up to the daily timeframe, the indicator shows the "Weekly Profile". It plots the weekly opening line, can highlight daily highs and lows and daily opens and shows the name of the days on the chart.
On the daily timeframe, the indicator switches to a monthly profile. It shows the monthly open, weekly highs/lows AND it shows another concept taught by ICT, the IPDA Lookback.
ICT teaches that especially the last 20, 40 and 60 days PD Arrays and Highs/Lows are important and this indicator highlights those lookback windows accordingly.
The indicator has a lot of settings to make it allow maximum individuality.
Tick Profile HeatmapThis is a market internal TICK heatmap with the intent of displaying areas of price associated to stronger reactions with NYSE TICK (by default).
This code is based off of a variation of a Volume Profile coded originally by colejustice who originally used code from LuxAlgo . The full-width volume bars that colejustice setup were replaced with full-width bars representative of TICK breaking +/- $500, the current cumulative value representing the "heat" is comprised of hlc3 by default but that can be changed. In a future update I may add additional logic here to capture highs and lows in the heatmap specifically, and perhaps additional colors.
As with other traditional profiling studies, this indicators purpose is to visualize correspondence to specific price levels, allowing rapid assessment where the most TICK activity is occurring, and where it hasn't been. This information may provide areas of support and resistance and regions where price may move quickly repeatedly.
All of the same input guidance that colejustice provided is the same for those pre-existing inputs:
Inputs are set up such that you can customize the lookback period, number of rows, and width of rows for most major timeframes individually. Timeframes between those available will use the next lower timeframe settings (e.g., 2m chart will use the 1m settings.)
Zero usage of volume is present in this indicator, only TICK data so please don't confuse it with volume studies.