Falcon - Volume & Level reaction Falcon - Volume & Level Reaction
Our indicator, Falcon - Volume & Level Reaction, is designed to provide traders with comprehensive insights into price behavior through the calculation of horizontal volume profiles. By analyzing these profiles, the indicator identifies key levels and assesses price reactions, offering valuable trading signals.
---
# Concept
The Falcon - Volume & Level Reaction indicator is built to help traders identify and capitalize on key market levels by analyzing volume profiles and price behavior. This indicator enhances trading strategies by providing clear signals based on robust analysis, allowing traders to make informed decisions and improve their trading outcomes.
---
# Functions
1. Volume Profile Calculation
- Profile Period: Calculates horizontal volume profiles over a specified number of bars.
- Peak Volumes: Identifies peak volume levels based on the sensitivity parameter.
2. Price Behavior Analysis
- Primary Check: Determines if bars close above or below the peak level.
- Secondary Checks:
- Volume Decrease: Confirms a decrease in volume after the price touches the level.
- Volatility Check: Ensures bars do not exceed the average ATR range.
3. Signal Generation
- Combined Signals: The primary check generates initial long/short signals, while secondary checks strengthen these signals.
- Real-time Alerts: Provides "Potential" short or long signals based on the current candle's closure relative to the level.
4. Comprehensive Analysis: Helps identify multiple factors that validate level protection and potential price reversals.
---
# Description of Checks
1. Primary Check: Price Closure
- This check assesses whether the bars close above or below the identified peak volume levels. If the price closes above the level, it generates a long signal; if it closes below, it generates a short signal. This check is fundamental as it directly indicates the price's interaction with significant volume levels.
2. Secondary Check 1: Volume Decrease
- After the price touches a peak volume level, this check verifies if there is a subsequent decrease in trading volume. A decrease in volume after touching the level suggests reduced market interest at that price, which can indicate potential reversals or continuations based on the overall market context.
3. Secondary Check 2: Volatility Check
- This check ensures that the price bars do not exceed the average ATR range after touching the peak volume level. Lower volatility near key levels indicates stability and strengthens the signal generated by the primary check, confirming the market's reaction to these levels.
---
# How to Use the Indicator
1. Set Parameters: Define volume profile parameters such as profile period, number of peaks, and level sensitivity.
2. Analyze the Chart: Observe the peak volume levels displayed on the chart.
3. Receive Signals: Follow the buy or sell signals that appear when the price touches the level and the primary and secondary checks are met.
4. Respond to Alerts: When a "Potential" long or short signal appears, evaluate the closure of the current candle relative to the level to make a trading decision.
Example of Work
- Setup:
- Result:
---
# Input Parameters
- Profile back: Defines the lookback period for volume profiles (10–500, step 1).
- Max Profile: Sets the maximum number of profiles (10–300, step 5).
- Profiles Length: Specifies the length of profiles (10–100, step 1).
- Profiles Offset: Determines the offset for profiles (0–100, step 1).
- Profiles Width: Sets the width of profiles (1–10).
- Profiles Color: Chooses the color for profiles.
- Lvls Color: Chooses the color for levels.
- Lvl's sensitivity: Adjusts the sensitivity of levels (1–10).
- tolerance: Sets the tolerance level (0.000–0.003, step 0.001).
- tolerance ATR: Defines the ATR tolerance (1.0–4.0).
---
Falcon - Volume & Level Reaction
Индикатор на основе горизонтальных объемов помогает трейдерам выявлять ключевые уровни объемной проторговки, предоставляя четкие сигналы для принятия торговых решений.
Функции
– Определение и отображение пиковых уровней объемной проторговки.
– Сигналы на покупку (Long) и продажу (Short) на основе поведения цены.
– Анализ объема торгов до и после касания уровня.
– Оценка волатильности цены в период консолидации.
– Автоматическая подстройка под выбранный таймфрейм.
– Отображение локальных максимумов и минимумов.
Настройки
– Количество баров назад VRVP: определяет период для расчета горизонтальных объемов.
– Множитель ATR: коэффициент для вычисления волатильности.
– Множитель погрешности: допустимая погрешность касания уровня.
– Период расчета ATR: количество баров для расчета среднего ATR.
– Отображение Local HH/LL: включение/выключение отображения локальных максимумов и минимумов.
Версии
Данный скрипт – упрощенная версия нашего индикатора с закрытым доступом. Открытая версия доступна для BTC и ETH, только на дневном таймфрейме, без возможности изменения параметров
Volumeanalysis
VWAP Bands [UAlgo]The "VWAP Bands " indicator is designed to provide traders with valuable insights into market trends and potential support/resistance levels using Volume Weighted Average Price (VWAP) bands. This indicator integrates the core concepts of VWAP with additional trend analysis features, making it a versatile tool for both range trading and trend-following strategies.
The VWAP bands are plotted based on the standard deviation multipliers, creating upper and lower bands around the VWAP. These bands serve as dynamic support and resistance levels. When the price approaches these bands, traders can anticipate potential reversals or continuations of the current trend. Additionally, the indicator provides visual cues for trend strength and potential trend changes, helping traders make informed decisions in various market conditions.
🔶 Settings
Source (Data Source): The data source for VWAP calculations. The default setting is the typical price (HLC3), which is the average of the high, low, and close prices.
Length: The number of bars used in the VWAP calculation. This determines the lookback period for the indicator.
Standard Deviation Multiplier: The multiplier applied to the standard deviation to create the primary upper and lower VWAP bands. This setting controls the distance of the bands from the VWAP.
Secondary Standard Deviation Multiplier: The multiplier applied to the standard deviation to create the secondary upper and lower VWAP bands, providing additional levels of support and resistance.
Display Trend: A toggle to enable or disable the display of the trend analysis feature. When enabled, the indicator highlights trend strength and potential trend changes.
Display Trend Crossovers: A toggle to enable or disable the display of trend crossover signals. When enabled, the indicator plots shapes to indicate where trend switches are likely occurring.
🔶 Calculations
The calculations behind the "VWAP Bands " indicator begin with determining the Volume Weighted Average Price (VWAP), which provides a comprehensive view of the average price of an asset, weighted by trading volume. This gives a more accurate representation of the asset's true average price over a specified period.
The first step in this process involves summing the trading volume over a chosen period, typically represented by the length parameter. Simultaneously, the product of the price (usually an average of the high, low, and close prices) and the trading volume is calculated and summed. By dividing this cumulative price-volume product by the total volume, we obtain the VWAP value. This VWAP serves as the central anchor around which the price action oscillates.
To enhance the utility of VWAP, we introduce standard deviation calculations. Standard deviation measures the extent of price dispersion from the VWAP, providing insight into price volatility. By calculating the variance (which involves the squared deviations of price) and then taking its square root, we derive the standard deviation. This helps in understanding how far prices typically stray from the VWAP.
With the VWAP and standard deviation in hand, we then establish upper and lower bands by adding and subtracting multiples of the standard deviation from the VWAP. These bands act as dynamic support and resistance levels, adapting to changes in market volatility. The primary bands, set by the first standard deviation multiplier, are augmented by secondary bands defined by a larger multiplier, offering additional layers of potential support and resistance.
It also integrates trend analysis, highlighting areas where the price action suggests a strong or weak trend. This is achieved by overlaying colored zones above and below the bands, indicating the strength and direction of the trend. When the price crosses these bands, it signals potential trend changes, aiding traders in making timely decisions.
🔶 Disclaimer
The "VWAP Bands " indicator is provided for educational and informational purposes only. It is not intended as financial advice and should not be construed as such.
Trading involves significant risk and may not be suitable for all investors. Before using this indicator or making any investment decisions, it is important to conduct thorough research and consider your financial situation.
Multi Exchange Relative Volume IndicatorThe Multi Exchange Relative Volume indicator is a powerful tool designed to visualize the relative volume across different exchanges. This is particularly useful for decentralized securities like forex and crypto, where volume data is spread across multiple markets. By aggregating volume data from various exchanges, this indicator helps traders identify trends, spot unusual volume spikes, and make informed trading decisions.
Key Features:
Multi-Exchange Volume Aggregation: Collects and sums the volume data from up to five different exchanges, offering a holistic view of the market activity.
Customizable Inputs: Easily select and configure up to five different exchanges of your choice to monitor their volume activity.
Relative Volume Visualization: Compares the aggregated volume against historical averages to highlight periods of high or low volume.
Color-Coded Volume Bars: Volume bars are color-coded based on the relative volume percentage, providing quick visual cues:
- Red for volume 1.0-1.5 times the average
- Orange for volume 1.5-2.0 times the average
- Green for volume 2.0-3.0 times the average
- Yellow for volume greater than 3.0 times the average
- Grey for below average volume
Dynamic Lookback Period: Adjust the lookback period to suit your trading style and timeframe, allowing for flexible analysis.
Exponential Moving Average (EMA): Includes an EMA of volume to smooth out short-term fluctuations and highlight longer-term trends.
Scalable Layout: The scaling factor allows you to zoom in or out, adjusting the visual representation of volume data to better fit your chart.
Usage:
Configure Exchanges: Select up to five exchanges you want to monitor from the input settings.
Set Lookback Period and Bars: Customize the lookback period and the number of bars to consider for calculating average volume.
Adjust Scaling: Use the scaling factor to zoom in or out on the volume data for better visualization.
Interpret Volume Bars: Analyze the color-coded volume bars to identify significant changes in volume and potential trading opportunities.
Monitor EMA: Use the EMA line to understand the trend and smooth out noise from the volume data.
The Multi Exchange Relative Volume indicator is an essential tool for traders who want to gain deeper insights into market activity across multiple exchanges. By visualizing relative volume, it helps in identifying potential breakout or breakdown points, enhancing your trading strategy.
Energy ScriptEnergy Script Indicator
Description of Indicator
The Energy Script Indicator calculates the market's energy using the formula `Energy = Price * sqrt(Volume)`; providing insight into market activity by combining price movement and volume. This indicator is designed to help traders identify potential reversals and continuation points based on energy levels.
Features
Energy Calculation: Utilizes price and volume to compute market energy, highlighting significant activity changes.
Smoothing Options: Two customizable smoothing periods to filter out noise and highlight trends.
Threshold Alert: Set a threshold value to receive alerts when energy exceeds predefined levels, aiding in quick decision-making.
Customizable Colors: Choose colors for different plot lines to suit your charting preferences.
How to Use:
1. Smoothing Periods: Adjust `Smoothing 1` and `Smoothing 2` to control the sensitivity of the energy plots.
2. Threshold: Set the `Threshold` value to identify significant energy levels. Enable or disable threshold plotting as needed.
3. Volume Integration: Toggle `Use Volume` to include or exclude volume in energy calculations.
4. Alerts: Receive alerts when energy levels cross the defined threshold, signaling potential market movements.
This indicator is a powerful tool for analyzing market dynamics by combining price action with volume, providing a deeper understanding of market energy and potential trading opportunities.
Volume Profile [projeadam]Volume Profile Indicator
OVERVIEW
The "Volume Profile " indicator is designed to analyze and visualize the volume distribution within a specified number of past bars on the TradingView platform. This tool helps traders to identify key levels of volume activity, which can indicate significant support and resistance zones.
USER GUIDE
The primary purpose of this indicator is to provide a detailed volume profile over a specified range of bars. It highlights areas of high and low trading activity, enabling traders to make more informed decisions based on historical volume data.
SETTINGS PANEL
🌟 Indicator Settings 🌟
1. Back Bars Value :
o Description: Sets the number of past bars to be considered for volume profile calculation.
o Default Value: 43
o Range: 1 to 500
2. Value Area Volume %:
o Description: Specifies the percentage of total volume to be included in the value area.
o Default Value: 50%
o Range: 1% to 100%
🪐 Histogram Settings 🪐
1. Show Histogram:
o Description: Toggles the display of the volume histogram on the chart.
o Default: Enabled
2. Right Or Left Side Histogram:
o Description: Allows the user to choose the position of the histogram on the chart (right or left side).
o Default: Left Side
3. Number of Histogram Branches:
o Description: Sets the number of segments or branches in the histogram.
o Default Value: 50
4. Value Area BUY Color:
o Description: Sets the color for the histogram bars indicating buying volume areas.
o Default: Green (#73ff21 with 15% opacity)
5. Value Area SELL Color:
o Description: Sets the color for the histogram bars indicating selling volume areas.
o Default: Red (#ff2828 with 15% opacity)
🎯 Lines Settings 🎯
1. Show Lines:
o Description: Toggles the display of horizontal lines representing key volume levels.
o Default: Enabled
2. Show Labels:
o Description: Toggles the display of labels for the horizontal lines.
o Default: Enabled
3. High Level Line:
o Show Line: Enables the high volume level line.
o Line Style: Options for solid, dotted, or dashed lines.
o Line Width: Adjustable from 1 to 5.
o Line Color: Customizable color for the high level line.
4. Middle Level Line (POC Line):
o Show Line: Enables the Point of Control (POC) line.
o Line Style: Options for solid, dotted, or dashed lines.
o Line Width: Adjustable from 1 to 5.
o Line Color: Customizable color for the POC line.
5. Low Level Line:
o Show Line: Enables the low volume level line.
o Line Style: Options for solid, dotted, or dashed lines.
o Line Width: Adjustable from 1 to 5.
o Line Color: Customizable color for the low level line.
Visualization
- Histogram Positioning: The histogram can be displayed on either the right or left side of the chart, providing flexibility based on user preference.
- Line and Label Customization: Users can customize the style, width, and color of the lines and labels to match their trading style and charting preferences.
ALARMS
This indicator can trigger alarms based on significant price movements relative to the identified volume levels:
- Break High Level: An alarm is triggered when the price crosses above the high volume level.
- Break Low Level: An alarm is triggered when the price crosses below the low volume level.
ALGORITHM
The indicator calculates the highest and lowest prices within the specified number of past bars and divides the price range into segments. It then allocates the volume within each segment, distinguishing between buying and selling volumes. The key volume levels (Point of Control, High Volume Node, and Low Volume Node) are identified and highlighted on the chart.
Example
In the example below, the histogram is displayed on the left side, showing higher buying volumes in green and selling volumes in red. The key volume levels are marked with horizontal lines and labels, providing clear visual cues for significant support and resistance zones.
BENEFITS
- Enhanced Market Insight: Provides a detailed view of volume distribution, highlighting key trading levels.
- Customizable Visualization: Flexible settings allow traders to customize the indicator to their needs.
- Alert Mechanism: Automated alarms keep traders informed of significant market movements in real-time.
ADDITIONAL FEATURES
If you have suggestions for additional features or improvements, please feel free to reach out.
Activity and Volume Orderflow Profile [AlgoAlpha]🔍 Activity and Volume Orderflow Profile 📊
🚀 Unlock the power of market order flow analysis with the Activity and Volume Orderflow Profile indicator by AlgoAlpha . This versatile tool helps you visualize and understand the dynamics of buying and selling pressure within a specified lookback period. Perfect for traders who want to dig deeper into volume-based market insights!
Key Features:
📊 Profile Type Options : Choose between "Comparison" and "Net Order Flow" to analyze market activity based on your preferred method.
🔎 Adjustable Lookback Period : Customize the lookback period to fit your trading strategy.
🎨 Flexible Appearance Settings : Toggle the display of the profile, lookback period visualization, and heatmap to suit your preferences.
🖍 Color Customization : Set your preferred colors for up and down volumes.
🕹 High Activity Highlight : Use the minimum transparency setting to highlight areas of significant activity.
Quick Guide to Using the Activity and Volume Orderflow Profile
🛠 Add the Indicator: Add the indicator to your favorites. Customize settings like profile type, lookback period, and resolution to fit your trading style.
📊 Market Analysis: Use the profile to identify areas of high buying or selling pressure. In "Comparison" mode, look for significant volume differences; in "Net Order Flow" mode, focus on net volume changes. Additionally, you can use the activity heatmap to find key levels that can act as support and resistance as price is likely to react to the zones as indicated by the heatmap.
How it Works:
The indicator operates by first gathering data on high and low prices, as well as buy and sell volumes, over a user-defined lookback period. It then calculates the maximum and minimum prices during this period and divides this range into bins based on the chosen resolution. For each bin, it computes the total volume of buy and sell orders. In "Comparison" mode, it displays side-by-side boxes representing buy and sell volumes, while in "Net Order Flow" mode, it shows the net volume difference. The indicator visually presents these profiles on the chart with customizable colors, transparency levels, and the option to display a heatmap for enhanced volume activity insights.
Maximize your trading with the Activity and Volume Orderflow Profile from AlgoAlpha! 🚀✨
Wave Consolidation [LuxAlgo]The Wave Consolidation indicator uses market profiles to highlight consolidation zones based on upward and downward moves determined when a Higher-High or Lower-Low is created.
Users can control the amount of consolidation zones to display and the sensitivity of the swing point detection used to return those zones.
🔶 USAGE
These zones are intended as areas of interest to traders where price has seen historical interactions, which can be interpreted as support and resistance. By identifying these areas of interest before the price returns to them, traders are able to anticipate and prepare for various scenarios and respond dynamically to the behavior of the market, as seen below.
Rejection: A quick move away from the zone may indicate that the area is either overvalued or undervalued, leading to a fast movement in the opposite direction.
Breakthrough: Moving beyond a zone could indicate acceptance at that specific price, potentially signaling a shift in momentum or the start of a new trend. In a strong major trend, zones created from smaller trends could be used as price targets for taking profit and managing risk.
Consolidation: Holding these zones might suggest a market in balance at these levels, this could lead to opportunities for range-bound trading.
Below is an example of the Rejection and Consolidation scenarios described above.
Note: By analyzing the tests and retests of these zones, traders can also gain further insight into where participants are interacting in the market.
🔶 DETAILS
The full process for acquiring and managing these zones is described in the sub-sections below.
🔹 Creation
By only considering market movements creating a higher-high or lower-low, we can identify meaningful, directional, moves which can then be used to calculate zones.
Once a move is identified, the script calculates a volume profile spanning the length of the given move.
The width of the zones is determined starting from the POC of the profile and expanding outwards until the value of the profile's row falls below the profile's average.
Note: By increasing the "Multiplier" Input, Users can increase the threshold the script uses to determine zone width in multiples of Standard Deviations above the Average.
While this area is similar to a VP Value Area, it is not intended to replicate a value zone. The calculation is not concerned with capturing any % of the total profile's volume within the zone and only analyzes based on a fixed inclusion threshold.
🔹 Management
To keep clutter to a minimum, If a new zone overlaps a recently created zone, the zones are grouped as one. This is especially helpful in areas where prices are ranging, creating multiple zones in a very similar area.
Zones before management:
Zones after management:
🔹 Deletion
Just because a zone is crossed, does not make it immediately unimportant!
Once a Zone is mitigated (crossed in the opposite direction of its bias) it is reduced to a single dotted line representing the outer threshold for the zone. These lines are important to watch, as the price will often retest a break. For this reason, they will stay on the chart until the next swing point is detected when they will finally be deleted for good.
Below is an example of activity around a broken zone before it is deleted.
Below is the same example 2bBars later , once the new swing is confirmed, the dotted lines are deleted and new zones are created.
Notice how the newly formed resistance zone is in the same area where we noticed sellers previously.
🔶 SETTINGS
🔹 Structure
Display Structure: Determines if swing structures are displayed.
Structure Length: Sets Length for structure identification.
🔹 Zones
Volume-Based Calculations: Opt to use a "Volume" based Profile Calculation instead of the default "Price Action" based Calculation.
Display Count: Sets the specific number of bullish and bearish zones to display on the chart.
Multiplier: Sets the multiplier to use for the value cut-off for determining zone boundaries.
🔹 Style
Display Average Lines: Toggles on/off the average (mid) lines for the zones.
Buy-Sell Volume Bar Gauge [By MUQWISHI]▋ INTRODUCTION :
The Buy-Sell Volume Bar Gauge is developed to provide traders with a detailed analysis of volume in bars using a low timeframe, such as a 1-second interval, to measure the dominance of buy and sell for each bar. By highlighting the balance between buying and selling activities, the Buy-Sell Volume Bar Gauge helps traders identify potential volume momentum of a bar; aimed at being a useful tool for day traders and scalpers.
_______________________
▋ OVERVIEW:
_______________________
▋ METHODOLOGY:
The concept is based on bars from a lower timeframe within the current chart timeframe bar, where volume is categorized into Up, Down, and Neutral Volume, with each one displayed as a portion of a column plot. Up Volume is recorded when the price experiences a positive change, Down Volume occurs when the price experiences a negative change, and Neutral Volume is observed when the price shows no significant change.
_______________________
▋ INDICATOR SETTINGS:
(1) Fetch data from the selected lower timeframe. Note: If the selected timeframe is invalid (higher than chart), the indicator will automatically switch to 1 second.
(2) Price Source.
(3) Treating Neutral Data (Price Source) as
Neutral: In a lower timeframe, when the bar has no change in its price, the volume is counted as Neutral Volume.
Previous Move: In a lower timeframe, when the bar has no change in its price, the volume is counted as the previous change; “Up Volume” if the previous change was positive, and “Down Volume” if the previous change was negative.
Opposite Previous Move: In a lower timeframe, when the bar has no change in its price, the volume is counted as the opposite previous change; “Up Volume” if the previous change was negative, and “Down Volume” if the previous change was positive.
(4) Average Volume Length, it's used for lighting/darkening columns in a plot.
(5) Enable Alert.
(7) Total bought (%) Level.
(8) Total Sold (%) Level.
_____________________
▋ COMMENT:
The Buy-Sell Volume Bar Gauge can be taken as confirmation for predicting the next move, but it should not be considered a major factor in making a trading decision.
Volume Distribution (Heat Map)This Pine Script indicator, "Volume Distribution (Heat Map)" is designed to visualize the distribution of volume across different price levels over a specified lookback period. Here's a detailed breakdown of its functionality and features:
Indicator Overview
User Inputs
Length: The lookback period for analysis, defaulting to 500 bars.
Source: The price source used for calculations (default is the close price).
Color Intensity: Adjusts the intensity of the heatmap colors, with a default value of 25.
Lines Width: The width of the plotted lines, with a default value of 10.
Main Color: The main color used for the heatmap (default is lime).
Logic
The script iterates through the number of bins, calculates the volume for each bin between highest and lowest prices for length period, and updates the corresponding bin in the freq array if the current bar is allowed.
If the current bar is the last bar, the script plots lines and labels based on the volume distribution.
Heatmap Lines:
Solid lines colored based on the volume in each bin, using a gradient from no color to the main color based on amount of volume.
Highest Volume Line:
A dashed red line indicating the bin with the highest volume.
Labels:
Labels for the highest and lowest prices and the volume at the highest volume bin.
Plots
Highest Price Plot: Plots the highest price within the lookback period if the current bar is within the allowed range.
Lowest Price Plot: Plots the lowest price within the lookback period if the current bar is within the allowed range.
Summary
This indicator provides a visual representation of where trading volume is concentrated across different price levels, forming a heatmap. The highest volume level is highlighted with a dashed red line and a label indicating the volume at that level. This can help traders identify significant price levels where trading activity is clustered.
The "Volume Distribution (Heat Map)" indicator is a valuable tool for traders looking to enhance their technical analysis by incorporating volume data into their price charts. It provides a clear and visual representation of where market participants are most active, aiding in better-informed trading decisions.
Volume ScoreVolume Score Indicator (VSCR)
The Volume Score Indicator (VSCR) is a powerful tool designed to enhance your trading analysis by evaluating volume activity relative to historical levels. This indicator provides valuable insights into volume trends, highlighting significant volume spikes and their implications for price movements.
Key Features:
1. Volume Analysis:
a.) Volume (RVol): Calculates the relative volume based on the 50-day simple
moving average.
b.) High Volume Conditions: Identifies conditions where volume is significantly higher
than historical levels, including:
b1.) Highest Volume in 1 Year (HV1Y): Volume exceeds the highest volume of
the year.
b2.) Highest Volume in 3 Months (HVQ): Volume exceeds the highest volume of
the past 3 months.
c.) Pocket Pivot Volume (PPV):
c1.) High Relative Volume: Volume is at least twice the 50-day moving average
volume.
c2.) Pocket Pivot Volume: Latest bar volume is higher than the highest down
volume bar of the last 10 days.
2.Volume Score Calculation:
a.) Computes a cumulative volume score (VSCR) based on the frequency and magnitude
of identified high-volume conditions over a user-defined look-back period (default:
90 days).
b.) Adds points to the volume score based on relative volume (RVol). For example, if
the current day's relative volume is 500% of the 50-day average volume, 5 points
will be added to the volume score.
Formula: Volume Score = Volume Score + (RVol / 100)
3. Customizable Plotting:
a.) High Volume Plotting (HV): Option to plot circles above bars when HV1Y or HVQ
conditions are met.
b.) Pocket Pivot Volume Plotting (PPV): Option to plot circles above bars when any of
the Pocket Pivot Volume conditions are met.
4.Interactive Table Display:
a.) Configurable table to display key volume metrics and scores.
b.) Customizable table layout (horizontal or vertical) and positioning (top, middle,
bottom; left, center, right).
c.) Dynamic Background Coloring: The table cells are color-coded to highlight
significant volume levels and scores:
c1.) Blue: Indicates a very high volume score or count, signaling exceptionally
strong volume activity (e.g., count >= 15, score >= 50).
c2.) Green: Represents a high but not extreme volume level, suggesting notable
volume activity (e.g., 10 <= count < 15, 40 <= score < 50).
c3.) Orange: Marks moderate volume activity, which is still above average but
less pronounced (e.g., 7 <= count < 10, 25 <= score < 40).
c4.) Red: Signifies relatively low volume activity, potentially indicating less
significant volume changes (e.g., count < 7, score < 25).
5.How to Use:
a.) Input Parameters:
a1.) Plot HV: Toggle to plot high volume i.e. HV1Y and HVQ conditions on the
chart. When enabled green plot will appear above the price bars on the
chart.
a2.) Plot PPV: Toggle to plot pocket pivot volume conditions on the chart. When
enabled orange plot will appear above the price bars on the chart.
a3.) Look Back Period: Define the period for looking back to calculate volume
conditions and scores (default: 90 days).
b.) Table Display:
b1.) Panel Options: Customize the table's position, layout, text size, and colors
to suit your preferences.
b2.) Volume Metrics: The table displays counts of high-volume events (HV1Y,
HVQ & PPV) and the cumulative volume score, color-coded based on
thresholds for easy interpretation.
c.) Practical Applications:
c1.) Volume Spike Detection: Quickly identify significant volume spikes that
may indicate institutional buying.
c2.) Historical Volume Context: Understand current volume activity in the
context of historical volume patterns.
c3.) Enhanced Decision Making: Use volume insights to make informed trading
decisions, particularly around areas of significant volume changes.
This indicator is an essential tool for traders looking to incorporate volume analysis into their trading strategy, providing clear and actionable insights into volume dynamics.
***Note***
Candlestick Exclusion: The indicator ignores any candles where the closing price is less than the opening price. All calculations and analysis are based on candles where the closing price is higher than the opening price.
Volume Spread Analysis [TANHEF]Volume Spread Analysis: Understanding Market Intentions through the Interpretation of Volume and Price Movements.
█ Simple Explanation:
The Volume Spread Analysis (VSA) indicator is a comprehensive tool that helps traders identify key market patterns and trends based on volume and spread data. This indicator highlights significant VSA patterns and provides insights into market behavior through color-coded volume/spread bars and identification of bars indicating strength, weakness, and neutrality between buyers and sellers. It also includes powerful volume and spread forecasting capabilities.
█ Laws of Volume Spread Analysis (VSA):
The origin of VSA begins with Richard Wyckoff, a pivotal figure in its development. Wyckoff made significant contributions to trading theory, including the formulation of three basic laws:
The Law of Supply and Demand: This fundamental law states that supply and demand balance each other over time. High demand and low supply lead to rising prices until demand falls to a level where supply can meet it. Conversely, low demand and high supply cause prices to fall until demand increases enough to absorb the excess supply.
The Law of Cause and Effect: This law assumes that a 'cause' will result in an 'effect' proportional to the 'cause'. A strong 'cause' will lead to a strong trend (effect), while a weak 'cause' will lead to a weak trend.
The Law of Effort vs. Result: This law asserts that the result should reflect the effort exerted. In trading terms, a large volume should result in a significant price move (spread). If the spread is small, the volume should also be small. Any deviation from this pattern is considered an anomaly.
█ Volume and Spread Analysis Bars:
Display: Volume and/or spread bars that consist of color coded levels. If both of these are displayed, the number of spread bars can be limited for visual appeal and understanding, with the spread bars scaled to match the volume bars. While automatic calculation of the number of visual bars for auto scaling is possible, it is avoided to prevent the indicator from reloading whenever the number of visual price bars on the chart is adjusted, ensuring uninterrupted analysis. A displayable table (Legend) of bar colors and levels can give context and clarify to each volume/spread bar.
Calculation: Levels are calculated using multipliers applied to moving averages to represent key levels based on historical data: low, normal, high, ultra. This method smooths out short-term fluctuations and focuses on longer-term trends.
Low Level: Indicates reduced volatility and market interest.
Normal Level: Reflects typical market activity and volatility.
High Level: Indicates increased activity and volatility.
Ultra Level: Identifies extreme levels of activity and volatility.
This illustrates the appearance of Volume and Spread bars when scaled and plotted together:
█ Forecasting Capabilities:
Display: Forecasted volume and spread levels using predictive models.
Calculation: Volume and Spread prediction calculations differ as volume is linear and spread is non-linear.
Volume Forecast (Linear Forecasting): Predicts future volume based on current volume rate and bar time till close.
Spread Forecast (Non-Linear Dynamic Forecasting): Predicts future spread using a dynamic multiplier, less near midpoint (consolidation) and more near low or high (trending), reflecting non-linear expansion.
Moving Averages: In forecasting, moving averages utilize forecasted levels instead of actual levels to ensure the correct level is forecasted (low, normal, high, or ultra).
The following compares forecasted volume with actual resulting volume, highlighting the power of early identifying increased volume through forecasted levels:
█ VSA Patterns:
Criteria and descriptions for each VSA pattern are available as tooltips beside them within the indicator’s settings. These tooltips provide explanations of potential developments based on the volume and spread data.
Signs of Strength (🟢): Patterns indicating strong buying pressure and potential market upturns.
Down Thrust
Selling Climax
No Effort → Bearish Result
Bearish Effort → No Result
Inverse Down Thrust
Failed Selling Climax
Bull Outside Reversal
End of Falling Market (Bag Holder)
Pseudo Down Thrust
No Supply
Signs of Weakness (🔴): Patterns indicating strong selling pressure and potential market downturns.
Up Thrust
Buying Climax
No Effort → Bullish Result
Bullish Effort → No Result
Inverse Up Thrust
Failed Buying Climax
Bear Outside Reversal
End of Rising Market (Bag Seller)
Pseudo Up Thrust
No Demand
Neutral Patterns (🔵): Patterns indicating market indecision and potential for continuation or reversal.
Quiet Doji
Balanced Doji
Strong Doji
Quiet Spinning Top
Balanced Spinning Top
Strong Spinning Top
Quiet High Wave
Balanced High Wave
Strong High Wave
Consolidation
Bar Patterns (🟡): Common candlestick patterns that offer insights into market sentiment. These are required in some VSA patterns and can also be displayed independently.
Bull Pin Bar
Bear Pin Bar
Doji
Spinning Top
High Wave
Consolidation
This demonstrates the acronym and descriptive options for displaying bar patterns, with the ability to hover over text to reveal the descriptive text along with what type of pattern:
█ Alerts:
VSA Pattern Alerts: Notifications for identified VSA patterns at bar close.
Volume and Spread Alerts: Alerts for confirmed and forecasted volume/spread levels (Low, High, Ultra).
Forecasted Volume and Spread Alerts: Alerts for forecasted volume/spread levels (High, Ultra) include a minimum percent time elapsed input to reduce false early signals by ensuring sufficient bar time has passed.
█ Inputs and Settings:
Display Volume and/or Spread: Choose between displaying volume bars, spread bars, or both with different lookback periods.
Indicator Bar Color: Select color schemes for bars (Normal, Detail, Levels).
Indicator Moving Average Color: Select schemes for bars (Fill, Lines, None).
Price Bar Colors: Options to color price bars based on VSA patterns and volume levels.
Legend: Display a table of bar colors and levels for context and clarity of volume/spread bars.
Forecast: Configure forecast display and prediction details for volume and spread.
Average Multipliers: Define multipliers for different levels (Low, High, Ultra) to refine the analysis.
Moving Average: Set volume and spread moving average settings.
VSA: Select the VSA patterns to be calculated and displayed (Strength, Weakness, Neutral).
Bar Patterns: Criteria for bar patterns used in VSA (Doji, Bull Pin Bar, Bear Pin Bar, Spinning Top, Consolidation, High Wave).
Colors: Set exact colors used for indicator bars, indicator moving averages, and price bars.
More Display Options: Specify how VSA pattern text is displayed (Acronym, Descriptive), positioning, and sizes.
Alerts: Configure alerts for VSA patterns, volume, and spread levels, including forecasted levels.
█ Usage:
The Volume Spread Analysis indicator is a helpful tool for leveraging volume spread analysis to make informed trading decisions. It offers comprehensive visual and textual cues on the chart, making it easier to identify market conditions, potential reversals, and continuations. Whether analyzing historical data or forecasting future trends, this indicator provides insights into the underlying factors driving market movements.
VolumeSpreadAnalysisLibrary "VolumeSpreadAnalysis"
A library for Volume Spread Analysis (VSA).
spread(_barIndex)
Calculates the spread of a bar.
Parameters:
_barIndex (int) : (int) The index of the bar.
Returns: (float) The spread of the bar.
volume(_barIndex)
Retrieves the volume of a bar.
Parameters:
_barIndex (int) : (int) The index of the bar.
Returns: (float) The volume of the bar.
body(_barIndex)
Calculates the body of a bar.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (float) The body size of the bar.
wickUpper(_barIndex)
Calculates the upper wick of a bar (upper shadow).
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (float) The upper wick size of the bar.
wickLower(_barIndex)
Calculates the lower wick of a bar (lower shadow).
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (float) The lower wick size of the bar.
calcForecastedSMA(_source, _length, _forecastedLevel)
Calculates the forecasted Simple Moving Average (SMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the SMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted SMA value.
calcForecastedEMA(_source, _length, _forecastedLevel)
Calculates the forecasted Exponential Moving Average (EMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the EMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted EMA value.
calcForecastedRMA(_source, _length, _forecastedLevel)
Calculates the forecasted Relative Moving Average (RMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the RMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted RMA value.
calcForecastedWMA(_source, _length, _forecastedLevel)
Calculates the forecasted Weighted Moving Average (WMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the WMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted WMA value.
calcElapsedTimePercent()
Calculates the elapsed time percent of the current bar.
Returns: (float) The elapsed time percent.
calcForecastedSpread(multiplierAtMidpoints, multiplierAtPeaks)
Calculates the forecasted spread using elapsed time and dynamic multipliers, handling spread's non-linear nature.
Parameters:
multiplierAtMidpoints (float) : (float) The multiplier value at midpoints.
multiplierAtPeaks (float) : (float) The multiplier value at peaks.
Returns: (float) The forecasted spread value.
calcForecastedVolume()
Calculates the forecasted volume using elapsed time, satisfying volume's linear nature.
Returns: (float) The forecasted volume value.
calcForecastedMA(_source, _length, _forecastedSource, _type)
Calculates the forecasted Moving Average (MA) based on the specified type.
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the MA.
_forecastedSource (float) : (float) The forecasted level to include in the calculation.
_type (simple string) : (string) The type of the MA ("SMA", "EMA", "SMMA (RMA)", "WMA").
Returns: (float) The forecasted MA value.
calcMA(_source, _length, _type)
Calculates the Moving Average (MA) based on the specified type.
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the MA.
_type (simple string) : (string) The type of the MA ("SMA", "EMA", "SMMA (RMA)", "WMA").
Returns: (float) The MA value.
bullBar(_barIndex)
Determines if the bar is bullish.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if the bar is bullish, otherwise false.
bearBar(_barIndex)
Determines if the bar is bearish.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if the bar is bearish, otherwise false.
breakout(_barIndex)
Determines if there is a breakout above the previous bar.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if there is a breakout, otherwise false.
breakdown(_barIndex)
Determines if there is a breakdown below the previous bar.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if there is a breakdown, otherwise false.
rejectionWickUpper(_rejectionWick)
Determines if the upper wick is a rejection wick.
Parameters:
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if the upper wick is a rejection wick, otherwise false.
rejectionWickLower(_rejectionWick)
Determines if the lower wick is a rejection wick.
Parameters:
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if the lower wick is a rejection wick, otherwise false.
setupDataVolume(_data, _mult_Low, _mult_High, _mult_Ultra, _maLengthVolume, _maTypeVolume)
Sets up data for volume levels.
Parameters:
_data (map) : (map) The map to store the levels.
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthVolume (simple int) : (int) The length for MA.
_maTypeVolume (simple string) : (string) The type for MA.
Returns: (void) Nothing.
setupDataSpread(_data, _mult_Low, _mult_High, _mult_Ultra, _maLengthSpread, _maTypeSpread)
Sets up data for spread levels.
Parameters:
_data (map) : (map) The map to store the levels.
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthSpread (simple int) : (int) The length for MA.
_maTypeSpread (simple string) : (string) The type for MA.
Returns: (void) Nothing.
setupDataForecastVolume(_dataForecast, _mult_Low, _mult_High, _mult_Ultra, _maLengthVolume, _predictedLevelVolume, _maTypeVolume)
Sets up data for volume and spread levels for forecast.
Parameters:
_dataForecast (map)
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthVolume (simple int) : (int) The length for MA.
_predictedLevelVolume (float) : (float) The predicted level for MA.
_maTypeVolume (simple string) : (string) The type for MA.
Returns: (void) Nothing.
setupDataForecastSpread(_dataForecast, _mult_Low, _mult_High, _mult_Ultra, _maLengthSpread, _predictedLevelSpread, _maTypeSpread)
Sets up data for spread levels for forecast.
Parameters:
_dataForecast (map)
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthSpread (simple int) : (int) The length for MA.
_predictedLevelSpread (float) : (float) The predicted level for MA.
_maTypeSpread (simple string) : (string) The type for MA.
Returns: (void) Nothing.
isVolumeLow(_data, _barIndex)
Determines if the volume is low.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is low, otherwise false.
isVolumeNormal(_data, _barIndex)
Determines if the volume is normal.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is normal, otherwise false.
isVolumeHigh(_data, _barIndex)
Determines if the volume is high.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is high, otherwise false.
isVolumeUltra(_data, _barIndex)
Determines if the volume is ultra.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is ultra, otherwise false.
isSpreadLow(_data, _barIndex)
Determines if the spread is low.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is low, otherwise false.
isSpreadNormal(_data, _barIndex)
Determines if the spread is normal.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is normal, otherwise false.
isSpreadHigh(_data, _barIndex)
Determines if the spread is high.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is high, otherwise false.
isSpreadUltra(_data, _barIndex)
Determines if the spread is ultra.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is ultra, otherwise false.
isVolumeText(_data)
Determines text string representing the volume area level.
Parameters:
_data (map) : (map) The data map with volume levels.
Returns: (string) Text string of Low, Normal, High, or Ultra.
isSpreadText(_data)
Determines text string representing the spread area level.
Parameters:
_data (map) : (map) The data map with spread levels.
Returns: (string) Text string of Low, Normal, High, or Ultra.
calcBarColor(_value, _level)
Calculates the color based level.
Parameters:
_value (float) : (float) The value to check.
_level (float) : (float) The value level for comparison.
Returns: (color) The color for the bar.
bullPinBar(_maxBodyPercent, _minWickPercent)
Determines if the bar is a bull pin bar.
Parameters:
_maxBodyPercent (simple float) : (float) The maximum body percentage.
_minWickPercent (simple float) : (float) The minimum wick percentage.
Returns: (bool) True if the bar is a bull pin bar, otherwise false.
bearPinBar(_maxBodyPercent, _minWickPercent)
Determines if the bar is a bear pin bar.
Parameters:
_maxBodyPercent (simple float) : (float) The maximum body percentage.
_minWickPercent (simple float) : (float) The minimum wick percentage.
Returns: (bool) True if the bar is a bear pin bar, otherwise false.
dojiBar(_maxBodyPercent)
Determines if the bar is a doji.
Parameters:
_maxBodyPercent (simple float) : (float) The maximum body percentage.
Returns: (bool) True if the bar is a doji, otherwise false.
spinningTopBar(_minWicksPercent, _emaLength)
Determines if the bar is a spinning top.
Parameters:
_minWicksPercent (simple float) : (float) The minimum wicks percentage.
_emaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if the bar is a spinning top, otherwise false.
highWaveBar(_minBodyPercent, _minWickPercent, _bars)
Determines if the bar is a high wave bar.
Parameters:
_minBodyPercent (simple float) : (float) The minimum body percentage.
_minWickPercent (simple float) : (float) The minimum wick percentage.
_bars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if the bar is a high wave bar, otherwise false.
consolidationBar(_data, _spread, _bars)
Determines if the bars are in consolidation.
Parameters:
_data (map) : (map) The data map with spread levels.
_spread (simple float) : (float) The spread percentage for comparison.
_bars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if the bars are in consolidation, otherwise false.
S_DownThrust(_data, _bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of strength (DownThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of strength (DownThrust), otherwise false.
S_SellingClimax(_data, _rejectionWick)
Determines if there is a sign of strength (Selling Climax).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if there is a sign of strength (Selling Climax), otherwise false.
S_NoEffortBearishResult()
Determines if there is a sign of strength (No Effort Bearish Result).
Returns: (bool) True if there is a sign of strength (No Effort Bearish Result), otherwise false.
S_BearishEffortNoResult()
Determines if there is a sign of strength (Bearish Effort No Result).
Returns: (bool) True if there is a sign of strength (Bearish Effort No Result), otherwise false.
S_InverseDownThrust(_data, _bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of strength (Inverse DownThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of strength (Inverse DownThrust), otherwise false.
S_FailedSellingClimax()
Determines if there is a sign of strength (Failed Selling Climax).
Returns: (bool) True if there is a sign of strength (Failed Selling Climax), otherwise false.
S_BullOutsideReversal(_data)
Determines if there is a sign of strength (Bull Outside Reversal).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of strength (Bull Outside Reversal), otherwise false.
S_EndOfFallingMarket(_data)
Determines if there is a sign of strength (End of Falling Market).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of strength (End of Falling Market), otherwise false.
S_PseudoDownThrust(_bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of strength (Pseudo DownThrust).
Parameters:
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of strength (Pseudo DownThrust), otherwise false.
S_NoSupply(_bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of strength (No Supply).
Parameters:
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of strength (No Supply), otherwise false.
W_UpThrust(_data, _bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of weakness (UpThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of weakness (UpThrust), otherwise false.
W_BuyingClimax(_data, _rejectionWick)
Determines if there is a sign of weakness (Buying Climax).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if there is a sign of weakness (Buying Climax), otherwise false.
W_NoEffortBullishResult()
Determines if there is a sign of weakness (No Effort Bullish Result).
Returns: (bool) True if there is a sign of weakness (No Effort Bullish Result), otherwise false.
W_BullishEffortNoResult()
Determines if there is a sign of weakness (Bullish Effort No Result).
Returns: (bool) True if there is a sign of weakness (Bullish Effort No Result), otherwise false.
W_InverseUpThrust(_data, _bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of weakness (Inverse UpThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of weakness (Inverse UpThrust), otherwise false.
W_FailedBuyingClimax()
Determines if there is a sign of weakness (Failed Buying Climax).
Returns: (bool) True if there is a sign of weakness (Failed Buying Climax), otherwise false.
W_BearOutsideReversal(_data)
Determines if there is a sign of weakness (Bear Outside Reversal).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of weakness (Bear Outside Reversal), otherwise false.
W_EndOfRisingMarket(_data)
Determines if there is a sign of weakness (End of Rising Market).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of weakness (End of Rising Market), otherwise false.
W_PseudoUpThrust(_bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of weakness (Pseudo UpThrust).
Parameters:
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of weakness (Pseudo UpThrust), otherwise false.
W_NoDemand(_bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of weakness (No Demand).
Parameters:
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of weakness (No Demand), otherwise false.
N_QuietDoji(_dojiBarMaxBody)
Determines if there is a neutral signal (Quiet Doji).
Parameters:
_dojiBarMaxBody (simple float) : (float) The maximum body percentage for doji bar.
Returns: (bool) True if there is a neutral signal (Quiet Doji), otherwise false.
N_BalancedDoji(_data, _dojiBarMaxBody)
Determines if there is a neutral signal (Balanced Doji).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_dojiBarMaxBody (simple float) : (float) The maximum body percentage for doji bar.
Returns: (bool) True if there is a neutral signal (Balanced Doji), otherwise false.
N_StrongDoji(_dojiBarMaxBody)
Determines if there is a neutral signal (Strong Doji).
Parameters:
_dojiBarMaxBody (simple float) : (float) The maximum body percentage for doji bar.
Returns: (bool) True if there is a neutral signal (Strong Doji), otherwise false.
N_QuietSpinningTop(_spinningTopBarMinWicks, _spinningTopBarEmaLength)
Determines if there is a neutral signal (Quiet Spinning Top).
Parameters:
_spinningTopBarMinWicks (simple float) : (float) The minimum wicks percentage for spinning top bar.
_spinningTopBarEmaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if there is a neutral signal (Quiet Spinning Top), otherwise false.
N_BalancedSpinningTop(_data, _spinningTopBarMinWicks, _spinningTopBarEmaLength)
Determines if there is a neutral signal (Balanced Spinning Top).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_spinningTopBarMinWicks (simple float) : (float) The minimum wicks percentage for spinning top bar.
_spinningTopBarEmaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if there is a neutral signal (Balanced Spinning Top), otherwise false.
N_StrongSpinningTop(_spinningTopBarMinWicks, _spinningTopBarEmaLength)
Determines if there is a neutral signal (Strong Spinning Top).
Parameters:
_spinningTopBarMinWicks (simple float) : (float) The minimum wicks percentage for spinning top bar.
_spinningTopBarEmaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if there is a neutral signal (Strong Spinning Top), otherwise false.
N_QuietHighWave(_highWaveBarMinBody, _highWaveBarMinWick, _highWaveBarBars)
Determines if there is a neutral signal (Quiet High Wave).
Parameters:
_highWaveBarMinBody (simple float) : (float) The minimum body percentage for high wave bar.
_highWaveBarMinWick (simple float) : (float) The minimum wick percentage for high wave bar.
_highWaveBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Quiet High Wave), otherwise false.
N_BalancedHighWave(_data, _highWaveBarMinBody, _highWaveBarMinWick, _highWaveBarBars)
Determines if there is a neutral signal (Balanced High Wave).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_highWaveBarMinBody (simple float) : (float) The minimum body percentage for high wave bar.
_highWaveBarMinWick (simple float) : (float) The minimum wick percentage for high wave bar.
_highWaveBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Balanced High Wave), otherwise false.
N_StrongHighWave(_highWaveBarMinBody, _highWaveBarMinWick, _highWaveBarBars)
Determines if there is a neutral signal (Strong High Wave).
Parameters:
_highWaveBarMinBody (simple float) : (float) The minimum body percentage for high wave bar.
_highWaveBarMinWick (simple float) : (float) The minimum wick percentage for high wave bar.
_highWaveBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Strong High Wave), otherwise false.
N_Consolidation(_data, _consolidationBarSpread, _consolidationBarBars)
Determines if there is a neutral signal (Consolidation).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_consolidationBarSpread (simple float) : (float) The spread percentage for consolidation bar.
_consolidationBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Consolidation), otherwise false.
Multi-Chart Widget [LuxAlgo]The Multi-Chart Widget tool is a comprehensive solution crafted for traders and investors looking to analyze multiple financial instruments simultaneously. With the capability to showcase up to three additional charts, users can customize each chart by selecting different financial instruments, and timeframes.
Users can add various widely used technical indicators to the charts such as the relative strength index, Supertrend, moving averages, Bollinger Bands...etc.
🔶 USAGE
The tool offers traders and investors a comprehensive view of multiple charts simultaneously. By displaying up to three additional charts alongside the primary chart, users can analyze assets across different timeframes, compare their performance, and make informed decisions.
Users have the flexibility to choose from various customizable chart types, including the recently added "Volume Candles" option.
This tool allows adding to the chart some of the most widely used technical indicators, such as the Supertrend, Bollinger Bands, and various moving averages.
In addition to the charting capabilities, the tool also features a dynamic statistic panel that provides essential metrics and key insights into the selected assets. Users can track performance indicators such as relative strength, trend, and volatility, enabling them to identify trends, patterns, and trading opportunities efficiently.
🔶 DETAILS
A brief overview of the indicators featured in the statistic panel is given in the sub-section below:
🔹Dual Supertrend
The Dual Supertrend is a modified version of the Supertrend indicator, which is based on the concept of trend following. It generates buy or sell signals by analyzing the asset's price movement. The Dual Supertrend incorporates two Supertrend indicators with different parameters to provide potentially more accurate signals. It helps traders identify trend reversals and establish trend direction in a more responsive manner compared to a single Supertrend.
🔹Relative Strength Index
The Relative Strength Index is a momentum oscillator that measures the speed and change of price movements. RSI oscillates between 0 and 100 and is typically used to identify overbought or oversold conditions in a market. Traditionally, RSI values above 70 are considered overbought, suggesting that the asset may be due for a reversal or correction, while RSI values below 30 are considered oversold, indicating potential buying opportunities.
🔹Volatility
Volatility in trading refers to the degree of variation or fluctuation in the price of a financial instrument, such as a stock, currency pair, or commodity, over a certain period of time. It is a measure of the speed and magnitude of price changes and reflects the level of uncertainty or risk in the market. High volatility implies that prices are experiencing rapid and significant movements, while low volatility suggests that prices are relatively stable and are not changing much. Traders often use volatility as an indicator to assess the potential risk and return of an investment and to make informed decisions about when to enter or exit trades.
🔹R-Squared (R²)
R-squared, also known as the coefficient of determination, is a statistical measure that indicates the proportion of the variance in the dependent variable that is predictable from the independent variable(s). In other words, it quantifies the goodness of fit of a regression model to the observed data. R-squared values range from %0 to %100, with higher values indicating a better fit of the model to the data. An R-squared of 100% means that all movements of a security are completely explained by movements in the index, while an R-squared value of %0 indicates that the model does not explain any of the variability in the dependent variable.
In simpler terms, in investing, a high R-squared, from 85% to 100%, indicates that the stock’s or fund’s performance moves relatively in line with the index. Conversely, a low R-squared (around 70% or less) indicates that the fund's performance tends to deviate significantly from the movements of the index.
🔶 SETTINGS
🔹Mini Chart(s) Generic Settings
Mini Charts Separator: This option toggles the visibility of the separator lines.
Number Of Bars: Specifies the number of bars to be displayed for each mini chart.
Horizontal Offset: Determines the distance at which the mini charts will be displayed from the primary chart.
🔹Mini Chart Settings: Top - Middle - Bottom
Mini Chart Top/Middle/Bottom: Toggle the visibility of the selected mini chart.
Symbol: Choose the financial instrument to be displayed in the mini chart. If left as an empty string, it will default to the current chart instrument.
Timeframe: This option determines the timeframe used for calculating the mini charts. If a timeframe lower than the chart's timeframe is selected, the calculations will be based on the chart's timeframe.
Chart Type: Selection from various chart types for the mini charts, including candles, volume candles, line, area, columns, high-low, and Heikin Ashi.
Chart Size: Determines the size of the mini chart.
Technical Indicator: Selection from various technical indicators to be displayed on top of the mini charts.
Note : Chart sizing is relative to other mini charts. For example, If all the mini charts are sized to x5 relative to each other, the result will be the same as if they were all sized as x1. This is because the relative proportions between the mini charts remain consistent regardless of their absolute sizes. Therefore, their positions and sizes relative to each other remain unchanged, resulting in the same visual representation despite the differences in absolute scale.
🔹Supertrend Settings
ATR Length: is the lookback length for the ATR calculation.
Factor: is what the ATR is multiplied by to offset the bands from price.
Color: color customization option.
🔹Moving Average Settings
Type: is the type of the moving average, available types of moving averages include SMA (Simple Moving Average), EMA (Exponential Moving Average), RMA (Root Mean Square Moving Average), HMA (Hull Moving Average), WMA (Weighted Moving Average), and VWMA (Volume Weighted Moving Average).
Source: Determines what data from each bar will be used in calculations.
Length: The time period to be used in calculating the Moving Average.
Color: Color customization option.
🔹Bollinger Bands Settings
Basis Type: Determines the type of Moving Average that is applied to the basis plot line.
Source: Determines what data from each bar will be used in calculations.
Length: The time period to be used in calculating the Moving Average which creates the base for the Upper and Lower Bands.
StdDev: The number of Standard Deviations away from the Moving Average that the Upper and Lower Bands should be.
Color: Color customization options for basis, upper and lower bands.
🔹Mini Chart(s) Panel Settings
Mini Chart(s) Panel: Controls the visibility of the panel containing the mini charts.
Dual Supertrend: Toggles the display of the evaluated dual super trend, based on the super trend settings provided below the option. The definitions for the options are the same as stated above for the super trend.
Relative Strength Index: Toggles the display of the evaluated RSI, based on the source and length settings provided below the option.
Volatility: Toggles the display of the calculated Volatility, based on the length settings provided below the option.
R-Squared: Toggles the display of the calculated R-Squared (R²), based on the length settings provided below the option.
🔶 LIMITATIONS
The tool allows users to display mini charts featuring various types of instruments alongside the primary chart instrument. However, there's a limitation: the selected primary chart instrument must have an ACTIVE market status. Alternatively, if the primary chart instrument is not active, the mini chart instruments must belong to the same exchange and have the same type as the primary chart instrument.
OrderFlow Absorption IndicatorWhat it Does
The OrderFlow Absorption Indicator marks areas where the price absorbs a large volume of aggressive market trades. This indicates areas where price may bounce back due to large limit (resting) orders absorbing significant aggressor volume (market orders). Absorption can also be seen as "preventing" or "stopping" the other side from breaking through a price level (e.g. bids stopping an influx of sell market orders). Absorption may signal a change in sentiment, potentially leading to a pullback or reversal.
An Example of Absorption
Of course, it is not always the case that such bullish absorption will initiate a trend as the example above. The OrderFlow Absorption Indicator merely serves as a tool for spotting possible absorption points in the market which you can incorporate into your trading arsenal.
How it Works
The indicator actively monitors price changes and records volume accumulated at a price level. If the price bounces back to at least where it was before the current price move, the indicator records this as absorption, provided it meets the Volume Requirement and optional Time Requirement.
How to Use it
1. Set Parameters
Choose your desired tick size and volume filter value. If unsure, refer to the table on the top right of the chart for recommended values. An automatic volume limit filter mode is also available.
Automatic Limit Mode : Enable this mode to have the indicator automatically select a volume filter value. It calculates the standard deviation of the last n minutes of volume and multiplies it by a volume multiplier. You can adjust these parameters.
Higher Volume Filter : Setting a higher volume filter value results in fewer, but higher quality detections, reducing noise.
2. Enabling the Time Limit
Enabling the time limit further improves detection quality by filtering out price levels that can defend against quick, sudden aggressive orders, acting as confirmation and indicating strong sentiment and resilient liquidity.
3. Enabling Historical Data Absorption
The indicator can also detect absorption in historical data, though less accurately than in real-time due to OHLCV aggregation.
You can select the granularity of historical data.
Lower granularity (e.g., 1 second) : Provides more accurate detections but may slow down the indicator.
Higher granularity : Improves speed but reduces detection accuracy.
Other Features
Hovering : When hovering over an absorption point, the interface reveals the price where the absorption occurred, along with the volume absorbed by the bids and asks, as well as the volume filter value used.
Delta Mode : In Delta mode, the system calculates the difference between the volume absorbed by bids and asks, revealing points only when the absolute value of this difference exceeds the volume filter value. Especially useful for larger tick sizes.
Troubleshooting
If the indicator doesn't mark anything, it means the traded volume hasn't exceeded the set volume filter value within the specified price intervals(tick size) and time limit. Adjust these settings as necessary.
Volume Indıcator [JP & Dia]The volume indicator refers to the total amount of a financial instrument that has been traded within a specific time frame. This can include shares, contracts, or lots. Market exchanges track and provide this data. The volume indicator is one of the oldest and most widely used indicators in trading. It is typically represented by colored columns, with green indicating up volume and red indicating down volume, along with a moving average. Unlike other indicators, the volume indicator is not based on price. A high volume suggests a strong interest in a particular instrument at its current price, while a low volume suggests the opposite.
When there is a sudden increase in trading volume, it indicates a higher likelihood of the price changing. This often occurs during news events. Strong trending movements are often accompanied by increased trading volume, which can be seen as a measure of strength. Traders would typically expect to see high buying volume at a support level and high selling volume at a resistance level. There are various ways to incorporate volume into a trading strategy, and many traders combine it with other analysis techniques.
USECASE :
Timeframe Selection: Choose the timeframe for which you want to analyze the volume.
Volume Display Options: Toggle the display of today’s, yesterday’s, and the day before yesterday’s volume data.
Text Color: Select the color for the text in the volume table.
Volume Data Retrieval: The script fetches volume data for the selected timeframe and the daily volume for the current and previous two days.
Percentage Change Calculation: Calculates the percentage change in volume between days to identify significant increases or decreases.
Volume Table: A table is created to display the volume data and percentage changes, updating in real-time with each new bar.
Discovery IndexThe Discovery Index is an original technical indicator which attempts to display directional market pressure and momentum based on accumulated candle-over-candle measurements.
Discovery , in this context, is the act of finding (discovering) New Highs and Lows.
> What is 'Discovery'
Not to be confused with "Price Discovery", the term for setting the spot price of an asset.
The term 'Discovery' in Discovery Index is used based on the literal definition of 'Discovery', such as, the action of finding what was previously unknown.
Given this definition,
Discovery is the difference between highs or lows only when the current high is higher than the previous high or the current low is lower than the previous low.
Below is a visual example of exactly where Discovery is seen from each candle.
Since discovery is only based on points of the candle, and not specifically the direction of the candle; it is possible for discovery to occur in both directions from the same candle.
It is also possible for no discovery to occur from a candle.
> Calculation
The Discovery Index is the Net Total of discovery data over a specified length of bars.
Discovery Index = Sum of Upwards Discovery + Sum of Downwards Discovery
Note: Upwards Discovery is always Positive, and Downwards Discovery is always Negative. By adding both together, their Net Total is produced. This value is the "Discovery Index".
Wick Calculation Example
> Volume Discovery
Using Volume for the Discovery Index Calculation allows for a different dimension to be added to the data for new analysis opportunities.
While volume data is only a single value, by accumulating this data over time, we are able to fabricate a candle body from the data by accounting for the direction of the chart candles.
This allows for the Calculation of the Discovery Index based on volume data.
Volume Example
> Display
The display uses a "Candlestick histogram" display. The bodies and wicks from the display represent the discovery data from the respective points in each candle. (Wick Discovery & Candle Body Discovery).
This style of histogram allows for the display of both data sources, preserving the accuracy and distinction between each type, while also providing a clean display.
> Considerations
Discovery index is not an Oscillator, since there are no upper or lower boundaries to its rotations.
There are not (at this time) any "Over-bought" or "Over-sold" Areas, this is partially due to the previous consideration since any levels for these could potentially change from chart to chart. Additionally, it would generally be better to read the data based on the context of the current market.
Non-directional movements effect the Discovery Index as well. Since Discovery does not occur from every bar, the Index reflects hesitations as well as movements in market direction.
With the option to input a symbol, the Discovery Index Indicator is not constrained to one chart ticker for its calculation and could help to see shifts between different symbols, making it easier to compare different assets.
With the separation of wicks and candle body data, a stronger move may be observed by its full-bodied movements, while a potentially more speculative move may be seen from large wick movements. Since wicks are often interpreted as either, Rejection for reversal OR as Testing for continuation, the interpretation for Wick Discovery generally varies based on context.
Discovery Index ⇾ Divergences! Due to its calculation, price (and/or volume) data is displayed in such a way that makes it useful as a tool for identifying divergence opportunities.
Remember, this indicator is lookback based. An immediate significant change from the data source (if not offset by a similar opposite change) will be represented for multiple bars after its occurrence. Due to this, data is likely to be skewed or biased from these occurrences for a period of time after.
Throughout development, "Discovery" has been shortened to just "Disco", therefore, this indicator is also an attempt to bring Disco Back.
Enjoy!
Liquidity Dependent Price Stability AlgorithmThe Liquidity Dependent Price Stability (LDPS) indicator is designed to measure liquidity levels on an equity and, from those measurements, provide Bullish or Bearish outlooks for future price action. These outlooks are given via reporting the equity's Liquidity Condition and Liquidity Flow.
Interpretation
Liquidity Condition (LC) and Liquidity Flow (LF) measurements are displayed with color-specific chart colors and/or with text output.
LC can be reported as "Weak Bullish", "Bullish", or "Strong Bullish" for Bullish outlooks and "Weak Bearish", "Bearish" or "Strong Bearish" for Bearish outlooks. LC can also just be reported as "Bullish" or "Bearish".
Bullish LCs have a statistical correlation with future price appreciation, and Bearish LCs have a statistical correlation with price depreciation. When LC is “Bullish”, the price is likely to go up, and if LC is “Bearish”, the price is likely to go down.
Liquidity Flow (LF) is a measure of how LC is changing. When LC is becoming more bullish, LF is reported as “Improving”. When LC is becoming more bearish, LF is reported as “Worsening”. LF is only displayed via text output.
Settings and Configurations
LDPS Sensitivity and Reactivity: Determines if you want LDPS to be more sensitive to changing conditions or less sensitive. This choice affects how certain LDPS is when forming its future outlooks. LDPS achieves this increase in sensitivity and reactivity by lowering the bar for what LDPS considers a significant change.
Aggressive : LDPS will optimize reporting early changes in LC and LF at the expensive of accuracy. Aggressive is good for low-risk trading styles that prefer to exit a position early rather than deal with increased risk of oppositional movement.
Balanced : LDPS will try to balance reporting changes in LC and LF with maintaining accuracy. Balanced style is a good setting to start out with and is applicable across the widest range of equity’s and timeframes.
Conservative : LDPS will optimize accuracy over being sensitive to changes in LC or LF. Conservative is a good choice for lower timeframes and traders who only want to change or exit positions with the greatest confidence.
LDPS Reporting Style: Determines how you want LC to be reported.
Simplified : LDPS will only report LC as “Bullish” or “Bearish”.
Full : LDPS will increase its reporting details and include the “Strong” and “Weak” pre-fixes, when appropriate.
LDPS Candle Coloring: There are three different ways that LC can be reported on the chart via coloring.
LDPS Candle Replacement: This will replace the chart’s default candles with those created by LDPS. Note: In order to see LDPS’ candles and not the chart’s, you have to disable to chart’s candles. This can be done in Settings -> Symbol and unchecking “Body”, “Borders” and “Wick” boxes.
LDPS Candle Coloring: This will just color the bodies of the chart’s default candles. Note: This setting should not have the chart’s candle’s disabled.
LDPS Background Coloring: This will color the chart’s background rather than any candles.
LDPS Text Output: LC and LF are reported via a text box that can be moved several places on the chart, or the text box can be removed.
LDPS Measurements – Display: When selected, LC and LF will be reported via the text box.
LDPS Measurement – Text Location: Determines where the text box with LC and LF are located.
LDPS Measurement – Text Size: Determines the size of LC and LF within the text box.
LDPS Measurement – Background Color: Determines the background color of the text box with LC and LF.
LDPS Condition Color Selection – Bullish / Bearish: Color selection for each type of LC. Note: If the Simplified reporting style is selected, the “Full Bullish” and “Full Bearish” are the bullish and bearish color choices, respectively.
Frequently Asked Questions:
Where can I get additional Information?
Please check the “Author’s Instructions” section below.
Where can I find the results of the LDPS research?
Please check the “Author’s Instructions” section below.
Help! Something’s not working!
Apologies. Please see the email listed in “Author’s Instructions” below and let’s get started on solving the issue.
Which Sensitivity setting should I use?
The author’s preference is Conservative in most cases, but the answer for you depends on your preferred style.
An analogy might help: the aggressive setting will ensure LDPS is early to the party – every party. Of the parties that really kick off, you can be certain LDPS is there, but they had to visit a several of parties before finding the right one.
The Conservative setting won’t bring LDPS to every party – it will gladly stay at the one it’s at but when it detects the next real big hit, LDPS will move to that party instead. It won’t be the first one there, but it is definitely earlier than most.
Should I use the Full or Simplified reporting style?
Depending on how engaged you are with the particular equity or position, either choice can be beneficial. The Full reporting style will let you detect changes in LC before they might show with the Simplified reporting style. Some enjoy the additional data, some (like the Author) enjoy keeping things simple.
I can see LDPS’ colors in the chart’s candlesticks when the settings are open, but not when the settings are closed. How come?
If you are using the “LDPS Candle Replacement” setting, be sure to turn off the Chart’s default candles by right-clicking on the chart, going to Settings, then Symbol and then un-checking “Body”, “Border” and “Wick”. This should fix the issue.
I think there’s a bug – where do I report it?
Thank you for reaching out about a potential bug or issue! Please see the email below in “Author’s Instructions” to report the issue.
Liquidity Dependent Price Movement AlgorithmLiquidity-Dependent Price Movement (LDPM) is a metric designed to directly measure liquidity on a equity in real time, and to translate those measurements into signals to provide insights into where the anticipate price-direction is headed.
Liquidity can be characterized as a way of measuring how smoothly things are running in the market. When things are running smoothly – such as when there is good agreement as to the price of an asset, then things are considered liquid. Conversely, when things are not running smoothly, just as when the bid or the ask do not agree with each other, then things are considered not liquid. These different states have different outcome liklihoods.
In a liquid environment, a stock can trade a lot of shares without moving the price. On the other hand, when a stock is not liquid, even small volumes can move the price substantially.
It is therefore helpful to know when a stock is liquid to the upside or to the downside, or even, when a stock is not liquid to the upside or the downside. These data have statistical associations with future price movement and volatility.
The use of LDPM is straightforward:
If the price is above LDPM: bullish outlooks.
If the price is below LDPM: bearish outlooks.
There are a few key differences about LDPM as compared to other indicators, namely that timeframe matters . That means, LDPM will tailor its output to the timeframe selected. The advantage of this is that it allows LDPM to be "tailored" to the specific timeframe as desired, without having to do any conversions or adaptations mentally.
Key Settings and Configurations:
Setting - Smoothing Type of LDPM :
Default: KF.
LDPM can be smoothened if desired. There are 5 different types of smoothing available:
EMA : Exponential Smoothing
SMA : Simple Smoothing
WMA : Weighted Smoothing
RMA : Modified Smoothing
KF : Kellman Smoothing
The default is "KF" for Kellman Smoothing.
Setting - Include LDPM-Granular :
Default: Off.
LDPM-Granular is the more "raw" form of LDPM that displays the candle-specific result, rather than the smoothened result. This can be toggled on or off, if desired. LDPM granular is helpful for looking at candle-specific
Setting - Place LDPM Standard :
Default: Off.
An additional, single, LDPM line can be placed via this toggle. Settings for this LDPM can be configured directly below toggle.
Setting - Place LDPM-Fib :
Default: On.
LDPM-Fib is a default setting for displaying 5 LDPMs (LDPM-13, LDPM-21, LDPM-34, LDPM-55, and LDPM-89) whose lookbacks are spaced via the Fib sequence. Useful for those who enjoy a static relationship between the different "layers" of LDPM.
Setting - Place LDPM-Reference :
Default: Off.
Since LDPM is time-interval dependent, there may be times when a higher-order timeframe is desired to act as a reference. For instance, suppose you want to go long if the 1-Hour LDPM experiences a bullish crossover, but you want to scalp shorts on the 15-minute timeframe until then. Then you could place the chart on the 15-minute interval for your scalping, and then place a 1-Hour reference LDPM that will show you when the 1-Hour LDPM and price experience a crossover.
Note: The reference must be a higher-order timeframe. So if your chart is on the 15-minute, you can only reference timeframes greater than 15.
Setting - LDPM Box Creation :
Default: On.
Instead of implementing a reference LDPM, it is possible to display the other timeframes in a data table with conditional coloring for if the overall LDPM-Price relationship is bullish or bearish.
Why Chose LDPM
There are no other Liquidity-measuring indicators available to the retail investor. Measuring liquidity often requires the use of expensive data and high-throughput computing to be used in real-time. Neither of these requirements apply to utilizing LDPM.
Additionally, the data are supportive that LDPM provides statistically significant, price-direction-correct outlooks.
Volume Breaker Blocks [UAlgo]The "Volume Breaker Blocks " indicator is designed to identify breaker blocks in the market based on volume and price action. It is a concept that emerges when an order block fails, leading to a change in market structure. It signifies a pivotal point where the market shifts direction, offering traders opportunities to enter trades based on anticipated trend continuation.
🔶 Key Features
Identifying Breaker Blocks: The indicator identifies breaker blocks by detecting pivot points in price action and corresponding volume spikes.
Breaker Block Sensitivity: Traders can adjust breaker block detection sensitivity, length to be used to find pivot points.
Mitigation Method (Close or Wick): Traders can choose between "Close" and "Wick" as the mitigation method. This choice determines whether the indicator considers closing prices or wicks in identifying breaker blocks. Selecting "Close" implies that breaker blocks will be considered broken when the closing price violates the block, while selecting "Wick" implies that the wick of the candle must violate the block for it to be considered broken.
Show Last X Breaker Blocks: Users can specify how many of the most recent breaker blocks to display on the chart.
Visualization: Volume breaker blocks are visually represented on the chart with customizable colors and text labels, allowing for easy interpretation of market conditions. Each breaker block is accompanied by informational text, including whether it's bullish or bearish and the corresponding volume, aiding traders in understanding the significance of each block.
🔶 Disclaimer
Educational Purpose: The "Volume Breaker Blocks " indicator is provided for educational and informational purposes only. It does not constitute financial advice or a recommendation to engage in trading activities.
Risk of Loss: Trading in financial markets involves inherent risks, including the risk of loss of capital. Users should carefully consider their financial situation, risk tolerance, and investment objectives before engaging in trading activities.
Accuracy Not Guaranteed: While the indicator aims to identify potential reversal points in the market, its accuracy and effectiveness may vary. Users should conduct thorough testing and analysis before relying solely on the indicator for trading decisions.
Past Performance: Past performance is not indicative of future results. Historical data and backtesting results may not accurately reflect actual market conditions or future performance.
Volatility and Volume by Hour EXT(Extended republication, use this instead of the old one)
The goal of this indicator is to show a “characteristic” of the instrument, regarding the price change and trading volume. You can see how the instrument “behaved” throughout the day in the lookback period. I've found this useful for timing in day trading.
The indicator creates a table on the chart to display various statistics for each hour of the day.
Important: ONLY SHOWS THE TABLE IF THE CHART’S TIMEFRAME IS 1H!
Explanation of the columns:
1. Volatility Percentage (Volat): This column shows the volatility of the price as a percentage. For example, a value of "15%" means the price movement was 15% of the total daily price movement within the hour.
2. Hourly Point Change (PointCh): This column shows the change in price points for each hour in the lookback period. For example, a value of "5" means the price has increased by 5 points in the hour, while "-3" means it has decreased by 3 points.
3. Hourly Point Change Percentage (PrCh% (LeverageX)): This column shows the percentage change in price points for each hour, adjusted with leverage multiplier. Displayed green (+) or red (-) accordingly. For example, a value of "10%" with a leverage of 2X means the price has effectively changed by 5% due to the leverage.
4. Trading Volume Percentage (TrVol): This column shows the percentage of the daily total volume that was traded in a specific hour. For example, a value of "10%" would mean that 10% of the day's total trading volume occurred in that hour.
5. Added New! - Relevancy Check: The indicator checks the last 24 candle. If the direction of the price movement was the same in the last 24 hour as the statistical direction in that hour, the background of the relevant hour in the second column goes green.
For example: if today at 9 o'clock the price went lower, so as at 9 o'clock in the loopback period, the instrument "behaves" according to statistics . So the statistics is probably more relevant for today. The more green background row the more relevancy.
Settings:
1. Lookback period: The lookback period is the number of previous bars from which data is taken to perform calculations. In this script, it's used in a loop that iterates over a certain number of past bars to calculate the statistics. TIP: Select a period the contains a trend in one direction, because an upward and a downward trend compensate the price movement in opposite directions.
2. Timezone: This is a string input that represents the user's timezone. The default value is "UTC+2". Adjust it to your timezone in order to view the hours properly.
3. Leverage: The default value is 10(!). This input is used to adjust the hourly point change percentage. For FOREX traders (for example) the statistics can show the leveraged percentage of price change. Set that according the leverage you trade the instrument with.
Use at your own risk, provided “as is” basis!
Hope you find it useful! Cheers!
RunRox - Advanced SMCIntroducing Our Advanced SMC Indicator: Elevate Your Smart Money Concept Trading
We are excited to present our innovative indicator designed specifically for the Smart Money Concept (SMC) strategy. Our approach goes beyond the traditional SMC strategy, bringing significant enhancements to help you achieve better trading results.
We employ a more sophisticated SMC structure incorporating IDM, precise retracements, extreme and local order blocks. This allows for a deeper understanding of market trends and insights into the manipulations of major market players.
What is IDM?
IDM, or Institutional Distribution Model, is a refined concept within SMC that focuses on understanding how institutional players distribute their positions within the market. By analyzing IDM, traders can better predict market movements and potential points of reversal, giving them a significant edge.
What is a Precise Retracement?
A precise retracement, according to our methodology, involves a proper candlestick pattern. If candles do not exceed the highs and lows of the previous candle, they are considered internal and are not counted in the market structure. A correct retracement occurs when candles break beyond the boundaries of the preceding candle
4 Types of Order Blocks
Our concept now includes four types of order blocks: CHoCH, IDM, Local, and BOS order blocks. Below, we will discuss the differences:
CHoCH OB - These are order blocks located closest to the Change of Character (CHoCH).
IDM OB - These order blocks are positioned next after the Institutional Distribution Model (IDM).
Local OB - These blocks are either within the IDM range or in areas that do not fit any specific criteria. We refer to these as local order blocks.
BOS OB - These blocks are located closest to the Break of Structure (BOS) line.
Understanding the distinctions between these order blocks and the market context is key to effectively utilizing them for successful trading.
By incorporating these advanced features, our SMC indicator provides a powerful tool for traders looking to enhance their trading strategies and achieve more consistent results.
Here are the main principles and differences in our strategy. We will discuss all the features and capabilities of our indicator in more detail below.
🟠 Example of Our Structure
Now we will demonstrate several examples of our structure to give you a better understanding of how our indicator works
As you can see in the screenshot above, we have three main components of our structure
CHoCH (Change of Character): Price breaks a higher low (in an uptrend) or lower low (in a downtrend) directly after sweeping the recent pivot high or low.
BOS (Break of Structure): Price breaks a higher high (in an uptrend) or a lower low (in a downtrend).
IDM (Institutional Distribution Model): This represents liquidity that the market seeks to capture. The market moves to take out liquidity pockets before reversing in the intended direction.
This example demonstrates our entire structure, how it is built, and the core principles embedded within it. We have also highlighted the points used to form our structure. It's important to note that in the structure with IDM, the CHoCH is dynamic and moves closer to the IDM each time we break the BOS. This makes our structure more dynamic and sets us apart from the classic Smart Money strategy.
Additionally, I would like to show an example of how to work with order blocks in the Smart Money concept with IDM.
As you can see, some order blocks are considered traps for traders in this concept and are a constant problem in the classic structure.
The real market structure is much more complex than beginner traders perceive in the Smart Money concept. If a structural low is broken, the price can still continue its upward movement, updating the structural high because the nearest valid retracement update is merely a liquidity grab, which we refer to as IDM.
Therefore, it is common to observe in a downtrend that the price may break a high, leading Smart Money traders to believe that the price has reversed and the structure has changed (CHoCH), while in reality, the price continues its downward movement.
Inducement in trading is related to the collection of liquidity. Essentially, it is the liquidity created to make retail traders commit errors. IDM is often associated with the crowd's money, waiting for positions to be closed, such as stop-losses, limit orders, stop orders, and so on.
Now that I have explained the basics of our concept, let's move on to the functions of our indicator and trading examples.
🟠 Indicator Features:
Start Date of Structure Building: Choose the starting point for building the structure on the chart.
CHoCH | BOS | IDM: Display any components from this structure.
Market SubStructure: External and internal structure.
Main and Internal Zigzag: Zigzag for understanding the structure.
BOS/CHoCH Breaking by (Body | Wick): Choose the principle for building the structure, either by the candle body or by their wicks.
BOS/CHoCH Move if Swept: When liquidity is taken, decide whether to move the structure line higher or consider it a structural break.
Color Candles: Color the structure according to the trend color.
Current OrderBlock: Display 4 types of OrderBlocks from the current timeframe.
Higher TimeFrame OrderBlock (Any timeframe): Display OrderBlocks from any timeframe you prefer.
OrderBlock Sensitivity (Low | Medium | High): Choose the sensitivity level for displaying OrderBlocks.
Fills Method for FVG/OB (Touch | Midline | Complete): Select the fill method that determines when FVG and OrderBlock are considered fulfilled.
OrderBlock Based on (Full Candle | Body): Choose the principle for constructing OrderBlock, either by the full candle or only by the candle body.
CHoCH | IDM | Local | BOS OrderBlock/FVG: Show or hide 4 types of OrderBlocks and FVG. Customize each one by color, what exactly to display on the chart, etc.
OrderBlock Volume: Observe the strength of OrderBlocks by their intensity.
Highlight All FVG/Imbalance: Display emerging FVGs on the chart without OrderBlocks.
Customizable Alerts: Set up any alerts you want
Let me describe some of the indicator's features
You can set the candles to be colored according to the trend. In some situations, this is very convenient. For example, when the structure becomes quite large, it helps to easily see the current trend without having to refer back to the beginning of the structure.
You can select any date and time as the starting point for the analysis. This unique feature allows you to test any of your market hypotheses at any given moment. I believe this will be beneficial for every trader using the Smart Money Concept.
Sometimes larger structures emerge, and in such cases, it will be convenient to trade based on the internal structure. All dotted lines represent the internal structure, which differs from the external one. This feature is particularly helpful when trading in volatile markets.
In the image, you can see all the types of order blocks we identify:
CHoCH OB - Order blocks located closest to the Change of Character (CHoCH).
IDM OB - Order blocks that follow the Institutional Distribution Model (IDM).
Local OB - These blocks are either within the IDM range or in areas that do not fit any specific criteria. We refer to these as local order blocks.
BOS OB - Order blocks located closest to the Break of Structure (BOS) line.
Additionally, you may encounter mixed order blocks on the chart. In situations where IDM and CHoCH are close to each other, you will see IDM + CHoCH blocks.
Outside the main structure, we mark previous blocks with the label Old , such as Old CHoCH OB and other variations.
We also annotate the volume in all order blocks, showing the traded volume within the candle range near the formation of the order block. This can help you assess the strength of the order block on the chart.
It's important to note that an order block does not necessarily have to be at the peak of a price retracement. For a valid order block to form, several criteria must be met simultaneously. One criterion, for example, is the presence of an FVG along with the order block, among other parameters. Therefore, our order blocks may not always be at the highest points on the chart, but prices often react to our order blocks before reaching the previous high. This is a crucial point to understand.
🟠 Usage Examples
As seen in the example, we broke the structure (CHoCH), transitioning into a downtrend. Now, our points of interest are in the upper blocks. As you remember, IDM acts as a trap for traders, so we focus on the order blocks beyond the IDM. In our case, these are the IDM OB and CHoCH OB. These two order blocks will be our points of interest, depending on the reaction to each of them
As you can see, we broke through the IDM OB rapidly without any significant reaction and reached our second point of interest. This becomes our entry point as we got a reaction from this block. In this scenario, our target will be to break the BOS structure and confirm the downtrend.
Let me provide another example of using the indicator for trend trading.
In this case, we observe a CHoCH break and a trend shift to bullish. Following this, we see an upward movement until the formation of our IDM and a liquidity grab from the high. After this, we can look for our point of interest at the lower boundary.
Additionally, our zone of interest can be an order block from a higher timeframe. In this example, it is a 4-hour order block. Remember, we are currently on the 1-hour timeframe and using the indicator to display order blocks from the higher timeframe.
After descending into our zone of interest, we could consider buying in this zone. Our target could either be breaking the BOS as confirmation of the bullish structure or a reaction to the order block from a higher timeframe.
We've provided two examples of using the indicator, but in reality, there are countless variations, and each trader will find a way to incorporate the indicator into their strategy. While our indicator can be a standalone tool for forming a trading strategy, it offers immense flexibility and adaptability to suit individual trading styles.
🟠 Settings
Let's take a closer look at the settings available in our indicator:
Start Date of Structure Building
Apply Date Filter to OrderBlock
CHoCH | BOS | IDM - Turn Off/On + Color Style
Show Market SubStructure
Draw ZigZag + Style
Draw Inner ZigZag + Style
Color Candles + Style
BOS Breaking by (Body or Wick) + Move if Swept
CHoCH Breaking by (Body or Wick) + Move if Swept
Show Current TF Blocks
Show Higher TF Blocks (Any Timeframe)
OB Sensitivity (Low | Medium | High)
Fills Method for OB (Touch | Midline | Complete)
Fills Method for FVG (Touch | Midline | Complete)
OrderBlock Based on (Full Candle | Body)
Block Transparency (%)
CHoCH | BOS | IDM | Local OB - Turn Off/On + Style color
CHoCH | BOS | IDM | Local FVG - Turn Off/On + Style color
Highlight All FVGs + Color
Show OB Volume
Show Young Blocks
Hide Distance Blocks
Delete Filled OBs | FVGs
Delete Filled Blocks Label
Alerts
CHoCH | BOS Break
Price is Near CHoCH | BOS - %
Touch CHoCH Bullish OBs (Bottom | Middle | Top)
Touch CHoCH Bearish OBs (Bottom | Middle | Top)
Touch BOS Bullish OBs (Bottom | Middle | Top)
Touch BOS Bearish OBs (Bottom | Middle | Top)
Touch IDM Bullish OBs (Bottom | Middle | Top)
Touch IDM Bearish OBs (Bottom | Middle | Top)
Custom Alerts for Developers
We hope that these highly flexible settings will allow you to customize the indicator exactly the way you want it on your chart. Additionally, the alerts will help you stay informed of any potential events.
🟠 Disclaimer
Past performance is not indicative of future results. To trade successfully, it is crucial to have a thorough understanding of the market context and the specific situation at hand. Always conduct your own research and analysis before making any trading decisions.
To gain access to the indicator, please review the author's instructions below this post
Volume Surge Analysis [UAlgo]The "Volume Surge Analysis " indicator is designed to detect significant volume surges in the market. By analyzing volume relative to its moving average and incorporating a comparison of the true range of price movements, this script highlights potential bullish and bearish volume spikes. Traders can utilize these signals to identify moments of heightened market activity that may indicate strong buying or selling pressure.
🔶Features
Volume Multiplier: Customizable setting to define the threshold for what constitutes a volume surge.
Volume SMA Length: Adjustable length for the Simple Moving Average (SMA) of volume.
Price Movement Analysis
Enhances the volume analysis by adding an additional layer of context, helping to confirm whether a volume surge is associated with buying or selling pressure.
True Range Calculation: Measures the range of price movement to understand volatility.
Positive Movement (DM+): Calculated when the current high minus the previous high is greater than the previous low minus the current low. This helps identify strong upward movements.
Negative Movement (DM-): Calculated when the previous low minus the current low is greater than the current high minus the previous high. This helps identify strong downward movements.
Integration with Volume Analysis: By combining the volume analysis with price movement analysis, the script can more accurately determine whether a volume surge is likely driven by bullish or bearish sentiment. This integration helps filter out false signals and provides more reliable indications of market activity.
Median Volume Comparison: Compares the current volume against the median volume multiplied by the volume multiplier to identify significant volume spikes.
Bullish and Bearish Surge Signals: Plots circles above or below bars where significant volume surges occur, indicating potential bullish or bearish movements.
Color Customization: Options to set specific colors for bullish and bearish signals to enhance visual clarity.
Bar Coloring: Optional feature to change the color of bars based on detected volume surges.
Alerts: Configurable alerts for bullish and bearish volume spikes to notify traders in real-time.
🔶Interpretation:
Bullish Volume Surges ( Teal Circles ): These circles appear above the bar when the current volume exceeds the median volume by the specified Volume Multiplier, and the smoothed Positive Directional Index (PDI) is greater than the smoothed Negative Directional Index (NDI). This suggests a potential uptrend with strong buying pressure.
Bearish Volume Surges ( Red Circles ): These circles appear below the bar when the current volume exceeds the median volume by the specified Volume Multiplier, and the smoothed NDI is greater than the smoothed PDI. This suggests a potential downtrend with strong selling pressure.
Overall, the "Volume Surge Analysis " indicator serves as a valuable tool for traders seeking to identify potential trend reversals or strong continuations based on with an above-average rise in volume and directional momentum.
🔶Disclaimer
This indicator is intended for informational and educational purposes only and should not be construed as financial or investment advice. Trading involves substantial risk, and it is essential to conduct your own research and consult with a qualified financial advisor before making any trading decisions.
KillZones & Sessions [TradingFinder] Volume | Asia, London & NY🔵 Introduction
🟣 Session
The forex market operates 24 hours a day, 5 days a week, with only Saturdays and Sundays being off; traders often focus on one of the forex trading sessions instead of trying to trade in all markets 24 hours a day.
Trading sessions are time intervals during which a specific financial market is active and trades are conducted. The Asia, London, and New York sessions are the most important trading sessions throughout the 24-hour period, during which a significant amount of money and liquidity enters the market.
🟣 Kill Zone
Traders in financial markets profit from the difference between the price at which they buy or sell and the current market price. Traders have different time horizons for trading.
Among these, some traders engage in daily or even hourly trading and must operate during times when the market has desirable trading volumes and significant price movements.
Kill zones are segments of a session with higher trading volumes and price fluctuations compared to the rest of the session.
🔵 How to Use
🟣 Session Time
The "Asia Session" consists of two sessions: "Sydney" and "Tokyo." The beginning of this session, according to the "UTC" time zone, is at 23:00 and ends at 06:00. Similarly, the beginning of the "Asia KillZone," according to the "UTC" time zone, is at 23:00, and it ends at 03:55.
The "London Session" consists of two sessions: "Frankfurt" and "London." The beginning of this session, according to the "UTC" time zone, is at 07:00, and it ends at 14:25. Similarly, the beginning of the "London KillZone," according to the "UTC" time zone, is at 07:00, and it ends at 09:55.
The beginning of the "New York am" session, according to the "UTC" time zone, is at 14:30, and it ends at 19:25. Similarly, the beginning of the "New York am KillZone," according to the "UTC" time zone, is at 14:30, and it ends at 16:55.
The beginning of the "New York pm" session, according to the "UTC" time zone, is at 19:30, and it ends at 22:55. Similarly, the beginning of the "New York pm KillZone," according to the "UTC" time zone, is at 19:30, and it ends at 20:55.
Important : To prevent session overlap, the working hours of each session have slightly changed.
🔵 Features
🟣 Simultaneous Session and Kill Zone
With this indicator, you can simultaneously view the kill zone and session. High and low lines are used to indicate sessions, while filled areas with color represent kill zones. If you do not want to see kill zones, you can turn off the display settings.
🟣 Candle, Time, and Volume
Using the "More Info" feature, you can see the number of candles, elapsed time, and traded volume within the colored filled area.
🔵 Settings
•Show More Info: To display "More Info," you need to turn on this feature and turn it off whenever you don't need it.
• You can also customize these settings for each session separately :
o Display or hide session.
o Choose session color.
o Set session time range.
o Display or hide kill zone.
o Set kill zone time range.