Indicator

Time Price Opportunity Gravity Grid [ALT_analyst]Time Price Opportunity Gravity Grid
■ Description
This script executes a strictly quantified market structure analysis by integrating Time Price Opportunity (TPO) profiling, dynamic Value Area (70%) boundaries, POC Migration matrices, and Z-Score volatility anomaly detection.
By overriding standard OHLC data limitations via lower-timeframe data injection (request.security_lower_tf), it constructs an uncompromisingly high-resolution price-density profile. Trend definitions and signal thresholds are stripped of subjective bias, executing purely on the spatial shift of accepted value and mathematical volatility expansion.
■ Core Architecture & Mechanical Edge
The algorithm mandates the simultaneous confluence of three independent mathematical variables. This relentless confluence acts as a strict mechanical filter, systematically rejecting ranging environments and isolating only mathematically significant structural shifts.
1. Value Area Calculation (70% Auction Density)
Mechanics:
Computes the absolute TPO block count per session, isolating the exact price range containing 70% of execution density (approximating 1 standard deviation).
Expansion originates strictly from the POC (maximum density node) and iteratively absorbs adjacent price rows based on relative volume weight, capturing the absolute center of the market auction.
Visualization:
Deployed as modern, semi-transparent filled boxes (Value Area Box) to eliminate visual noise, obsoleting legacy dashed-line renderings.
Application:
Price action within the Value Area is mathematically defined as balance.
A confirmed close outside this boundary signals structural imbalance. To mathematically neutralize low-volume fakeouts, breakouts are strictly invalidated unless simultaneously confirmed by both POC Migration and Volatility expansion.
2. POC Migration (Structural Trend)
Mechanics:
Evaluates the spatial shift of accepted value across consecutive sessions using a discrete step-function.
// Bullish Migration (+1):
Current_POC > Previous_POC and Current_VAL > Previous_VAL
// Bearish Migration (-1):
Current_POC < Previous_POC and Current_VAH < Previous_VAH
Application:
By demanding the simultaneous directional shift of both the peak density (POC) and the boundary floor/ceiling (VAL/VAH), the script verifies that the core market consensus has definitively relocated.
3. Volatility Z-Score (Anomaly Detection)
Mechanics & Equation:
Z_Score = (ATR(14) - SMA(ATR(14), 100)) / StDev(ATR(14), 100)
Calculation Rationale:
To measure exactly how many standard deviations the current volatility deviates from its 100-period baseline, standardizing volatility spikes across all asset classes regardless of absolute price.
Expected Output Example:
If current ATR is 1.5, 100-period mean is 1.0, and standard deviation is 0.2, the Z-Score outputs 2.5 (+2.5 standard deviations above the mean).
Application:
A Z-Score strictly > 2.0 flags a statistical outlier (top ~2.2% of historical occurrences). The algorithm enforces this threshold to ensure breakouts are driven by aggressive, statistically significant kinetic expansion, rejecting market noise.
4. Gaussian Liquidity Grid Distortion
Mechanics & Equation:
Pull_Factor = Math.exp(-(Distance_Y^2) / (2 * Pull_Radius^2))
Calculation Rationale:
Utilizes a Gaussian decay function to translate historical price congestion into a gravitational pull on the background grid, mathematically quantifying market memory.
Expected Output Example:
If price is 100 ticks away with a radius of 200, the function outputs a multiplier of ~0.882, pulling the visual grid line 88.2% closer to the price center.
Application:
Distorted grid zones visually map historical liquidity pools (high probability of deceleration/mean reversion). Smooth grids indicate liquidity vacuums for rapid price discovery.
■ Signal Execution Rules
Signals execute ONLY upon total alignment:
Long Entry: Close strictly > active POC, Structural Trend = +1, Z-Score > 2.0.
Short Entry: Close strictly < active POC, Structural Trend = -1, Z-Score > 2.0.
Risk Management: Invalidations must mathematically reside outside the active Value Area (below VAL for longs, above VAH for shorts).
Disclaimer
This script provides objective mathematical analysis for educational purposes. It does not constitute financial advice.
Indicator

