Directional Volume Shapes (Zeiierman)█ Overview
Directional Volume Shapes (Zeiierman) is a regime-classification oscillator that reframes volume analysis around a different question: not simply “how much volume traded,” but “what statistical shape has directional pressure been forming, and which way is it leaning?”
Instead of plotting raw buy and sell volume bar by bar, the indicator scores each candle for directional pressure using a triangular intrabar distribution model. It collects those scores in a rolling window, classifies the pattern into one of seven distribution shapes, and displays a smooth synthetic template of the detected shape.
The result is less like a traditional volume indicator and more like a distribution-regime display, showing the type of pressure environment currently developing.
⚪ Why Is This One Unique?
Most volume tools show exactly what happened: green bar up, red bar down, and taller bar equals more volume. This indicator uses a two-stage process: classify, then synthesize.
It combines:
• A triangular CDF candle scorer that estimates directional pressure from OHLC data
• A rolling shape classifier using skewness, Gaussian-smoothed peak detection, and time correlation
• Seven possible classifications: Bell, Right-skewed, Left-skewed, J-shaped, Reverse-J, Bimodal, and Multimodal
• A template generator that displays an idealized mathematical version of the active shape
• A separate EMA-based polarity engine that controls bullish or bearish direction
█ How It Works
⚪ 1. Scores Each Candle’s Directional Pressure
Instead of using a simple “close above open equals bullish” rule, the indicator models the candle’s high-low range as a triangular probability distribution centered at the close.
The scr() function evaluates the candle’s full OHLC structure and returns a value between 0 and 1. That result is then converted into a signed pressure score between -1 and +1.
dm = scr(open, high, low, close)
ps = 2.0 * dm - 1.0
Values near +1 represent stronger bullish pressure, while values near -1 represent stronger bearish pressure. Values near zero indicate a more balanced candle.
⚪ 2. Optionally Weights Pressure by Volume
When Volume Weighting is enabled, the pressure score is multiplied by raw volume.
src = vw ? volume * ps : ps
This gives high-volume bars more influence over the rolling shape-classification window. When disabled, the classifier uses directional pressure alone.
Volume still controls the height of the plotted columns regardless of this setting.
⚪ 3. Classifies Pressure Shape, Not Direction
The indicator stores recent pressure values in a rolling window. Before classification, it converts each value into its absolute magnitude.
for i = 0 to buf.size() - 1
mag.set(i, math.abs(buf.get(i)))
Using math.abs() removes bullish and bearish direction from the classification stage. The classifier analyzes how pressure strength has been distributed, not which direction it points.
It measures:
• Skewness in the raw pressure magnitudes
• Local peaks in a Gaussian-smoothed version of the data
• Whether pressure strength is generally increasing or decreasing through time
The final shape is selected using a fixed priority order:
if peaks >= 2
out := peaks == 2 ? "Bimodal" : "Multimodal"
else if corr > 0.5
out := "J-shaped"
else if corr < -0.5
out := "Reverse-J"
else if skew > 0.1
out := "Right-skewed"
else if skew < -0.1
out := "Left-skewed"
else
out := "Bell"
Multiple peaks are checked first, followed by rising or falling behavior, then skewness. Bell is used when no other condition is detected.
⚪ 4. Requires Persistence Before Changing Shapes
The active shape changes only after five consecutive bars produce a classification different from the shape currently displayed.
if ns != sh
sc += 1
else
sc := 0
if sc >= 5
sh := ns
ph := 0.0
sc := 0
The five classifications do not need to match each other. They only need to differ from the current active shape.
When the fifth differing classification arrives, the indicator switches to that bar’s shape and restarts the template cycle.
⚪ 5. Tracks Polarity Separately
Bullish or bearish polarity is calculated independently from the shape classification.
A short EMA is applied to the original signed pressure score:
pr = ta.ema(ps, pl)
string np = pr >= 0 ? "Bull" : "Bear"
When the EMA is above or equal to zero, polarity is Bull. When it is below zero, polarity is Bear.
Because polarity can change as soon as the EMA crosses zero, it usually reacts faster than the shape classifier.
⚪ 6. Displays a Synthetic Shape Template
Once a shape is selected, the indicator does not plot the original pressure values.
Instead, it generates an idealized mathematical template for the active shape. For example, Bell uses a Gaussian curve, J-shaped uses a squared rising curve, and Bimodal combines two separate Gaussian peaks.
The generated template is then scaled by recent average volume and signed according to polarity.
p = pol == "Bull" ? ph : 1.0 - ph
tv = tpl(sh, p)
sgn = pol == "Bull" ? 1.0 : -1.0
amp = ta.sma(volume, 3) * 1.8
y = amp * tv * sgn
The template advances by a fixed amount on each bar. Template Cycle Length controls how many bars are used to complete one full cycle.
█ Assumptions We Are Explicitly Making
The indicator’s usefulness depends on whether its modeling assumptions are suitable for the instrument and timeframe being analyzed.
These are not facts about market behavior. They are simplifying assumptions used because Pine Script does not provide true intrabar tick or order-flow data.
⚪ Intrabar Activity Is Approximated With a Triangular Distribution
The model approximates intrabar activity using a triangular distribution centered at the close. It does not know where price actually spent the most time within the candle.
Using another reference point, such as VWAP, the midpoint, or the open, could produce a different pressure score.
⚪ Shape and Direction Are Treated Separately
The shape classifier analyzes the magnitude of pressure but removes its bullish or bearish direction. Two windows with similar pressure-strength patterns but opposite directional bias can therefore receive the same shape classification.
The shape describes how pressure has been distributed, while the separate polarity calculation determines whether it is leaning Bull or Bear.
⚪ Seven Shapes Are Used to Describe Pressure Behavior
Every window is placed into one of seven fixed categories using predefined thresholds:
• Skewness thresholds of ±0.1
• Correlation thresholds of ±0.5
• Peak prominence above 10% of the smoothed envelope’s maximum
The classifier follows a fixed priority order rather than selecting the mathematically closest-fitting shape.
There is also no statistical significance test behind these thresholds, so borderline classifications may change because of noise.
⚪ The Displayed Curve Represents the Classification, Not the Raw Data
After classification, the indicator displays an idealized template rather than the original pressure values. Two different pressure windows classified as Bell will use the same normalized Bell template.
The final column height and direction can still differ because the template is scaled by recent volume and signed by polarity.
█ How to Use
⚪ Directional Volume Reading
Use the indicator as you would a traditional volume oscillator.
• Readings above zero indicate bullish volume strength.
• Readings below zero indicate bearish volume strength.
⚪ Divergences
Use the columns to identify divergences in volume strength.
• Bullish divergence: Price makes a lower low while the indicator forms a higher low.
• Bearish divergence: Price makes a higher high while the indicator forms a lower high.
⚪ Interpreting the Shape Labels
• Bell: Pressure intensity is relatively symmetric and contains one main area of activity.
• Right-skewed / Left-skewed: Pressure intensity is uneven and has a longer tail on one side of the distribution.
• J-shaped: Pressure intensity has generally increased toward the most recent bars.
• Reverse-J: Pressure intensity was stronger earlier in the window and has weakened toward the present.
• Bimodal / Multimodal: The smoothed pressure path contains two or more separate periods of stronger activity within the detection window.
⚪ Choosing the Shape Speed
Template Cycle Length controls how quickly the displayed shape moves through its synthetic cycle. It changes the visual speed of the columns, not the shape-detection window or Bull/Bear polarity.
• 3 bars, Fast: Creates tight, fast-moving shapes. This is the most responsive and active-looking setting.
• 4 bars, Balanced: Gives each shape slightly more time to develop while remaining responsive.
• 5 to 7 bars, Slow: Stretches the shape across more bars, creating smoother and slower visual cycles.
A value of 3 is useful when you prefer compact, fast-moving shapes. Increase the value when you want each shape to develop more gradually and remain visible for longer.
█ Settings
Use Volume Weighting: Controls whether volume multiplies directional pressure before shape classification. Volume still controls the plotted column height when this setting is disabled.
Detection Window: Sets the number of recent bars used to classify the current shape. Higher values produce slower and more stable classifications. Lower values react faster and may change shape more often.
Polarity Smoothing: Sets the EMA length used to determine Bull or Bear polarity. Higher values create steadier polarity. Lower values react faster.
Template Cycle Length: Sets the number of bars used to complete one synthetic shape template. Lower values create faster and tighter cycles. Higher values stretch the template over more bars.
Show Moving Average: Shows or hides a moving average of the final plotted output.
Type: Selects the moving-average method: SMA, EMA, RMA, or WMA.
Length: Sets the moving-average period.
Maximum Transparency: Sets the maximum transparency applied near the lower points of each template. A value of 0 disables the transparency fade.
-----------------
Disclaimer
The content provided in my scripts, indicators, ideas, algorithms, and systems is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
Sellingpressure
CVD Multi-Timeframe DashboardCVD Multi-Timeframe Dashboard
═══════════════════════════════════════════
WHAT IT DOES
═══════════════════════════════════════════
Most CVD tools only show you the timeframe you're standing on. This one shows
you the whole stack at once. Stay on your execution chart — 1m, 3m, 5m,
whatever you trade — and read the net buying vs. selling pressure of the 5m,
15m, 1h, 4h, Daily and Weekly in a single on-chart table.
In one glance you know whether the bigger picture is backing your trade or
fighting it.
═══════════════════════════════════════════
WHY IT'S USEFUL
═══════════════════════════════════════════
Price can rise while volume delta quietly turns negative — buyers stepping
back even as the candle stays green. That divergence is an early warning, and
it's far more powerful when you can see it line up (or break down) across
multiple timeframes:
- All rows green → broad, one-sided buying. Trend trades have the wind behind them.
- All rows red → broad selling pressure. Longs are swimming upstream.
- Mixed rows → the timeframes disagree — often a pullback, rotation, or a
turning point forming.
This turns CVD from a single-timeframe reading into a top-down confluence tool.
═══════════════════════════════════════════
HOW IT WORKS
═══════════════════════════════════════════
Volume Delta = volume hitting the offer (buying) minus volume hitting the bid
(selling). The script uses PulseWire's ta.requestVolumeDelta() engine, which
scans lower-timeframe data to approximate that split as accurately as the
data allows.
Each row anchors that engine to a different timeframe and reports the NET delta
of that timeframe's CURRENT, developing bar — i.e. how much net buy/sell flow
has built up since that candle opened. As a higher-timeframe bar progresses,
its value accumulates; when a new bar opens, it resets. That's why the rows
genuinely differ from one another instead of repeating the same number.
═══════════════════════════════════════════
READING THE TABLE
═══════════════════════════════════════════
TF → the monitored timeframe
CVD Δ → net volume delta of its current bar (auto-formatted K / M / B)
Bias → BUY (positive) or SELL (negative), colour-coded
═══════════════════════════════════════════
SETTINGS
═══════════════════════════════════════════
- Timeframes to monitor — up to 6 slots, each with its own on/off toggle and
timeframe. Set them equal to or higher than your chart timeframe.
- Lower timeframe — resolution used to approximate up/down volume. Automatic
by default; lower = more precise, higher = more history.
- Style — table position, text size, and your own positive/negative colours.
═══════════════════════════════════════════
ALERTS
═══════════════════════════════════════════
"CVD bias flip" fires the moment any monitored timeframe's delta crosses
between positive and negative — useful for catching a shift in flow without
staring at the screen.
═══════════════════════════════════════════
NOTES & LIMITATIONS
═══════════════════════════════════════════
- Monitor timeframes ≥ your chart timeframe; lower ones aren't meaningful.
- The symbol must provide volume data, or the script will tell you.
- Lower-timeframe scanning approximates buy/sell volume — it isn't true
tick or bid/ask data. Use it as a directional gauge, not an exact figure.
Built on PulseWire's open-source CVD logic and the ta.requestVolumeDelta()
function from the PulseWire/ta library. Open-source — feedback and forks
welcome.
Indicator
Absorption BubblesSUMMARY
This indicator visualizes absorption events by plotting bubbles on candle wicks where volume activity suggests one side of the market is absorbing the other’s pressure. Instead of raw volume, the script normalizes activity against a rolling standard deviation defined by the Lookback Period. Bubbles appear on upper or lower wicks depending on whether buyers or sellers are absorbing pressure. The goal is to highlight whether aggressive orders are being accepted or absorbed at key price points.
METHODOLOGY
Absorption occurs when one side of the market absorbs aggressive orders from the other, preventing continuation. The script measures normalized volume against a user‑defined threshold to filter out weaker signals.
Green bubbles on upper wicks → Selling absorption (buyers push price up, sellers absorb the buying).
Red bubbles on lower wicks → Buying absorption (sellers push price down, buyers absorb the selling).
Red‑colored bars highlight candles where large volume is concentrated inside the body, signifying aggressive selling activity.
Green‑colored bars highlight candles where large volume is concentrated inside the body, signifying aggressive buying activity.
The Lookback Period controls how many bars are used to calculate the rolling standard deviation of volume, letting traders adjust sensitivity to recent vs. longer‑term activity. Optional significant volume lines extend forward, marking areas where absorption was strongest.
FUNCTIONS
Normalized volume detection using rolling standard deviation
Adjustable Lookback Period for volume normalization
Dynamic bubble plotting on candle wicks (size scales with absorption strength)
Separate visualization for buying vs. selling absorption
Alerts for buying absorption, selling absorption, or any absorption event (only at bar close)
Bar coloring when large absorption occurs inside candle bodies
APPLICATION
Setup: Add the script to any chart and timeframe. Adjust the Absorption Threshold to filter out weaker bubbles and the Lookback Period to control how volume normalization is calculated. Red bubbles highlight buying absorption, often signalling potential price pivots - price can often go upwards from this. Green bubbles mark selling absorption, reflecting resistance to upward moves - price may go downwards from this.
Interpretation:
Green bubbles on upper wicks = sellers absorbing buying pressure.
Red bubbles on lower wicks = buyers absorbing selling pressure.
Larger bubbles = stronger absorption relative to recent volume.
Settings & Use:
Raising the Absorption Threshold filters out smaller bubbles, leaving only significant absorption events.
Changing the Lookback Period alters how “normal” volume is defined — shorter periods make the script more sensitive, longer periods smooth out noise.
Alerts can be set for buying absorption, selling absorption, or any absorption event, and they only trigger at bar close to avoid noise.
Indicator
Multi-TF Volume & Price Analysis[BullByte]This indicator offers a comprehensive view of market dynamics by combining volume and price analysis across multiple timeframes. It calculates key metrics—such as bullish/bearish volume percentages, relative volume (RVol), cumulative volume delta (CVD), and price change percentages—for each timeframe that you choose (for example, 1, 3, 5, and 15 minutes). Here are the main features in simple terms:
- Multi-Timeframe Analysis:
The tool analyzes volume and price action from four different timeframes simultaneously. This means you get insights from short-term and slightly longer-term trends in one view.
- Volume Breakdown:
It splits the volume into bullish and bearish parts by comparing closing and opening prices. This helps you see how much of the trading volume is driving the market upward versus downward.
- Relative Volume & Spike Detection:
It calculates relative volume (current volume compared to a moving average) and flags any significant volume spikes based on a customizable multiplier. This feature helps identify unusual trading activity.
- Volume Smoothing Option:
For a cleaner signal, you can enable a smoothing option (using an exponential moving average) to reduce noise in the volume data.
- Advanced Summary:
The indicator combines volume data, price changes, and volume spikes to produce an overall market summary for each timeframe—labeling conditions as “Bullish Strong,” “Bullish Moderate,” “Bearish Strong,” “Bearish Moderate,” or “Neutral.”
- Cumulative Overview:
In addition to individual timeframe analysis, it aggregates the data to offer a cumulative view. This includes a collective bullish/bearish percentage, overall CVD, and even a simplified volume level (Low, Normal, or High).
- Customizable Dashboard:
All these metrics are neatly displayed in a dashboard on the chart. You can customize its position and text size. The dashboard uses dynamic, color-coded cells to instantly convey the market sentiment—making it easy to spot trends at a glance.
- VWAP Integration:
Finally, the dashboard includes VWAP information, providing an additional layer of context to the price action.
Overall, this indicator is designed to provide a quick yet thorough snapshot of market conditions, enabling traders to make more informed decisions with a clear visual representation of volume and price activity across different timeframes.
Indicator
Equilibrium╭━━━╮╱╱╱╱╱╱╭╮╱╭╮
┃╭━━╯╱╱╱╱╱╱┃┃╱┃┃
┃╰━━┳━━┳╮╭┳┫┃╭┫╰━┳━┳┳╮╭┳╮╭╮
┃╭━━┫╭╮┃┃┃┣┫┃┣┫╭╮┃╭╋┫┃┃┃╰╯┃
┃╰━━┫╰╯┃╰╯┃┃╰┫┃╰╯┃┃┃┃╰╯┃┃┃┃
╰━━━┻━╮┣━━┻┻━┻┻━━┻╯╰┻━━┻┻┻╯
╱╱╱╱╱╱┃┃
╱╱╱╱╱╱╰╯
Overview
Equilibrium is a tool designed to measure the buying & selling pressure in the market. It is depicted as a “pressure gauge” that automatically adjusts as new candles are formed, providing a real-time indication of who's on top right now, buyers or sellers?
Background
Supply & demand is considered to be the main driving force of our modern economies, where the interaction between the two parties(sellers & buyers) leads to the determination of the fair price for a given product. Stock markets are no exception, they operate very much based around the idea of supply & demand.
In simple terms, supply refers to the availability of a product, and demand is the willingness of consumers to buy that product at a given price. It is obvious that different vendors may sell the same product at slightly different prices, and similarly, different customers may choose to buy the same product from different vendors at varying prices. The idea is that the price is allowed to fluctuate from time to time, but in a free & fair market, the price will eventually settle down to a value that makes both the parties happy. Such a state is known as the “Price-Equilibrium”, and this process is also referred to as the market mechanism.
This is the basic assumption around which this tool is based, the market is always trying to move towards a state of equilibrium.
Calculations
This tool takes a simplistic approach to estimate the degree of imbalance between buyers & sellers, here’s a brief summary of how the pressure is calculated:
- We compute the total lengths of red & green candles for a given period, i.e. price range multiplied by the volume for that candle.
- Then the distribution of each type of candle is calculated.
- Assuming more red candles denote more selling pressure, and green candles denote buying pressure, the gauge is populated cell by cell.
- As the pressure on one side increases, the intensity of the cell color also increases, signifying the extent to which one side is dominating.
How to use it
- The indicator is designed as a pressure gauge that moves up(vertical alignment) or to the right(horizontal alignment) as the buying pressure increases, and moves down or to the left as the selling pressure increases. How it is to be used & applied, that completely depends on your trading methodology. But, the general idea is that we expect the market to be in a state of equilibrium, and if that is not the case the tool will highlight that, and this is also where the opportunity lies to find suitable trades.
- Just by having an idea about who’s dominating the market currently, a trader can also pick sides wisely. Remember, the market is always striving to come back a state of equilibrium, and a slight imbalance can indicate the current trend, and more importantly, who’s more likely to make the next move.
User Settings
The tool offers some minimal configurations for the end user:
- You can choose to display the actual percentage value in the gauge(Show Text).
- You can adjust colors that denote buyers & sellers.
- You can change the layout of gauge, default is vertical(right side of the screen).
- Last, and most important, you can adjust the number of candles to traverse for calculating the pressure. Default is 50, can go upto 1000.
Indicator
Buying and Selling Pressure Raw Multi (TG Fork)Visualize raw buying and selling pressure via 3 different calculation methods, all superimposed with dynamic rescaling.
Buying and selling pressure is the concept of quantifying the disproportion between buying and selling. In practice, there is no single definitive way to calculate it.
This indicator is a merge to display three different methods to calculate buying and selling pressure, with automatic visual rescaling to superimpose the three simultaneously, updated to PineScript v5, and with some additional improvements for speed and calculation precisions, and instead of the EMA, other types of moving averages can be used.
I primarily made it for my own needs, but as always, I like sharing with the community, as maybe others may find this useful too.
How to use:
* As often, the goal is to get as many of the 3 signals concur together to get a stronger aggregated signal.
* First signal: If the green bars on the histogram are bigger than the red ones, then there is more buying pressure, and vice versa.
* Second signal: If the background is green, there is more buying pressure, and vice versa if the background is orange. The yellow and green lines define the background color, but they are by default hidden for a less cluttered visual experience.
* Third signal: If the cloud is blue, there is more buying pressure, and the bigger the cloud, the more momentum there is for it to stay (and more difficult it is to reverse to selling pressure). If the cloud is red, there is more selling pressure.
If you like this indicator, please don't give me any credit, instead please show some love to the original authors (in no particular order):
ceyhun:
daytraderph (I could not find the link to the original script, the page is inaccessible?):
www.pulsewire.com
fract:
Indicator
NET BSP NET BSP derived from Buying & Selling Pressure which is a volatility indicator that monitors average metrics of green and red candles separately.
We could navigate more confidently through market with projected market balance.
BSP allowed us to track and analyze the ongoing performance of bullish and bearish impulsive waves and their corrections.
Due to unintuitive way of measuring decline with SP going up, I decided to remake it into more intuitive version with better precision.
When we encounter the fall it's better to have declining values of tool to be able to cover it visually with ease.
One of the solutions was to create a sense of balance of Buying Pressure against Selling Pressure.
Since we are oriented by growth, it'd be more logical to summarize the market balance with BP - SP
Comparison:
When Buying and Selling Pressure are equal, NET BSP would be at 0.
NETBSP > 0 and NETBSP > NETBSP = 🟢
NETBSP > 0 and NETBSP < NETBSP = 🟡
NETBSP < 0 and NETBSP < NETBSP = 🔴
NETBSP < 0 and NETBSP > NETBSP = 🟡
Hence, we get visualized stages of uptrends and downtrends which allows to evaluate chances and estimations of upcoming counter-waves.
Also, it is worth to note that output clearly shows how one wave is derived from another in terms of sizing.
Feel free to adjust NET BSP arguments to adapt sensitivity to the timeframe you're working on.
Indicator
Real Cummulative Delta (New TV Function)Thanks to the new PulseWire indicator Up/Down Volume, it is now possible to get accurate information on Agression (market buying vs market selling)
However, as they only provide the value of delta, I've made this indicator to show the cummulative value, in the form of candles.
It is great to detect divergences in the macro and in the micro scale (As in divergences in each candle and divergences in higher or lower tops or bottoms)
Hope you can make good use of it!
Indicator
Buying & Selling PressureBuying and selling pressure is a volatility indicator which denotes the balance between buyers and sellers inside candlestick.
You set the length to average it just like ATR. But This offers further break down of participants of the market.
Pretty much at any condition of the market the indicator can filter out interesting details to make trading decisions faster or confirm them.
So keep it simple we have two lines
🟢 Green → buying pressure
🔴 Red → selling pressure
If green is rising → Price most likely will grow
If green is rising and red is falling → Price will grow at higher probability
If red is rising → Price most likely will fall
If red is rising and green is falling → Price will fall at higher probability
When they both grow or fall → wait till one of them goes opposite way.
╳ Crossings can indicate turning points for bigger price swings.
Technically by very act of intersecting means that Buying and Selling Pressure are equal.
Can be used for Demand/Supply analysis and evaluate the support/resistance levels.
Indicator
Volume Profile and Volume Indicator by DGTVolume Profile (also known as Price by Volume) is an charting study that displays trading activity over a specified time period at specific price levels. It is plotted as a horizontal histogram on the finacial isntrumnet's chart that highlights the trader's interest at specific price levels.
The histogram is used by traders to predict areas of support and resistance. Price levels where the traded volume is high could be assumed as support and resistance levels.
Price may experience difficulty moving above or below areas with large bars. Usually there is a great deal of activity on both the buy and sell side and the market stays at that price level for a great deal of time
It is advised to use volume profile in conjunction with other forms of technical analysis to maximize the odds of success
Light version of Volume Profile is added to Price Action - Support & Resistance by DGT
Indicator
Volume PressureThis script modified from @the_akechi's VolumePressure
The sum of buying and selling volume is NOT always equal to the total volume using the original script because the 2 columns are overlaid, not stacked
Indicator











