Time & volume point of control / quantifytoolsWhat 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.
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:
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:
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:
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:
Tpoprofile
TPO Market Profile [Kioseff Trading]REPOST; SCRIPT WORKS!!
Due to technical error, this script was republished! Thank you for your support (:
Hello!
This indicator comprises a real time TPO Market Profile!
The script works on any timeframe 1 second or greater - the script calculates relative to the timeframe selected for your chart.
The image above shows the 1-minute BTCUSD chart; 650 +/- tick levels are set.
To see the script in full functionality - try using bar replay on a cryptocurrency 1-minute chart (start at the beginning of a regular hours session). Be sure to adjust the tick spread if necessary (:
So far, the script's held up in real time - I've not had any array loop errors or timeouts. The TPO profile updates accordingly with changes in time / high and low prices. Letters are appended to the profile in real time.
The image above shows configurations for the indicator. I plan to update the indicator quite a bit over the coming days - more to come.
You can select the timeframe change the indicator accounts for. For instance, you can have set the indicator to reset every day, every 30 minutes, every 5 minutes, every week, month, etc.
In the image above, I configured the indicator to recalculate every 3 months. Consequently, the indicator will record a TPO profile for three consecutive, reset, then record a TPO profile for the next 3 months. This setting makes the indicator compatible with any timeframe greater than 1 minute.
You can also use a drag & drop time-start bar to modify the starting point for the market profile TPO calculation.
The indicator hosts an option to auto calculate the tick spread between levels. However, as you switch timeframes and assets, sometimes, you'll have to manually set the tick range (:
Thanks for checking it out; more to come!
Sep 4
Release Notes: UPDATE: The indicator can work on seconds-based charts.
The image above shows the indicator working on the 1-second chart.
(Screenshot is old; characters are now numbered instead of strange unicode)
Release Notes: Added value area + vah + val. Font update. Changed characters to numbered once the alphabet is exhausted. POC, VAH, and VAL label located left of the first bar of the interval. Initial balance range can be toggled. Spaced the characters (more legible). Quite a bit of aesthetic changes so check it out!
Soon, I'll release a version of the script that shows VAH, POC, VAL, and TPO letters from previous sessions. I coded this feature into this indicator; however, it was removed due to load time complications. This feature will be its own script (:
If the script has trouble loading please let me know (:
TPO Letters [Kioseff Trading]Hello!
"TPO Letters" functions similarly to the script "Realtime TPO Profile"; however, TPO characters are appended to a developing bar. Simply, TPO characters display on the bar that formed them.
All colors are configurable.
The image above emphasizes functionality; TPO letters are colored on a gradient . Additionally, the value area range is shaded; characters that form within the range are gradient colored. Gray-colored characters extend beyond the value area.
The columned data displayed right of the TPO letters shows tick levels. Tick levels are shaded various colors, each color indicative of some occurrence.
Tick Levels
Red: Single Print
Yellow: POC
Lime Green: VAH or VAL
Lighter Green: Value Area Inclusive Level
Left of the TPO horizontal-axis, the aqua-colored line (blue-line inclusive) reflects the high-low range of the session; the blue-colored line reflects the initial-balance range (IBR).
You can select to color TPO letters within the IBR blue (any color).
Additionally, you can select to shade the IBR.
The image above shows auxiliary features.
Unfortunately, I'm unable to orient TPO letters at their intended tick levels using one label per bar, a contrasting feature of the "Realtime TPO Profile" script.
This means only 1000 TPO letters can be displayed simultaneously. If the number of TPO letters exceeds 1000, early-session and middle-session characters will begin to disappear. This isn't an issue for the "Realtime TPO Profile" script, as each tick level comprised one label, to which additional TPO characters were appended to the label as necessary and extended horizontally. Using this same method proved fallible for this indicator - vertical scaling is an issue. While I could append all letters formed for a bar to one label, the letters wouldn't superimpose atop their corresponding tick level (using " " didn't suffice).
Consequently, you'll have to, at times, rely on the label & box count oriented in the bottom-right table to see whether the number of labels & boxes transcends the upper threshold. You can hide this table at anytime (:
The image above exemplifies the "Fixed Range" portion of the indicator. A useful inclusion for the "Realtime TPO Profile" script however, while still useful for "TPO Letters", can only display 1000 TPO letters concurrently.
You can also reset the TPO profile at user-defined time intervals.
The indicator hosts an auto-calculate tick levels option; however, there will be times you'll need to manually adjust the tick levels to achieve digestible results (:
That's all! If the script would benefit from an excluded feature, or you notice an error, please let me know! Thank you (:
Shoutout to @kaigouthro for creating an exceptional library for gradient colors!! It was used in this script (:
TPO Profile with Day StatFirst of all I want to Thank @noop42 for creating this wonderful Market Profile chart in Pine script
I have made some changes to this scripts
This Script can auto calculate the TPO Size for NSE Symbols and MCX Crude oil.
This Script Will only calculate the TPO's for visible range only so that the script use less heap size.
I have added some of the day Statistics to enhance your visualization.
Limitations of this Script
Currently This Script can Plot Market Profile Chart only for Historical Data.
It Can only Plot Market Profile Charts in 30-Mins Time Frame only so that you can't use it for Composite Profile Analysis.
To plot Market Profile Chart in Real Time and Historical please use "Market Profile With TPO by Drother"
SpaceTime LevelsSpaceTime Levels Part of the SpaceTime Complete Suite
SpaceTime Levels provides a much needed improvement in the display of multi session compatible levels related to TPO calculations (Time x Price)
The relevant levels are neatly mapped out in a way that is easy to read without the need of the whole profile, e.g. having VA levels D/W/M without the addition
D/W/M Profiles being attached to them reducing the onscreen clutter.
Fully customizable for display includes:
Line styles,
Thickness,
and Coloring.
Text Size,
Coloring.
Custom offset for levels
Pros:
Visible levels, lack of onscreen distractions.
Previous Profile levels included, e.g. pVAH related to previous Value Area High
Cons:
Limited to one previous profile session
Updates incoming:
Additional levels if people request such as NPOCs
Full suite view:
SpaceTime TPOSpaceTime TPO Part of the SpaceTime Complete Suite
SpaceTime TPO Provides an modified codebased to remastered to display the TPO Calculations in a separate indicator with multiple new features, a separate release was necessary in order to maximise the usage of the draw history that can be provided.
Significantly improved from its predecessor Spacetime advanced, the display options used here are less resource heavy and therefore can display multiple profiles in comparison to the previous "high res lettering"
Full suite view:
The main additional advantage of this separate indicator comes in the form of Split TPO profiles ! This utilizes the tradingview display engine creating a whole new way to display data comparative to the candlestick method, doing so will help visualise the profile as it develops.
The Split profiles comes with a pro and con
Pro:
Split profile makes it easier to detect real price movement adjusted to tick
Also tracks the VA travel by history so it is easier to visualise value expansion!
Con:
Due to some limitation some data may occasionally be missed on very volatile candles
Fix:
Increase ticksize/Leave on wicks for candles to see these fluctuations
Update fix inbound: Will display the overflow in a dynamic way so no wicks are needed for all candles if this persists to be a problem
SpaceTime TPO also comes with the same advantages of multi session profile TPOs
Additionally comes with the ability to have a session line
Session Line tracking can continue with "Total" For full length of profile
And
"VA" for Value Area tracking
(or off)
Close tracking in the form of a square is available
Pending updates:
Split profile improvement
Close tracking improvement
SpaceTime RemasteredSpaceTime Remastered
SpaceTime Remastered provides a new code base for TPO Calculations. Significantly enhanced and some differences justifying leaving both choices for users to choose between. Using the PineV5 library, providing the ability to create a profile of price and time.
The main advantage is now being able to run multiple sessions simultaneously whilst also being more efficient. This has allowed for synchronous data generation for multi profile uses and still executing at a faster speed. Additionally this has given the rise to London, New York and Asia sessions as options with this new knowledge in mind. However, the sessions can be utilised beyond this in the form of D,W,M at the same time as an example with a multitude of possible combinations up to the users interest.
Tick for the multiple sessions to determine the segmented data generation of the TPO, can be split between the sessions and work independently of one another. This tick is vital alongside time and price. The generation of this tool can be used to highlight trending and ranging conditions and opportunities to spot both can be used to take trades, e.g. using value migration in use of trend development.
The release of the AutoTick improvements is significant as well providing more consistency and less affected reaction to the volatility in its calculation leading to a more accurate profile tool. AutoTick is a global controller and will handle tick generation for any enabled session.
The words and their abbreviation plus key.
POC: Point Of Control
VA: Value Area
SP: Single Print
EXS: Excess *sell or buy tail
PHL: Poor High/Low
TPO: Time Price Opportunity
N = Naked e.g. NPOC Naked Point of Control
D = Developing e.g. DVA Developing Value Area
VAStyles and POCStyles exist to better customise the representation of datak,
Show Text Data is toggleable to give the text representation of key inflection points and data. TPO Count, TickSize used, Excess location boundaries, Single Print Location Boundaries.
Display modes exist for All data, VA + Levels and Levels up to the users choosing.
Session timings are adjustable.
ToDo:
Add Initial balance if requested.
Add User Settings for select members of the community.
Add TPO lettering, delayed as mostly unused in predecessor.
Add Rotation Factor