Regression Market Profile [BOSWaves]Regression Market Profile - Curve-Following Distribution Analysis with TPO Letters, Heatmap, and Profile Modes
Overview
Regression Market Profile is a regression-anchored market profile system that maps the distribution of price activity relative to a best-fit regression curve rather than within fixed horizontal price boundaries, where row assignment, POC identification, value area construction, and interior visualization are all derived from how far actual price deviated from the regression prediction on each bar rather than from absolute price levels.
Instead of constructing a profile against a static price range, this system fits either a linear or polynomial regression to recent price history and measures each bar's deviation from the fitted curve, distributing that activity into horizontal rows centered on the regression line. As the curve bends and trends through price space, the entire profile follows it, revealing where price consistently clustered above or below the regression prediction and identifying the deviation offset with the highest time-at-price concentration as a dynamic POC that moves with the trend rather than anchoring to a fixed session boundary.
This creates a market profile framework that adapts to the prevailing directional structure of price rather than imposing a fixed container. The interior visualization communicates distribution in three configurable modes: a heatmap that reveals how the distribution migrated across time columns, a profile extending from the right edge showing the cumulative distribution shape, and TPO letter boxes that follow the regression curve encoding chronological time progression through gradient coloring. Standard deviation bounds, value area boundaries, and a dual-line POC glow all follow the curve simultaneously, providing a complete structural reference system that moves with the trend rather than remaining static.
Price is therefore evaluated not for its absolute level but for its position relative to the regression expectation, with the profile revealing which deviation offsets attracted the most sustained activity throughout the regression window.
Conceptual Framework
Regression Market Profile is founded on the principle that meaningful participation clustering should be measured relative to the expected price path defined by recent price history rather than within arbitrary time or price containers that carry no relationship to the actual directional structure of the market.
Traditional market profile approaches anchor distributions to calendar sessions or fixed price ranges, producing profiles that reflect where price traded within a time box rather than where it clustered relative to its own trend. This framework replaces fixed-container profiling with regression-relative distribution measurement, where each bar's contribution to the profile is determined by how far actual price deviated from the best-fit curve rather than where it sat in absolute price space. The profile therefore reveals the structural tendencies of price relative to its own trend dynamics rather than its behavior within an externally imposed boundary.
Three core principles guide the design:
Profile distribution should be measured as deviation from a fitted regression curve rather than as absolute price position, ensuring the profile captures participation clustering relative to trend expectation rather than within arbitrary price boundaries.
The interior visualization mode should be configurable between temporal migration analysis, cumulative distribution shape, and chronological letter encoding, allowing the same structural data to be interpreted through different analytical lenses depending on the trader's workflow.
All structural reference elements including POC, value area, standard deviation bounds, and centerline should follow the regression curve continuously rather than anchoring to static horizontal levels, maintaining relevance to the current trend structure throughout the regression window.
This shifts market profile analysis from session-bounded horizontal distribution tracking into regression-relative participation mapping where the profile reveals structural clustering tendencies within the context of the prevailing trend curvature.
Theoretical Foundation
The indicator combines matrix-based polynomial and linear regression fitting to recent HL2 price data, rolling standard deviation for channel scaling and SD bound construction, deviation-based row assignment for distribution building, POC identification through maximum row count, value area expansion from POC outward, and three distinct interior visualization systems that present the same distribution data through different geometric representations following the regression curve.
The regression is computed using ordinary least squares matrix operations: the design matrix is constructed with powers of bar index up to the polynomial degree, transposed and multiplied to form the normal equations, inverted, and multiplied by the price vector to produce regression coefficients, which are then applied to generate the full prediction array. Standard deviation of the HL2 series over the regression window provides the channel scaling unit and drives the SD bound envelopes. Row assignment divides the channel height by the number of rows and places each bar's deviation from its predicted value into the corresponding row bin. POC and value area use the same maximum-count and outward-expansion logic as conventional market profile, applied to the curved row counts.
Four internal systems operate in tandem:
Regression Engine : Computes linear or polynomial best-fit predictions for all bars in the lookback window using matrix least squares, providing the curved baseline that all distribution measurements, row positioning, and visual elements follow.
Distribution Construction System : Measures each bar's deviation from its regression prediction, assigns it to a horizontal row within the standard deviation channel, accumulates row counts across the full window, and derives POC and value area from the resulting distribution.
Interior Visualization Engine : Renders the distribution data inside the channel in one of three modes: curved polygon cells per time column normalized independently for heatmap temporal migration display, curved profile bars extending from the right edge scaled to global row counts for distribution shape display, or TPO letter boxes positioned at the regression-relative row boundaries with gradient chronological coloring for time period encoding.
Structural Reference System : Draws the dual-line POC glow following the regression curve at the POC row offset, value area boundary polylines at the VA top and bottom offsets, standard deviation envelope polylines at one through three sigma above and below the curve, and a dashed centerline following the regression prediction directly.
This design ensures the distribution and all structural reference elements continuously adapt to the regression curve while the three interior modes provide complementary analytical perspectives on the same underlying participation data.
How It Works
Regression Market Profile evaluates price through a sequence of regression-aware distribution and visualization processes:
Regression Calculation : On the last bar, the design matrix is constructed from bar index values raised to polynomial powers up to the configured degree. Ordinary least squares solves for the coefficient vector and applies it to produce a prediction array covering all bars in the lookback window.
Channel Scaling : The standard deviation of HL2 over the regression window multiplied by the configured channel width defines the maximum deviation distance, establishing the vertical extent of the distribution channel centered on the regression curve.
Row Assignment and Count Accumulation : Each bar's actual HL2 is compared to its regression prediction and the deviation is assigned to a horizontal row bin derived from the channel height divided by the row count. Row counts accumulate across all bars in the window.
POC Identification : The row with the maximum accumulated count is identified as the Point of Control, representing the deviation offset from the regression curve where price spent the most time during the lookback window.
Value Area Construction : Starting from the POC row, adjacent rows are added in order of greater count until the cumulative total reaches the configured value area percentage of all bar counts, defining the high-activity zone around the POC.
Interior Rendering - Heatmap Mode : The lookback window is divided into time columns and each column builds its own per-row counts, normalized independently so each column's internal distribution is shown on its own scale. Curved polygon cells are rendered for each occupied cell with hot-cold gradient coloring by normalized density.
Interior Rendering - Profile Mode : Each row's global count is expressed as a fraction of the maximum row count and scaled to a configurable proportion of the total regression length. Curved polygon bars extend leftward from the right edge by the scaled bar length, forming a profile shape that follows the regression curve.
Interior Rendering - Letters Mode : Each bar is assigned a sequential alphabetical letter based on its time period index relative to the TPO timeframe. Letters are accumulated per row and rendered as individual boxes positioned at the regression-relative row boundaries, with gradient coloring that progresses from cold to hot as the letter index advances chronologically.
POC Polyline Rendering : A wide low-opacity glow polyline and a thinner full-opacity core polyline follow the regression curve at the POC deviation offset, providing a continuously curving reference for the maximum activity level throughout the window.
Value Area and SD Bound Rendering : Dotted polylines follow the regression curve at the value area high and low offsets and at one, two, and three standard deviation distances above and below the curve, with opacity increasing with distance from the curve.
Together, these elements form a continuously recomputed regression-relative distribution system where every visual element adapts to the current curve shape and all three interior modes present the same participation data from different analytical perspectives.
Interpretation
Regression Market Profile should be interpreted as a regression-relative structural distribution system where clustering above or below the fitted curve reveals directional bias tendencies and participation concentration within the prevailing trend:
Regression Centerline : The dashed curve following the best-fit prediction represents the trend's expected price path. Price consistently above it indicates sustained positive deviation bias; price consistently below indicates sustained negative deviation bias.
POC Line : The dual glow and core polyline following the curve at the maximum activity offset marks the deviation level where price spent the most time relative to the regression prediction, representing the most accepted deviation from expected trend behavior during the window.
Value Area Boundaries : Dotted polylines above and below the POC line mark the deviation range containing the configured percentage of total activity, identifying the zone of concentrated acceptance around the POC.
Standard Deviation Bounds : One, two, and three sigma dotted envelopes around the curve mark statistically extreme deviation distances, with progressively greater opacity indicating greater statistical rarity of price reaching those offsets.
Heatmap Mode : Each time column displays its own normalized distribution, with hot colors indicating the most active deviation level within that column and cold colors indicating less active levels. Reading across columns from left to right reveals how the distribution migrated as the window progressed.
Profile Mode : Curved bars extending from the right edge show the cumulative distribution shape across the full window, with longer bars indicating deviation levels with greater total activity and hot coloring marking the densest regions.
Letters Mode : Sequential alphabet letters fill the channel rows at their regression-relative positions, with gradient coloring from cold early-window letters to hot late-window letters encoding chronological time progression. Single-letter rows indicate price visited that deviation level in only one time period, functioning as regression-relative single prints.
POC Offset Interpretation : A POC positioned above the regression centerline indicates that price has consistently traded at a positive deviation from expectations, reflecting bullish structural bias within the window. A POC below the centerline indicates bearish structural bias.
POC offset direction, value area extent, distribution shape across modes, and SD bound interactions collectively provide more structural context than any element in isolation.
Signal Logic & Visual Cues
Regression Market Profile does not generate discrete buy or sell signals but provides continuous structural reference through distribution-derived levels:
POC Reaction : Price returning to the deviation level corresponding to the POC polyline encounters the most accepted level within the regression window, frequently acting as magnetic reference for reversion or continuation assessment.
Value Area Boundary Interaction : Price moving outside the value area boundaries enters statistically less accepted deviation territory, suggesting either trend extension beyond typical participation or the beginning of structural repositioning relative to the regression curve.
Standard deviation bound interactions provide additional reference for statistically extreme deviation events that historically attract mean reversion activity back toward the regression curve and POC.
Strategy Integration
Regression Market Profile fits within regression-informed structural analysis and distribution-based approaches:
POC Reversion Framing : Use the POC polyline as a dynamic reversion target when price has extended to the outer standard deviation bounds, with the curved POC providing a continuously updating level that reflects the trend's accepted center rather than a static price.
Value Area Acceptance Testing : Monitor whether price is trading within or outside the value area boundaries to assess whether current price activity represents accepted trend behavior or extended deviation warranting mean reversion consideration.
Heatmap Migration Analysis : Use temporal migration visible in heatmap mode to assess whether distribution is shifting toward positive or negative deviation over the course of the window, providing directional bias evidence from the distribution's evolution rather than from price alone.
Profile Shape Assessment : Use profile mode to assess distribution symmetry around the regression curve. A distribution skewed above the centerline suggests persistent positive bias; skew below suggests persistent negative bias. A symmetric bell shape suggests balanced acceptance around the regression expectation.
Single Print Monitoring in Letters Mode : Treat single-letter rows in letters mode as regression-relative thin participation levels that price is likely to revisit, analogous to single prints in conventional market profile.
Regression Mode Selection : Use Linear mode for markets trending in a consistent direction where a straight best-fit line accurately represents the price path. Use Polynomial mode for markets with visible curvature in their trend structure where the quadratic bend better fits the actual price trajectory.
Technical Implementation Details
Regression Engine : Matrix OLS computation using design matrix construction, normal equation formation, matrix inversion, and coefficient application for linear or polynomial curve fitting to HL2
Channel Construction : Rolling standard deviation-scaled channel with configurable width multiplier providing deviation row boundaries
Distribution System : Deviation-based row assignment with global count accumulation, POC maximum identification, and outward value area expansion
Heatmap Engine : Per-column count normalization with curved polygon cell rendering using hot-cold gradient by normalized density
Profile Engine : Global count-scaled curved bar polylines extending from the right edge by proportional bar length
Letters Engine : TPO timeframe-ratio letter assignment with per-row accumulation and gradient chronological box rendering at regression-relative boundaries
Structural System : Dual-line POC glow, dotted VA boundary polylines, three-sigma dotted SD envelopes, and dashed centerline all following the regression curve via chart.point arrays
Performance Profile : All rendering triggered only on the last bar with full object cleanup and rebuild on each update, polyline-based curved geometry for all structural elements
Optimal Application Parameters
Timeframe Guidance:
1 - 5 min : Intraday regression profiling with shorter length and tighter channel for fast-adapting curve that captures intraday trend structure
15 - 60 min : Session-level distribution analysis with balanced length and moderate channel width for meaningful participation mapping across typical session trends
4H - Daily : Swing-level regression profiling with longer lookback and polynomial mode for curve-following distribution across multi-session directional structures
Suggested Baseline Configuration:
Length : 200
Mode : Polynomial
Channel Width (SD×) : 3.0
Inner Display : Letters
Rows : 12
TPO Timeframe : 30
Value Area % : 70
Show POC : Enabled
Show Value Area : Enabled
Show SD Bounds : Enabled
These suggested parameters should be used as a baseline; their effectiveness depends on the instrument's trend characteristics, volatility profile, and preferred distribution granularity, so fine-tuning is expected for optimal performance.
Parameter Calibration Notes
Use the following adjustments to refine behavior without altering the core logic:
Curve fits too loosely to recent price : Decrease Length to shorten the regression window, producing a curve that adapts more quickly to recent price structure. Switch to Polynomial mode if the trend has visible curvature that a linear fit cannot capture.
Curve too reactive to short-term price movement : Increase Length to smooth the regression across more history, producing a more stable curve that reflects longer-term directional structure and reduces sensitivity to recent fluctuations.
Channel too narrow or wide : Adjust Channel Width to scale the standard deviation multiplier, expanding the channel to capture more price activity within the distribution or contracting it to focus on the core deviation range.
Distribution too coarse or granular : Adjust Rows to increase or decrease the number of horizontal price bins, calibrating vertical resolution to the channel height and the instrument's typical deviation behavior within the regression window.
Heatmap columns too few or many : Adjust Heatmap Columns to control the time resolution of the migration display, with fewer columns showing broader temporal patterns and more columns revealing finer migration detail at the cost of visual density.
Profile bars too short or long : Adjust Profile Width to scale the maximum bar length as a fraction of the regression window, calibrating how far the longest bars extend from the right edge relative to the available chart space.
Too few or many letters per row : Adjust TPO Timeframe to change the time period each letter represents. Higher timeframes produce fewer, broader letters; lower timeframes produce more letters with finer time resolution.
Adjustments should be incremental and evaluated across multiple session types rather than isolated market conditions.
Performance Characteristics
High Effectiveness:
Trending markets where the regression curve accurately represents the directional price path and the distribution reveals consistent deviation bias that reflects genuine structural tendencies
Instruments with smooth, curving price trends where polynomial mode produces a better-fitting curve than a straight line and the distribution around the curve is more meaningful than a session-anchored profile
Market profile-informed approaches that benefit from a continuously adapting POC and value area that follow the trend rather than anchoring to fixed session boundaries
Distribution analysis workflows where heatmap temporal migration or profile shape provides directional bias evidence from participation patterns rather than from price indicators alone
Reduced Effectiveness:
Choppy, directionless markets where the regression curve has no clear shape and the distribution is uniform across rows, reducing the interpretive value of POC location and value area extent
Markets with frequent sharp reversals where the regression window spans multiple opposing structural moves, producing a curve that represents none of them accurately and a distribution without meaningful clustering
Extremely short lookback windows where the matrix regression calculation is underdetermined or the distribution contains too few bars per row to produce statistically meaningful counts
Instruments with discontinuous price action including frequent gaps where the HL2 series used for regression produces curves that follow gap-distorted price paths rather than genuine trend structures
Integration Guidelines
Confluence : Combine with BOSWaves structural tools, momentum oscillators, or volume analysis to validate POC and value area interactions with broader analytical context before acting on regression-relative distribution levels
POC Offset Bias : Monitor the position of the POC relative to the centerline across successive sessions as a structural bias indicator. A POC consistently above the centerline across multiple regression windows suggests a persistent positive deviation tendency in the current trend phase.
Mode Selection by Objective : Use Letters mode for structural time-at-price analysis analogous to conventional market profile. Use Heatmap mode to assess how distribution shifted over the regression period. Use Profile mode to quickly assess distribution shape and skew relative to the centerline.
Regression Mode Discipline : Commit to a regression mode based on the instrument's observed trend curvature rather than switching between modes reactively. Polynomial mode adds a second degree of freedom that can overfit short-term noise if the lookback window is too short.
Window Length Stability : Maintain a consistent regression length when using the POC and value area as ongoing structural references. Changing the length significantly shifts the curve and redistributes the profile, making successive POC comparisons unreliable.
Disclaimer
Regression Market Profile is a professional-grade regression-relative distribution and market profile analysis tool. It uses ordinary least squares curve fitting with deviation-based participation mapping but does not predict future price movements. Results depend on market conditions, instrument trend characteristics, parameter selection, and disciplined execution. BOSWaves recommends deploying this indicator within a broader analytical framework that incorporates order flow context, structural analysis, and comprehensive risk management. Indicator

