Editors' picks
OPEN-SOURCE SCRIPT

Time & volume point of control / quantifytools

Updated
What are TPOC & VPOC?

TPOC (time point of control) and VPOC (volume point of control) are points in price where highest amount of time/volume was traded. This is considered key information in a market profile, as it shows where market participant interest was highest. Unlike full fledged market profile that shows total time/volume distribution, this script shows the points of control for each candle, plotted with a line (time) and a dot (volume). The script hides your candles/bars by default and forms a line in the middle representing candle range. In case of candles, borders will still be visible. This feature can be turned off in the settings.

Volume and time data are fetched from a lower timeframe that is automatically adjusted to fit the timeframe you're using. By default, the following settings are applied:

Charts <= 30 min: 1 minute timeframe
Charts > 30 min & <= 3 hours : 5 minute timeframe
Charts > 3 hours & <= 8 hours : 15 minute timeframe
Charts > 8 hours & <= 1D: 1 hour timeframe
Charts > 1D & <= 3D : 2 hour timeframe
Charts > 3D: 4 hour timeframe

Timeframe settings can be changed via input menu. The lower the timeframe, the more precision you get but with the cost of less historical data and slower loading time. Users can also choose which source to use for determining price for points of control, e.g. using close as source, the point of control is set to match the value of lower timeframe candle close. This could be replaced with OHLC4 for example, resulting in a point of control based on OHLC average.

To identify more profound points of market participant interest, TPOC & VPOC as percentage of total time/volume thresholds can be set via input menu. When a point of control is equal to or greater than the set percentage threshold, visual elements will be highlighted in a different color, e.g. 50% VPOC threshold will activate a highlight whenever volume traded at VPOC is equal to or greater than 50% of total volume. All colors are customizable.

snapshot

VPOC is defined by fetching lower timeframe candle with the most amount of volume traded and using its close (by default) as a mark for point of control. For TPOC, each candle is divided into 10 lots which are used for calculating amount of closes taking place within the bracket values. The lot with highest amount of closes will be considered a point of control. This mark is displayed in the middle point of a lot:

snapshot

How to utilize TPOC & VPOC

Example #1: Trapped market participants

One or both points of control at one end of candle range (wick tail) and candle close at the other end serves as an indication of market participants trapped in an awkward position. When price runs away further from these trapped participants, they are eventually forced to cover and drive price even further to the opposite direction:

snapshot

Example #2: Trend initiation

A large move that leaves TPOC behind while VPOC is supportive serves as an indication of a trend initiation. Essentially, this is one way to identify an event where price traded sideways most of the time and suddenly moved away with volume:

snapshot

Example #3: POC supported trend

A trend is healthy when it's supported by a point of control. Ideally you want to see either time or volume supporting a trend:

snapshot
Release Notes
Update

1. Added visual highlights and alerts for TPOC/VPOC anomalies seen in examples #1 and #2
2. Fixed error on charts with no volume, script can now be used on such charts, showing only TPOC
3. Mid-line is now plotted back 1000 bars instead of 500
4. Script will no longer plot on bars with no TPOC/VPOC data (bars that go back beyond 100K intrabar limit)

Alerts & highlights

snapshot

As it's not always clear when volume/time is properly trapped or when there's a legitimate trend initiation, some amount of filtering is done to avoid meaningless noise passing through. This means the highlights/alerts won't detect literally all scenarios, but will detect most that are likely legitimate. Highlights are turned off by default, but can be toggled on from input menu. Always use discretion instead of blindly reacting to highlights/alerts. Colors for TPOC/VPOC anomalies can be changed in the input menu.

Following TPOC/VPOC scenarios will trigger a highlight:

Trapped volume/time below
- Close higher than previous low + POC lower than previous low and lower than bar mid-point
- Or close lower than previous low + POC lower than close and distance between close and POC greater than or equal to half of bar range

Trapped volume/time above
- Close lower than previous high + POC higher than previous high and higher than bar mid-point
- Or close higher than previous high + POC higher than close and distance between close and POC greater than or equal to half of bar range

Trend initiation up
- Close above previous high
- TPOC lower than bar mid-point, VPOC higher than bar mid-point
- Distance between TPOC and VPOC greater than or equal to half of bar range and volatility greater than 1.5x of previous bar volatility

Trend initiation down
- Close below previous low
- TPOC higher than bar mid-point, VPOC lower than bar mid-point
- Distance between TPOC and VPOC greater than or equal to half of bar range and volatility greater than 1.5x of previous bar volatility

Alerts are available for all these scenarios, individually and grouped (e.g. alert occurs when volume is trapped above vs. alert occurs when volume or time is trapped above or below).
Release Notes
Update

VPOC gets two additional modes.

VPOC with delta indication
This mode will distinguish side of volume (buy/sell) traded at VPOC and apply visuals accordingly. Buy/sell volume is defined by lower timeframe up/down moves, using set source as reference, e.g. close < previous close = sell volume.

snapshot

VPOCs separately for each side
This mode does the same as above, but on top shows where POC for the remaining side is. E.g. if volume traded at VPOC is sell volume, the script will show where highest amount of buy volume of all buy volume lays. Vice versa if volume traded at VPOC is buy volume.

snapshot

Practical guide

Example #1: Identfying strong trends

Getting insight into the side of dominating volume (volume traded at point of control) can be valuable identifying strength in a trend.

snapshot

Example #2: Identifying hidden trapped market participants

As standard VPOC will only show volume point of control, some potential trap scenarios might be missed out. VPOC for the remaining side can help in revealing these scenarios.

snapshot
Release Notes
Updated license
marketprofilePOCpointofcontroltpoctpoprofileVolume IndicatorVolume ProfileVolumevpocvpoprofile

Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in publication is governed by House rules. You can favorite it to use it on a chart.

Want to use this script on a chart?


✨ Get instant access to Premium Toolstack for Free: Liquidity prints, Price based concepts and Liquidity composition

✨ Start 7-Day Free Trial: quantify.tools

Watch video tutorials covering our tools on Youtube ↓
Also on:

Disclaimer