True Time Price Profile - Hybrid Dynamic Bins[ALT_analyst]True Time Price Profile - Hybrid Dynamic Bins
◆ NOTICE / DISCLAIMER
This architecture is NOT a standard Volume Profile (VP) or a conventional Time Price Opportunity (TPO) indicator.
It is a highly advanced, multi-variable structural density engine.
It was specifically designed to mathematically extract institutional defense lines and localized price absorption in environments lacking reliable tick volume (e.g., Forex, CFD, Indices),
functioning as a rigorous technical benchmark for supply/demand extraction.
◆ EXECUTIVE SUMMARY
This script is deployed as a Proof of Concept (PoC) to demonstrate the integration of price absorption, time-based variance,
and strict pro-rata energy distribution within a localized UI rendering environment.
By discarding standard aggregation methods, this open-source architecture isolates the true "quality" of price stagnation,
exposing anomalous market states where large capital defends specific price buckets.
◆ ARCHITECTURE & QUANTITATIVE LOGIC
Standard profiles often struggle because they cannot distinguish between a "rapid vacuum passing" and a "defended consolidation."
This engine utilizes three proprietary layers to resolve this logic gap:
Pro-Rata Energy Distribution Engine
To prevent large-range bars (e.g., sudden momentum spikes) from artificially inflating the profile score across empty price vacuums, this script enforces a strict pro-rata allocation matrix.
Let N_bins be the total number of price bins a single bar intersects.
The assigned value for each specific bin is calculated as:
Apportioned Value = Base Value / N_bins
This completely neutralizes vacuum zones, correctly assigning mass only to true areas of conflict.
Velocity & Acceleration (Absorption) Evaluator
Instead of counting volume, the script measures the deceleration of price action.
It compares the high-low range of the current bar (v_curr) against the previous bar (v_prev). A negative acceleration (accel < 0) indicates kinetic energy is being absorbed by limit orders.
This absolute delta is extracted as the base absorption value (|a|).
Time Variance Logic (Market Memory)
A price level tested multiple times over a prolonged period holds significantly more structural integrity than a level tested only once.
The engine applies the statistical variance of the normalized time index (t) to scale the localized importance of a bin:
Variance (σ²) = (Sum of t² / n) - (Average t)²
The final Hybrid Score is the integration of absorbed energy scaled by the logarithmic variance:
Score = Sum( |a| * ln(1 + σ²) )
◆ PRACTICAL APPLICATION: HOW TO TRADE WITH THIS ENGINE
Instead of blindly treating every high-volume node as support/resistance, utilize this engine to identify Structural Friction:
Locating Hidden Institutional Limits:
Bins with exceptionally high Hybrid Scores often act as heavy liquidity pools.
Price action will typically stall or reverse sharply upon re-entering these zones.
Breakout Validation:
If price breaks out of a Value Area (VA) without generating new high-score bins, it indicates a lack of limit-order resistance (a vacuum).
These moves are prone to rapid continuation or swift mean-reversion sweeps.
Cross-Session Node Alignment (Breakout Threshold):
By anchoring the profile to short, sequential sessions, observe if high-scoring nodes (POCs) align horizontally at the same price level across multiple independent profiles.
This structural anomaly signifies a massive, sustained accumulation of limit orders.
A decisive price breach of this specific alignment typically triggers a high-probability volatility breakout, as the defended liquidity pool is rapidly consumed.
◆ SYSTEM CAPABILITIES AND LIMITATIONS
Visual Synthesis of Invisible Nodes:
Resolves precise support/resistance vectors purely from price action kinetics, independent of broker volume feeds.
Dynamic Resolution Scaling:
The bin size is strictly tethered to the Average True Range (ATR), ensuring the profile grid automatically calibrates to the underlying asset's volatility regime.
Limitations & Warnings:
PulseWire enforces a strict cap of 500 max boxes/lines per indicator. To prevent script execution limits or array errors, the maximum lookback and bin count are dynamically capped.
Furthermore, if the scaled ATR drops to absolute zero, the geometric grid cannot initialize.
◆ INPUT PARAMETERS REFERENCE
Live Update Frequency:
Toggle between 'Update on Every Tick' and 'Update on Bar Close'.
CRITICAL WARNING: Using tick updates combined with multiple MTF arrays on a fast timeframe will cause localized UI lag. Use 'Bar Close' as a CPU saver.
Profile Calculation Mode:
Select 'Classic' for standard aggregation, or 'Hybrid' to engage the Absorption + Variance matrix (The core edge of this tool).
Grid Step Multiplier:
Lower values increase vertical resolution.
Warning: Values below 0.05 on high-volatility assets may trigger the 500-box rendering limit.
Show Debug Data Table:
Projects a live array matrix on the bottom right, displaying precise Price, Count, Absorption, Variance, and Hybrid Scores for absolute algorithmic transparency.
Indicator

TPO Auction & Value ProfileTPO Auction & Value Profile
Overview
A complete intraday auction-profile engine. For each session it counts how much time price spent at each level — the Time-Price-Opportunity (TPO) distribution — and reads off what an auction cares about: Point of Control (most-traded price), Value Area (central band holding ~70% of activity, with VAH/VAL edges), Initial Balance (the open's framing range), excess tails vs poor unfinished extremes, single prints, and naked POCs (prior fair-value magnets price hasn't revisited). It then layers what a profile alone can't show: the volume POC beside the time POC, an optional buy/sell delta tint per level, prior-day value projected forward, a rolling composite (multi-day) value, and a decision dashboard that turns it all into one at-a-glance verdict. Sessions auto-detect from the instrument's own trading day — no setup.
What makes it different — why these pieces are ONE engine (mashup rationale)
This is the part PulseWire asks publishers to justify, so here it is explicitly. Every component answers a different question about the same auction, and each is only meaningful in the presence of the others:
The TPO distribution is the substrate (where did the auction spend time?). POC + Value Area summarise agreed value; Initial Balance frames the open; excess / poor / single prints read the auction's completeness at the edges; naked POCs carry unfinished value forward.
The volume POC is laid over the time POC because time and volume don't always agree on fair value — their divergence is information a pure TPO profile cannot show.
The delta-per-level tint adds who was active (buyers vs sellers) at each price — the order-flow dimension behind the time distribution, reconstructed from lower-timeframe bars.
Prior-day and composite (multi-day) value place today in context: initiative vs responsive, value migration (higher/lower/overlapping) and failed auctions are only definable relative to those references.
The dashboard fuses location, migration, range extension, open type, day type and the rotational TPO count into one bias — the synthesis a stack of separate indicators leaves you to do by eye.
Split apart, each piece is a fragment; together they describe one thing — the shape, location and completeness of the auction. That interdependence is why it's a single engine, not a bundle.
What this adds over a standard TPO / Market Profile script
Most profile scripts stop at drawing the TPO letters/rows, POC, value area and IB. This engine goes well beyond that, and these additions are what make it original:
Auto-session that works where others break. New-session detection keys off a calendar-day change in the instrument's own timezone, so it resets correctly on feeds that have no out-of-session bars (NSE index futures only print 09:15–15:30) — where edge-detection-based scripts silently fail and pile every day into one profile. Zero setup, adapts to any market.
Time POC vs Volume POC divergence. It overlays the volume point of control on the time POC and flags when they disagree — a tradeable tell a time-only profile can't surface.
Delta-per-level (order flow at price). An optional row-colour mode tints each level by net buy/sell delta, reconstructed from lower-timeframe signed volume — showing who was active at each price, not just how long. Rare on TPO tools.
Excess vs poor, done rigorously. A single-print run of ≥ N rows at an extreme is flagged excess (strong rejection / completed auction); a flat multi-TPO extreme is flagged poor (unfinished). Most scripts conflate the two; here they're distinct and coloured differently.
Prior-day value, projected forward. Yesterday's POC/VAH/VAL extend into today as labelled reference lines — the levels every auction trader marks pre-session.
Rolling composite (multi-day) value. A composite POC/VAH/VAL across the last N sessions shows the longer-timeframe balance single-day profiles miss.
Fused decision dashboard. Open type (drive / reject-reverse / auction), day type (balanced … trend), value migration vs prior, range extension vs IB, the rotational TPO count, failed-auction state and a colour-coded bias headline — turning raw structure into one at-a-glance verdict, theme-adaptive to your chart.
Failed-auction detection + alerts. Fires when price breaks prior-day value and closes back inside — the high-probability fade auction theory points to.
Split-profile time colouring. Rows tinted by the bracket that first reached them, exposing migration and double distributions at a glance.
How it works
Session: Auto groups each profile by the instrument's trading day in its native timezone (first/last bars = detected open/close); Manual pins a window. Rows: price is binned (tick multiple, ATR fraction, or fixed step); each bar adds a TPO + its volume + its delta to every row it covered; rows can be coloured by time bracket (split profile), delta, or value area. Value Area grows from the POC to the richer neighbour until the chosen % is enclosed. Structure: a single-print run ≥ N rows at an extreme is excess (strong rejection); a flat multi-TPO extreme is poor (unfinished); TPO count sums TPOs above vs below POC (singles excluded). Analytics: open type, day type, value migration, range extension, failed auctions. Developing vs completed: the live session updates on the forming bar and settles on close; finished sessions are drawn once; naked POCs extend until filled.
How to use
Lead with the dashboard's bias headline, then confirm with structure: value-area edges are acceptance/rejection levels; POC, volume POC and naked POCs are magnets; excess marks completed auctions, poor extremes mark unfinished business price tends to revisit; prior-day and composite value say where today sits; a failed auction back inside value is a high-odds fade. Context for your decisions — not a standalone trigger.
Originality
The auction concepts are public (credited below); the original work is the assembly and the code — auto-session detection that works on instruments with no out-of-session bars, the time-vs-volume POC divergence read, an original delta-per-level reconstruction, the rolling composite, the excess-vs-poor logic, and the fused decision dashboard. No third-party code is reused.
Concept credit
The auction / Market-Profile framework (time-price opportunities, value area, point of control, initial balance, excess, single prints, day/open types) originates with J. Peter Steidlmayer at the Chicago Board of Trade and was developed for traders by James Dalton. Volume-at-price is standard volume-profile practice. Buy/sell classification uses the tick rule (Lee & Ready, 1991).
Honesty / limitations
A TPO profile measures time at price, not size; the volume POC and delta add the volume view, but the delta is a tick-rule estimate from lower-timeframe bars, not true bid/ask data. The composite is a rolling window that refreshes periodically, not a fixed calendar range. Open type and day type are transparent heuristics. Row size changes the picture. Descriptive auction context — it does not predict price.
Disclaimer
Research / educational only. NOT financial advice; no guarantee of profitability. Indicators describe past behaviour. Trading carries risk of loss. Test out-of-sample. The author accepts no liability. Indicator

Swing Gradient TPOs [BOSWaves]Swing Gradient TPOs - Swing-Anchored Time Price Opportunity Profiles with Gradient Chronology and Single Print Detection
Overview
Swing Gradient TPOs is a swing-anchored market profile system that constructs Time Price Opportunity profiles within each detected swing range, where letter assignment, gradient coloring, POC identification, and single print detection are driven by chronological time period progression across the swing rather than fixed session boundaries or arbitrary time windows.
Instead of applying TPO profiles to calendar sessions or user-defined time blocks, this system anchors each profile to the confirmed swing structure of the instrument itself, building a complete letter-by-letter participation map for every swing from high to low and low to high. Each time period within the swing receives a sequential alphabetical letter, and those letters are colored using a configurable gradient that visually encodes the chronological progression of price activity from swing origin to completion.
This creates a profile framework that reflects how participation distributed across price within each structural swing rather than within arbitrary time containers. The gradient coloring reveals whether price visited certain levels early or late in the swing's development, the POC identifies the price level with the greatest time-based participation, the value area captures the range containing the configured percentage of total activity, and single print zones mark levels touched by only a single time period and project them forward as potential reaction areas until price revisits them.
Price structure and participation distribution are therefore evaluated together, with each swing producing a self-contained profile that answers both where price spent time and when within the swing that activity occurred.
Conceptual Framework
Swing Gradient TPOs is founded on the principle that TPO-based market profile analysis becomes structurally meaningful when profiles are anchored to confirmed swing boundaries rather than to session times that carry no relationship to the instrument's actual directional behavior.
Traditional market profile approaches build TPO distributions within daily or weekly sessions, which imposes a time container on the data that is independent of how price is actually behaving structurally. This framework replaces session-based profile construction with swing-event-driven profile building, where each profile begins at a confirmed swing extreme and ends at the next confirmed swing extreme in the opposing direction, ensuring the participation map covers exactly one complete directional structural move.
Three core principles guide the design:
TPO profiles should be anchored to swing structure rather than calendar time, ensuring each profile captures participation within a single directional move rather than across an arbitrary time boundary that may span multiple structural events.
Gradient coloring should encode chronological letter progression visually, revealing whether price visited particular levels early or late in the swing rather than treating all activity within the swing as temporally equivalent.
Single print zones represent structurally significant levels visited by only one time period and should be projected forward as active reference areas until price returns to test them, at which point reclaim or rejection behavior provides actionable signal context.
This shifts market profile analysis from session-container-based participation tracking into swing-anchored structural profile construction with gradient-encoded temporal intelligence and forward-projecting single print monitoring.
Theoretical Foundation
The indicator combines swing high and low detection through highest and lowest lookback comparison, alphabetical letter assignment by configurable TPO timeframe period, three-color gradient interpolation for chronological letter coloring, POC identification through maximum TPO count per price bin, value area expansion from POC outward, single print detection and forward projection, and retest signal generation when price sweeps and reclaims a single print zone.
Swing detection tracks whether the most recent extreme high or low is the highest or lowest reading in the lookback window, registering a swing point when price rotates away from a prior extreme. TPO letter assignment maps each bar within the swing to a time period based on the ratio between the chart timeframe and the configured TPO timeframe, with sequential alphabet letters A through Z then a through z assigned chronologically across the swing's duration. Gradient coloring maps each letter's alphabetical index to a position along a three-stop gradient, producing a color sequence that progresses from swing start to swing end. Price bins are calculated from the swing range divided into segments sized relative to recent ATR, with each bin's letter count determining POC and value area membership.
Four internal systems operate in tandem:
Swing Detection Engine : Tracks highest and lowest readings over the configurable lookback window, registering confirmed swing highs and lows when price rotates away from prior extremes and triggering profile construction on each swing direction change.
TPO Profile Builder : Assigns sequential alphabetical letters to time periods within each swing, maps each bar's high and low range to the appropriate price bins, accumulates letter strings and counts per bin, and derives POC and value area from the resulting distribution.
Gradient Chronology Engine : Maps each letter's sequential index to a position along a configurable three-stop gradient, producing coloring that encodes when within the swing each price level was visited rather than applying uniform directional color across the entire profile.
Single Print Detection and Signal System : Identifies price bins touched by exactly one time period letter, projects those zones forward as extended boxes until price revisits them, monitors for sweep-and-reclaim behavior with configurable cooldown, and generates directional retest signals when qualifying conditions are met.
This design allows each swing to produce a complete participation profile with temporal depth encoded visually, while structurally significant single print zones remain active as forward reference areas with signal generation capability.
How It Works
Swing Gradient TPOs evaluates price through a sequence of structure-aware and profile-building processes:
Swing Direction Tracking : On each bar, price is compared against the highest high and lowest low over the configured lookback. When the current high matches the lookback high, the swing is classified as transitioning to a downswing. When the current low matches the lookback low, it is classified as transitioning to an upswing.
Swing Point Registration : When price rotates away from a prior extreme, the swing point price and bar index are recorded for both highs and lows independently, maintaining the most recent confirmed swing high and low as profile anchors.
Profile Build Trigger : When swing direction changes, a profile build is triggered using the recorded swing high and low as boundaries, constructing the complete TPO distribution for the completed swing.
Price Bin Calculation : The swing range is divided into bins sized relative to a smoothed ATR-derived tick amount, capped at 80 bins to maintain visual clarity and computational efficiency.
Letter Assignment and Accumulation : Each bar within the swing is mapped to a time period letter based on the ratio of the configured TPO timeframe to the chart timeframe. For each bar, its high and low determine which price bins it touches, and the period letter is appended to each qualifying bin's letter string if not already present.
POC Identification : The bin with the greatest accumulated letter count is identified as the Point of Control, representing the price level with the most time-based participation across the swing.
Value Area Expansion : Starting from the POC bin, the value area expands outward by adding the adjacent bin with the greater letter count, continuing until the accumulated count reaches the configured value area percentage of total swing activity.
Gradient Color Mapping : Each letter's alphabetical index is divided by the maximum period index to produce a normalized position along the three-stop gradient, assigning colors that progress from the gradient start color early in the swing to the gradient end color late in the swing.
Single Print Identification and Projection : Bins with exactly one letter in their string are classified as single prints and, when the extension setting is enabled, receive forward-projecting zone boxes that extend rightward on each bar until price enters the zone.
Single Print Sweep and Reclaim Detection : When price enters a single print zone the zone is marked as swept. If price then exits the zone in the opposing direction and closes beyond the zone boundary with sufficient cooldown observed, a directional retest signal is generated.
Real-Time Profile Rendering : On the last bar, the developing swing from the most recent confirmed extreme to current price is rendered as a live TPO profile that updates with each new bar, providing a continuously refreshing participation map for the current incomplete swing.
Together, these elements form a continuously updating swing profile system where each completed swing produces a gradient-encoded participation map, single print zones project forward as active structural references, and retest signals identify price reclaims of structurally thin areas.
Interpretation
Swing Gradient TPOs should be interpreted as a swing-anchored participation distribution system with temporal depth encoding and forward-projecting structural reference zones:
TPO Letter Boxes : Each lettered box represents a single time period's visit to that price level within the swing. The letter itself identifies which time period made the visit, and the gradient color reveals where in the swing's chronological sequence that period falls.
Gradient Coloring : The gradient progression from swing start to swing end colors early-swing activity in the gradient start color and late-swing activity in the gradient end color, visually encoding whether price visited each level early or late in the structural move.
Point of Control (POC) : The horizontal line through the price level with the most accumulated TPO letters represents the level where price spent the greatest amount of time within the swing, acting as a gravitational reference for the swing's dominant auction zone.
Value Area : The vertical line at the swing origin spanning the value area high and low with dotted horizontal boundary projections marks the price range containing the configured percentage of total swing TPO activity, identifying the zone of concentrated acceptance during the swing.
Single Print Zones (Highlighted) : Price bins touched by exactly one time period letter are visually distinguished within the profile, indicating levels that price passed through quickly without sustained participation, representing structurally thin areas vulnerable to future reaction.
Single Print Extensions (Projected) : When extension is enabled, single print zones project forward as shaded boxes beyond the swing boundary, maintaining active visual reference until price revisits the zone and the extension is consumed.
Retest Signals : Arrow signals generated when price sweeps through an extended single print zone and then reclaims it by closing beyond the zone boundary, identifying potential continuation opportunities at structurally thin levels that have now been tested and defended.
Real-Time Profile : The developing profile on the current incomplete swing updates continuously with each new bar, providing a live participation map anchored to the most recent confirmed swing extreme using the same gradient, POC, and value area logic as completed historical swings.
POC location, value area boundaries, gradient temporal distribution, and single print zone positioning collectively provide more structural and participatory intelligence than any element in isolation.
Signal Logic & Visual Cues
Swing Gradient TPOs presents two retest signal types derived from single print zone interaction:
Bullish Single Print Reclaim : Generated when price sweeps into a bullish single print zone from an upswing and subsequently closes above the zone's upper boundary, indicating the structurally thin area has been swept and reclaimed with bullish resolution.
Bearish Single Print Rejection : Generated when price sweeps into a bearish single print zone from a downswing and subsequently closes below the zone's lower boundary, indicating the structurally thin area has been swept and rejected with bearish resolution.
Both signal types require the zone to have been swept before reclaim or rejection can register, and a configurable cooldown enforces minimum bar separation between consecutive signals to prevent clustering during active zone interaction.
Alert generation covers completed swing high and swing low events as well as bullish and bearish single print reclaim signals for systematic structural and zone-based monitoring workflows.
Strategy Integration
Swing Gradient TPOs fits within market profile-informed and structure-based participation analysis approaches:
POC Reaction Trading : Monitor price behavior when it returns to a prior swing's POC level. The POC represents the most accepted price within the swing and frequently acts as a reference for future support, resistance, or reversion behavior.
Value Area Boundary Framing : Use value area high and low projections as structural boundary references, with price outside the value area representing potential imbalance and price returning to the value area suggesting reversion toward prior acceptance.
Single Print Zone Trading : Use extended single print zones as anticipatory structural references, monitoring price behavior on approach for the sweep-and-reclaim or sweep-and-reject patterns that trigger retest signals.
Gradient Temporal Analysis : Use gradient distribution within each swing to assess whether participation at key levels occurred early or late in the move. Heavily late-swing activity at a level suggests climactic behavior, while early-swing concentration may indicate initial acceptance or rejection zones.
Real-Time Profile Monitoring : Use the developing live profile to assess current swing participation distribution in real time, identifying emerging POC levels and single prints within the active structural move before it completes.
Multi-Swing Profile Comparison : Compare POC locations, value area widths, and single print density across successive swings to assess whether participation is concentrating or dispersing as the broader trend develops.
Technical Implementation Details
Swing Detection : Highest and lowest lookback comparison with direction tracking and confirmed extreme registration on price rotation
TPO Construction : Alphabetical letter assignment by timeframe-ratio-derived period with per-bin letter string accumulation and count tracking
Profile Analytics : Maximum count POC identification, outward value area expansion to configurable percentage threshold, and single print bin classification
Gradient Engine : Three-stop gradient interpolation with letter index normalized to maximum period for chronological color mapping
Single Print System : Array-managed forward-projecting zone boxes with sweep state tracking, reclaim direction testing, and cooldown-gated signal generation
Real-Time Rendering : Last-bar-triggered live profile construction rebuilding on every bar update with independent box and line arrays cleared and redrawn each render cycle
Visualization : Per-letter TPO boxes with gradient, POC, and value area coloring, POC dual-line overlay, value area vertical and horizontal boundary lines, single print zone extensions, and retest signal arrows
Performance Profile : Optimized with calc_bars_count and max_bars_back configuration and array size caps for object management across extended histories
Optimal Application Parameters
Timeframe Guidance:
1 - 5 min : Intraday swing profile mapping with shorter swing length and faster TPO timeframe for responsive participation tracking within intraday structural moves
15 - 60 min : Session-level swing profile analysis with balanced swing length and TPO timeframe producing meaningful letter distributions across typical session swings
4H - Daily : Swing-level structural participation mapping with longer swing detection and higher TPO timeframe for profiles that reflect multi-day directional move participation
Suggested Baseline Configuration:
Swing Length : 12
TPO Timeframe : 30
Box Width : 2
Show POC : Enabled
Show Value Area : Enabled
Value Area % : 70
Gradient Preset : Sunset
Highlight Single Prints : Enabled
Extend Single Prints : Enabled
Show Retest Signals : Enabled
Signal Cooldown : 5
These suggested parameters should be used as a baseline; their effectiveness depends on the instrument's swing frequency, typical swing range, and preferred profile granularity, so fine-tuning is expected for optimal performance.
Parameter Calibration Notes
Use the following adjustments to refine behavior without altering the core logic:
Swings too frequent : Increase Swing Length to require more bars on each side of an extreme before it registers as a confirmed swing point, filtering minor oscillations and producing fewer, more structurally significant profiles.
Swings too infrequent : Decrease Swing Length toward 10 for more sensitive swing detection, producing profiles on smaller structural moves within the overall trend.
Too few letters per profile : Decrease TPO Timeframe to assign letters to shorter time periods, increasing letter density within each swing and producing more granular participation distributions.
Too many letters cluttering the profile : Increase TPO Timeframe so each letter covers a longer period, reducing letter density and producing cleaner, more readable profiles on the target timeframe.
Profile bins too coarse : The bin count derives from the swing range divided by a smoothed ATR-based tick size. On instruments with large typical bar ranges relative to the swing, the profile may appear coarse. Consider using a higher timeframe chart or adjusting swing length to capture larger swings with more granular bin resolution.
Too many single print signals : Increase Signal Cooldown to enforce greater bar separation between consecutive retest signals, or increase Swing Length to produce swings with fewer single print zones through greater overall participation density.
Single print extensions cluttering the chart : Disable Extend Single Prints to remove forward projection boxes while retaining single print highlighting within the historical profile, or reduce Max Zones (capped internally at 50) by allowing older zones to naturally expire as price revisits them.
Adjustments should be incremental and evaluated across multiple session types rather than isolated market conditions.
Performance Characteristics
High Effectiveness:
Trending markets with clear directional swings where each profile captures a single sustained move and produces meaningful POC and value area levels that serve as ongoing structural references
Instruments with sufficient intrabar participation where TPO letter accumulation produces well-distributed profiles with identifiable concentration zones rather than sparse single-print-dominated structures
Market profile-based trading approaches that benefit from swing-anchored rather than session-anchored participation context, aligning profile boundaries with actual structural events
Single print zone strategies where structurally thin levels within completed swings provide anticipatory reference areas for future price reactions with defined signal criteria
Reduced Effectiveness:
Choppy, low-range markets where frequent swing direction changes produce thin profiles with minimal letter accumulation and limited POC or value area differentiation
Extremely fast-moving instruments where swing ranges are so large relative to the TPO timeframe that letters are thinly distributed across a wide range, reducing profile interpretive value
Low-liquidity instruments where participation is insufficient to produce meaningful time-at-price distributions, resulting in profiles dominated by single prints with no identifiable acceptance zones
Markets where the relationship between swing structure and participation distribution is inconsistent, reducing the reliability of POC and value area levels as structural references across successive swings
Very short timeframe charts where the ratio between chart timeframe and TPO timeframe produces insufficient letter differentiation to build interpretable profiles within typical swing durations
Integration Guidelines
Confluence : Combine with BOSWaves structural tools, order flow analysis, or momentum indicators to validate POC and value area reactions with broader analytical context before acting on profile-based reference levels
POC Migration Awareness : Track whether POC levels across successive swings are migrating higher, lower, or remaining stable as a secondary indicator of directional participation bias beyond raw trend direction
Single Print Zone Patience : Allow single print zones to extend and be approached naturally rather than anticipating reactions prematurely. The sweep-and-reclaim or sweep-and-reject sequence that triggers signals requires zone interaction to complete before directional evidence is confirmed.
Gradient Reading : Use gradient distribution within profiles to contextualize POC and value area location. A POC formed late in the gradient sequence suggests late-swing acceptance, potentially indicating exhaustion. An early-forming POC suggests early directional commitment that may carry more structural weight.
Real-Time Profile Monitoring : Treat the live developing profile as probabilistic rather than confirmed. POC and value area locations in the real-time profile will shift as new bars are added and should be interpreted as dynamic rather than fixed until the swing completes and the historical profile is committed.
Disclaimer
Swing Gradient TPOs is a professional-grade swing-anchored market profile and structural participation analysis tool. It uses TPO letter accumulation with gradient chronology encoding and single print zone projection but does not predict future price movements. Results depend on market conditions, instrument participation characteristics, parameter selection, and disciplined execution. BOSWaves recommends deploying this indicator within a broader analytical framework that incorporates momentum context, order flow analysis, and comprehensive risk management. Indicator

Simple MA TPO
Simple MA TPO
■Description
■Concept & Purpose
This indicator was developed with a single core concept: to discover the "true power" and foster a deeper understanding of the Time Price Opportunity (TPO) profile—often considered a super-tool in market analysis. By combining traditional TPO mechanics with market gravity (Moving Averages), this script aims to provide traders with a clearer, more visual representation of value and price deviation over time.
■Originality & How It Works
While traditional TPO profiles use letters (A, B, C...) to denote time periods and static colors for volume/time areas, this script introduces two highly original mechanics to add value to the community:
Sequential Numbering: Instead of letters, each TPO block is numbered sequentially (1, 2, 3...) based on its formation order. This drastically simplifies reading the flow of time within a session.
MA Deviation Gradient Coloring: The most unique feature is its coloring logic. TPO blocks are not colored randomly. Instead, their color is determined by their deviation from a baseline Moving Average (acting as the market's center of gravity).
■Calculations & Output
To ensure complete transparency in how the visual data is generated, here is the specific calculation used for the block colors:
Formula: Deviation % = ((Price / MA) - 1.0) * 100.0
Why this calculation? This calculates the exact percentage distance between the TPO block's price level and the baseline Moving Average at the time that specific block was formed. It visualizes how "overextended" the market was when time was spent at that price.
Actual Output: The output is a percentage float value (e.g., if the MA is $100 and the block price is $102, the output is 2.0 or 2%). This value is then clamped by the user-defined Max Deviation % input (default 2.0%).
Color Mapping: The clamped percentage is fed into a gradient. Negative deviations (undervalued relative to MA) shift towards Cyan, while positive deviations (overvalued) shift towards Magenta.
■How to Use
Identify Value Areas: Look for the "POC" (Point of Control) line, which indicates the price level where the most time (highest number of blocks) was spent.
Assess Reversion Risk: Blocks that are bright Magenta or bright Cyan indicate that time was spent far away from the Moving Average. Traders can use this to visually gauge if a breakout is sustainable or if a mean-reversion is likely.
Customize Your View: You can adjust the TPO timeframes (Daily/Weekly/Monthly), the block interval (e.g., 30 minutes), and choose your preferred MA type (SMA, EMA, WMA, HMA).
Disclaimer: This indicator is designed for educational and analytical purposes. TPO is a tool for understanding market structure and time spent at price levels, not a standalone trading signal generator. Past performance of price around value areas does not guarantee future results.
説明文
コンセプトと開発目的
このインジケーターは「相場分析におけるスーパーツールであるTPO(マーケットプロファイル)の真の力を見出し、深い理解を得る」というコアコンセプトのもとに開発されました。伝統的なTPOの仕組みと相場の重心(移動平均線)を融合させることで、時間の経過に伴う価値の推移と価格の乖離を、より視覚的かつ明確にトレーダーに提供します。
オリジナリティと機能
従来のTPOプロファイルは時間枠をアルファベット(A、B、C...)で表し、静的な色を使用しますが、このスクリプトはコミュニティに新たな付加価値を提供するために2つの独自機能を備えています。
連番表示: アルファベットの代わりに、各TPOブロックは形成された順番に沿って(1、2、3...)と連番で表示されます。これにより、セッション内での時間の流れを直感的に読み取ることが劇的に容易になります。
MA乖離率によるグラデーション着色: 最大の特徴はその着色ロジックです。TPOブロックは、相場の重心として機能する基準移動平均線(MA)からの「乖離率」に基づいて色が決定されます。
計算式と出力値の根拠
視覚データがどのように生成されているかを完全に透明化するため、ブロックの着色に使用されている具体的な計算式を明記します:
計算式: 乖離率(%) = ((価格 / MA) - 1.0) * 100.0
なぜこの計算なのか? この式は、特定のTPOブロックが形成された瞬間において、その価格水準が基準となる移動平均線からパーセンテージでどの程度離れているか(価格がどれほど伸びきっているか)を正確に測定するために使用されます。
実際の出力値: 出力はパーセンテージの浮動小数点数になります(例:MAが100ドルで、ブロックの価格が102ドルの場合、出力は 2.0 つまり2%になります)。この値は、ユーザーが設定した「最大の限界乖離率」(デフォルト2.0%)によって制限されます。
カラーマッピング: 制限されたパーセンテージはグラデーション関数に渡されます。マイナスの乖離(MAに対して割安)はシアン(水色)に近づき、プラスの乖離(割高)はマゼンタ(赤紫)に近づくように色が変化します。
使用方法
バリューエリアの特定: 最も多くの時間(ブロック数)が費やされた価格帯を示す「POC(Point of Control)」ラインを探し、相場の中心的価値を把握します。
平均回帰リスクの評価: 鮮やかなマゼンタやシアンのブロックは、移動平均線から遠く離れた場所で時間が費やされたことを示します。トレーダーはこれを視覚的な基準として、ブレイクアウトが持続可能か、あるいは平均回帰(MAへの戻り)が起こりやすいかを判断できます。
柔軟なカスタマイズ: TPOの期間(日/週/月)、ブロックの区切り(例:30分)、そして好みのMAタイプ(SMA、EMA、WMA、HMA)を自由に変更できます。
免責事項:このインジケーターは教育および分析目的で設計されています。TPOは市場構造と価格帯での滞在時間を理解するためのツールであり、単独の売買シグナルではありません。バリューエリア周辺での過去の価格動向は、将来の結果を保証するものではありません。
Indicator

Pure Matrix Profile [TPO & Link]Pure Matrix Profile
Description:
This indicator is a highly visual, ASCII-based environment recognition tool designed to map market structure, liquidity, and momentum within specific sessions. It is NOT a standalone entry signal generator. Rather, it provides a deep situational awareness of "price wall thickness" (Volume) and "market heat" (RSI) to help traders build robust defensive and offensive strategies.
1. Pine Script Limitations & Memory Management
In Pine Script, there is an absolute limit of 500 historical objects (Boxes, Labels, Lines) per script to prevent system overload, regardless of your account tier (Basic, Pro, Premium).
• Remaining Quota: 0 (This script maximizes the 500 limit for detailed rendering).
• How it works: To bypass this limitation and maintain a beautiful UI without crashing, the script uses a professional garbage collection technique (barstate.islast). It deletes all previous objects and recalculates/redraws the entire matrix exclusively on the most recent bar, ensuring optimal performance within the limits.
2. Core Calculations & Output Values
The visual beauty of this tool is driven by strict mathematical logic.
A. Price Bin Resolution (vp_step)
vp_step = (top_y - bot_y) / row_count
• Why: To divide the session's high-low range into equal tiers to distribute volume accurately.
• Output: A float value representing the price width of a single text row.
B. Binning (Data Assignment)
bin_idx = Math.floor( (c_price - bot_y) / vp_step )
• Why: To determine exactly which vertical "box" (row) the volume belongs to.
C. Volume-Weighted RSI (Heat)
Avg_RSI = Sum(Current_RSI * Volume) / Sum(Volume)
• Why: This reveals the true momentum only where significant institutional money was traded.
D. Histogram Normalization (Bottom-Up Heights)
val = (chunk_vol / max_chunk_vol) * hist_height
• Why: To normalize raw volume into a fixed visual height constraint for the bottom ASCII histogram.
E. ASCII Texture Logic (Wall Hardness)
The "density" of the ASCII character changes dynamically based on the Avg_RSI:
• Overheated (Avg_RSI >= 60): Renders "█" (Full Block). Represents a "Hard Wall" with strong momentum.
• Neutral (Avg_RSI 40.1 - 59.9): Renders "▒" (Medium Shade). Represents stable consolidation.
• Freezing (Avg_RSI <= 40): Renders "░" (Light Shade). Represents a "Soft Wall" with weak momentum.
3. Pros (Merits)
• Visualizing "Hardness": By combining volume depth and RSI texture, you can intuitively differentiate between strong support/resistance zones (Hard Walls) and fragile ones (Soft Walls).
• Risk Management: Helps prevent trading directly into "Hard Walls" or getting trapped in low-liquidity vacuums.
4. Cons (Limitations)
• Not an Entry Strategy: Provides zero edge as a standalone trigger.
• Lagging Nature: Session profiles form after the price has moved.
• Visual Clutter: High row counts on small screens may cause text overlap.
Japanese Description
このインジケーターは、特定のセッション内における市場構造、流動性、モメンタムをマッピングするための、ASCIIベースの視覚的な環境認識ツールです。これは単体でエントリーシグナルを生成するものではありません。トレーダーが堅牢な戦略を構築できるよう、「価格の壁の分厚さ(出来高)」と「相場の熱(RSI)」の状況認識を提供します。
1. 描画制限とメモリ管理について
Pine Scriptには、システム負荷を防ぐため、アカウントランクに関わらず1スクリプトにつき描写オブジェクトの最大上限が「500個」に厳格に設定されています。
・ 現在の残量: 0個(精密な描画のため、この500個の枠を最大限使い切る設定にしています)。
・ 動作の仕組み: 高度なメモリ管理(barstate.islast)を行っています。最新のローソク足でのみ過去のオブジェクトを全削除し、必要な分だけを一気に再計算して描き直すことで、制限枠内で安定稼働させています。
2. コアとなる計算式と出力値の解剖
A. 価格帯をスライスする計算 (VP Step)
vp_step = (top_y - bot_y) / row_count
・ なぜこの計算なのか: セッションの高安値を指定した行数で均等に分割し、1行あたりの価格幅を決定するため。
B. ローソク足の格納先判定 (Binning)
bin_idx = Math.floor( (c_price - bot_y) / vp_step )
・ なぜこの計算なのか: 出来高を正しい価格帯(行)に割り当てるため。
C. 出来高加重RSI(熱量の算出)
Avg_RSI = Sum(Current_RSI * Volume) / Sum(Volume)
・ なぜこの計算なのか: 大口の取引(出来高)が集中した価格帯のモメンタムだけを抽出するため。
D. ボトムヒストグラムの高さ計算 (Normalization)
val = (chunk_vol / max_chunk_vol) * hist_height
・ なぜこの計算なのか: 出来高を、指定した最大の高さ(行数)に正規化して当てはめるため。
E. ASCIIテクスチャ・ロジック(壁の硬度)
Avg_RSIの値に基づいて、描画される文字の密度(硬さ)が3段階で変化します。
・ 加熱帯 (RSI 60以上): 「█」(フルブロック)を描画。モメンタムを伴う「硬い壁」を意味します。
・ 中立帯 (RSI 40.1 - 59.9): 「▒」(ミディアムシェード)を描画。安定した攻防が行われているゾーンです。
・ 冷却帯 (RSI 40以下): 「░」(ライトシェード)を描画。モメンタムが弱まっている「柔らかい壁」を意味します。
3. メリット(優位性)
・ 壁の硬度の視覚化: 出来高の厚みとRSIのテクスチャを組み合わせることで、突破困難な「硬い壁」と、崩れやすい「柔らかい壁」を直感的に判別できます。
・ 無駄な被弾の回避: 強力な壁への無謀な突撃を防ぐための強力な環境認識根拠となります。
4. デメリット(限界と注意点)
・ エントリー戦略にはならない: 本ツール単体ではエントリーの優位性は一切ありません。
・ 遅行指標の性質: プロファイルは価格が動いた「後」に形成されます。
・ 視覚的なノイズ: 低解像度の環境で行数を大きく設定しすぎるとテキストが重なります。 Indicator

Session Volume Profile - Open Source [CantoLab]Volume Profile is a charting study that displays trading activity over specific time periods at various price levels. It appears as a horizontal histogram on the chart, revealing where traders have shown the most interest based on volume concentration.
This Volume Profile automatically anchors to user-selected timeframes, creating fresh volume analysis for each new period while maintaining clean, systematic visualization of price-volume relationships.
Core Components:
Point of Control (POC): The price level with the highest volume activity during the selected period, marked with a yellow line and left-side label.
Value Area High/Low (VAH/VAL): Price boundaries that contain a specified percentage of the total volume (default 40%), helping identify the main trading range where most activity occurred.
Volume Histogram: Left-aligned bars showing volume distribution across price levels, with value area highlighting for enhanced visual clarity.
Key Features:
- Automatic Period Detection: Supports hourly, daily, weekly, and monthly timeframe anchoring
- Customizable Granularity: Adjustable rows (10-500) for different price resolution needs
- Labels: Clear POC, VAH, and VAL identification positioned at profile start
- Toggle Controls**: Optional display for volume rows, key levels, and background fills
- Clean Visualization: Profiles reset automatically at each new period for current market focus
Display Options:
- Profile Rows: Show/hide the volume histogram bars
- Key Level Lines: Individual controls for POC, VAH, and VAL display
- Value Area Background: Optional shading between VAH and VAL levels
- Color Customization: Separate color controls for all visual elements
The indicator provides systematic volume analysis by creating fresh profiles at regular intervals, helping traders identify significant price levels and volume patterns within their preferred timeframe structure.
Disclaimer: This indicator is for educational and informational purposes only. Trading decisions should be based on comprehensive analysis and proper risk management. Past performance does not guarantee future results. Indicator

TPO Single Prints + nPOCThis indicator brings two core Market Profile concepts to PulseWire in a clean, automated way: the Naked Point of Control (nPOC) and Single Prints. Both are calculated from real TPO (Time Price Opportunity) logic using configurable tick sizes, and both are tracked live — updating and removing themselves as price interacts with them.
The indicator supports both daily and weekly timeframes simultaneously, giving you a layered view of unfilled structures across multiple session lengths. Everything is drawn directly on the chart as lines and boxes with fully customizable colors.
Naked Point of Control
The price level with the highest TPO count in a completed session that has not yet been revisited by price. Drawn as a horizontal line extending forward in time until touched.
Single Prints
Price levels within a session's body that were only visited by a single TPO period. These form thin zones representing areas of fast, one-sided movement — can act as magnet for future price action.
Tick-Precise Logic
All calculations are snapped to configurable tick sizes (BTC: $24, ETH: $2, SOL: $0.1, or manual). This ensures the indicator correctly represents the granularity of the underlying asset.
Tick Settings
Tick Preset
Selects a predefined tick size for the asset. BTC = $24, ETH = $2, SOL = $0.10. Choose MANUAL to enter a custom value.
Manual Tick Size
Active only when Tick Preset is set to MANUAL. Defines the price increment for profile row construction. Should match the asset's meaningful price granularity.
Naked POC Settings
Show Daily nPOC
Enables nPOC lines from daily sessions. Each completed day that has not had its POC revisited will show a horizontal line.
Show Weekly nPOC
Same as above but for weekly sessions. Weekly nPOCs tend to be stronger, longer-lasting reference points.
Single Prints Settings
Show Daily SPs
Enables Single Print boxes from daily sessions.
Show Weekly SPs
Enables Single Print boxes from weekly sessions.
Keep Touched SPs
When enabled, fully filled SP zones are not deleted. Instead they are recolored to a faded gray and stop extending, leaving a visual record of where fills occurred.
How traders use this
nPOC as Magnet Levels
Markets statistically tend to revisit past POC levels. Naked POCs are strong candidates for mean-reversion targets, especially when price is trending away from a cluster of unfilled levels.
Single Prints as Impulse Markers
Single prints form during fast, directional moves with little acceptance. When price returns to these zones, it often does so quickly — making them useful for entries in the direction of the original move. Indicator

Indicator

Indicator

Indicator

Indicator

TPO Levels [VAH/POC/VAL] with Poor H/L, Single Prints & NPOCs### 🎯 Advanced Market Profile & Key Level Analysis
This script is a unique and comprehensive technical analysis tool designed to help traders understand market structure, value, and key liquidity levels using the principles of **Auction Market Theory** and **Market Profile**.
This script is unique (and shouldn't be censored) because :
It allows large history of levels to be displayed
Accurate as possible tick size
Doesn't draw a profile but only the actual levels
Supports multi-timeframe levels even on the daily mode giving macro context
There is no indicator out there that does it
While these concepts are universal, this indicator was built primarily for the dynamic, 24/7 nature of the **cryptocurrency market**. It helps you move beyond simple price action to understand *why* the market is moving, which is especially crucial in the volatile crypto space.
### ## 📊 The Concepts Behind the Calculations
To use this script effectively, it's important to understand the core concepts it is built upon. The entire script is self-contained and does not require other indicators.
* **What is Market Profile?**
Market Profile is a unique charting technique that organizes price and time data to reveal market structure. It's built from **Time Price Opportunities (TPOs)**, which are 30-minute periods of market activity. By stacking these TPOs, the script builds a distribution, showing which price levels were most accepted (heavily traded) and which were rejected (lightly traded) during a session.
* **What is the Value Area (VA)?**
The Value Area is the heart of the profile. It represents the price range where **70%** of the session's trading volume occurred. This is considered the "fair value" zone where both buyers and sellers were in general agreement.
* **Point of Control (POC):** The single price level with the most TPOs. This was the most accepted or "fairest" price of the session and acts as a gravitational line for price.
* **Value Area High (VAH):** The upper boundary of the 70% value zone.
* **Value Area Low (VAL):** The lower boundary of the 70% value zone.
VAH and VAL are dynamic support and resistance levels. Trading outside the previous session's value area can signal the start of a new trend.
***
### ## 📈 Key Features Explained
This script automatically calculates and displays the following critical market-generated information:
* **Multi-Timeframe Market Profile**
Automatically draws Daily, Weekly, and Monthly profiles, allowing you to analyze market structure across different time horizons. The script preserves up to 20 historical sessions to provide deep market context.
* **Naked Point of Control (nPOC)**
A "Naked" POC is a Point of Control from a previous session that has **not** been revisited by price. These levels often act as powerful magnets for price, representing areas of unfinished business that the market may seek to retest. The script tracks and displays Daily, Weekly, and Monthly nPOCs until they are touched.
* **Single Prints (Imbalance Zones)**
A Single Print is a price level where only one TPO traded during the session's development. This signifies a rapid, aggressive price move and an imbalanced market. These areas, like gaps in a traditional chart, are frequently revisited as the market seeks to "fill in" these thin parts of the profile.
* **Poor Structure (Unfinished Auctions)**
A **Poor High** or **Poor Low** occurs when the top or bottom of a profile is flat, with two or more TPOs at the extreme price. This suggests that the auction in that direction was weak and inconclusive. These weak structures often signal a high probability that price will eventually break that high or low.
***
### ## 💡 How to Use This Indicator
This tool is not a signal generator but an analytical framework to improve your trading decisions.
1. **Determine Market Context:** Start by asking: Is the current price trading *inside* or *outside* the previous session's Value Area?
* **Inside VA:** The market is in a state of balance or range-bound. Look for trades between the VAH and VAL.
* **Outside VA:** The market is in a state of imbalance and may be starting a trend. Look for continuation or acceptance of prices outside the prior value.
2. **Identify Key Levels:**
* Use historical **nPOCs** as potential profit targets or areas to watch for a price reaction.
* Treat historical **VAH** and **VAL** levels as significant support and resistance zones.
* Note where **Single Prints** are. These are often price magnets that may get "filled" in the future.
3. **Spot Weakness:**
* A **Poor High** suggests weak resistance that may be easily broken.
* A **Poor Low** suggests weak support, signaling a potential for a continued move lower if broken.
***
### ## ⚙️ Customization & Crypto Presets
The indicator is highly customizable, allowing you to change colors, transparency, the number of historical sessions, and more.
To help traders get started quickly, the indicator includes **built-in layout presets** specifically calibrated for major cryptocurrencies: ** BINANCE:BTCUSDT.P , BINANCE:ETHUSDT.P , and BINANCE:SOLUSDT.P **. These presets automatically adjust key visual parameters to better suit the unique price characteristics and volatility of each asset, providing an optimized view right out of the box.
***
### ## ⚠️ Disclaimer
This indicator is a tool for market analysis and should not be interpreted as direct buy or sell signals. It provides information based on historical price action, which does not guarantee future results. Trading involves significant risk, and you should always use proper risk management. This script is designed for use on standard chart types (e.g., Candlesticks, Bar) and may produce misleading information on non-standard charts. Indicator

Indicator

TPO IQ [TradingIQ]Hello Traders!
Introducing "TPO IQ"!
TPO IQ offers a Time Price Opportunity profile with several customization options that packs several related features to help traders navigate the generated profiles!
Features
TPO Profiles
Single Print identification
Initial Balance Identification
Can be anchored to timeframe change
Can be anchored to fixed time interval
Last profile detailed visuals
Customizable value area percentage
POC identification
Mid-point identification
TPO Profiles
A TPO profile is a market profile visualization that details how much time was spent at each price level throughout the time interval.
The image above further explains what a TPO Profile is!
Each letter corresponds to a candlestick. With this information, traders are able to visualize how much time was spent at each price area.
With customizable gradient colors, specifically in this example, blocks colored red are the earliest times in the profile, blocks colored green are in the beginning half of the time midpoint of the profile. Blue blocks represent the first half of the end of the time period, and purple blocks correspond to the end of the time period.
Please note that this form of TPO profile generation will only occur when the most recent profile uses less than 500 alphabet characters! If more than 500 characters are preset, TPO IQ will revert to using labels!
Initial Balance
TPO IQ also identifies the initial balance range and all alphabet characters that form within it!
The image above exemplifies this feature. The initial balance range is denoted by a a neon-blue line, with a blue circle showing the opening price. All characters within the initial balance range are highlighted blue, which is a feature that can be disabled with customizable colors.
POC
TPO IQ also identifies the point of control (POC) of the TPO Profile.
The point of control for the profile is labeled yellow by default, and shows where price spent the most time throughout the time period.
The image above shows the POC for the time period being identified by TPO IQ.
Value Area
TPO IQ also identifies the value area of the profile. A customizable percentage that is 70% by default, the value area of a TPO profile shows where price traded the majority of the time.
The image above further explains this feature. For this example, with the value area percentage being set to 70%, the value area high and value area low show the price zone that prices traded at 70% of the time throughout the profile.
TPO Midpoint
In addition to the POC, the TPO profile midpoint is also identified by TPO IQ.
The TPO midpoint simply corresponds to the middle price between the session's high and low!
Fixed Interval Mode
By default, TPO IQ recalculates every day, but this can also be changed to a customizable session time, such as 4 hours. If 4 hours is selected, then a new TPO profile will be generated every 4 hours.
However, in Fixed Interval mode, a TPO profile will be generated through a user-defined time range, such as 1300-1700.
In the image above, Fixed Interval mode is applied with a time range of 1300-1700 and, consequently, TPO IQ generates a new profile throughout every 1300-1700 time range!
This feature allows traders to specify time ranges of interest to generate TPO profiles for!
TPO Overview Label
The TPO overview label shows key statistics for the TPO profile generated throughout the trading session!
The "TPO Count" statistic shows how many alphabetical letters were generated for the profile, which is an adequate method to determine the session's volatility and price range.
The "Tick Levels" statistic shows how many tick levels were used to create the profile - another method to determine the volatility and price range of the session.
The "Top Letter" statistic shows which letter appears most throughout the profile. In this example, the top letter was "f", which means throughout creation of the profile, the letter "f" appeared the most!
And that's all for now!
If you have any feedback or new feature ideas for TPO IQ please feel free to share them with us!
Thank you traders! Indicator

Order Blocks with Volume Heatmap & Clusters - VK TradingOrder Blocks with Volume Heatmap & Clusters - VK Trading
This script is designed to identify and highlight Order Blocks, a key concept in institutional trading, and combines it with powerful tools like volume heatmaps and accumulation clusters for enhanced market analysis. Suitable for traders of all experience levels, this script provides a clear and customizable visualization to help identify significant market zones effectively.
What Does This Script Do?
Order Block Identification: Highlights bullish and bearish order blocks directly on the chart, making it easier to spot key supply and demand zones.
Volume Heatmap: A dynamic heatmap adjusts colors based on relative volume, allowing you to quickly identify areas of heightened activity.
Institutional Accumulation Clusters: Zones of potential institutional accumulation are calculated using a combination of ATR (Average True Range), standardized volume, and RSI (Relative Strength Index).
Automatic Clearing: Invalidated order blocks are automatically removed, ensuring your charts remain clean and focused.
Key Features
Customizable Sensitivity: Adjust the script’s sensitivity to tailor order block detection to different market conditions and strategies.
Advanced Volume Display Options: Toggle volume visibility on or off. Customize the position, size, and color of volume labels for better integration with your chart's design.
Dynamic Heatmap Intensity: Fine-tune the heatmap’s intensity and color to highlight areas of interest based on trading volume.
Dual Order Block Detection: Uses two independent detection settings to analyze the market from multiple perspectives.
Visual Alerts: Automatically draws key level lines based on detected order blocks for better clarity.
User Benefits:
Clear Market Analysis: Helps pinpoint institutional activity and key levels with minimal effort.
Increased Efficiency: Automates plotting and analysis, allowing you to focus on decision-making.
Versatile Compatibility: Complements strategies like Smart Money Concepts, Wyckoff, and Price Action approaches.
Disclaimer
This script is intended as an analytical and educational tool. It does not guarantee specific outcomes or eliminate trading risks. Use this tool at your own discretion and always practice proper risk management. Indicator

Volume Profile PlusThis indicator provides a high-resolution and high-precision implementation of Volume Profile with flexible range settings. Its key features include:
1. Support for a high resolution of up to 2,500 rows.
2. Capability to examine lower timeframe bars (default 5,000 intra-bars) for enhanced precision.
3. Three range modes — "Visible Range", "Anchored Range", and "All Range".
4. Highlighting of Point of Control and Value Area.
5. Extensive customization options allowing users to configure dimensions, on-chart placements, and color schemes.
🔵 Settings
The settings screen, along with the explanations for each setting, is provided below:
🔵 High Resolution using Polyline
Inspired by @fikira, this indicator utilizes the newly introduced `polyline` type in PineScript to plot the volume profile. It employs a single polyline instance to represent the entire histogram. With each polyline instance supporting up to 10,000 points and each histogram row requiring 4 points, this indicator can accommodate 2500 rows, resulting in a significantly higher resolution compared to conventional volume profile indicators that use `line`s or `box`es to draw the histogram.
🔵 High Precision Data-binning using Lower Timeframe Data
Conventional volume profile indicators often face one or both of the following limitations:
1. They only consider volume within the chart's current timeframe.
2. They assign each bar's total volume to a single price bucket based on the bar's average price, rather than distributing volume across multiple price buckets.
As a result, when the number of bars in the chart is low, those indicators may provide imprecise results, making it difficult to accurately identify significant volume nodes and the point of control.
To address these limitations and enhance accuracy, this indicator examines data from lower timeframes and distributes the volume to fine-grained price buckets. It intelligently selects an appropriate lower timeframe to ensure precise output while complying with a maximum specified number of bars to maintain good performance.
🔵 Three Range Modes
This indicator offers users the flexibility to choose from three range modes:
1. Visible Range (Default Mode): In this mode, the volume profile calculation begins at the time of the left-most bar displayed in the current viewport. As the user scrolls through the viewport, the volume profile updates automatically.
2. Anchored Range: This mode allows the user to set the start time either by using the datetime input boxes or by dragging the anchor line on the chart.
3. All Range: In this mode, the volume profile calculation is based on all the historical bars available in the chart. Indicator

Indicator

Indicator

Indicator

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 (: Indicator
