OPEN-SOURCE SCRIPT
TPO State Reader (TPO-STATE)

TPO State Reader doesn't draw a volume profile — it reads one. It is meant to sit on top of the built-in Volume Profile or any TPO script and turn the distribution into a few plain answers.
What it shows
Value Area (VAH / VPOC / VAL) — a rolling composite, built by spreading each bar's volume across its high-low range and expanding out from the POC until 70% of volume is covered.
Naked POC — daily POCs that price has never traded back through. Treat them as targets, not entries.
LVN vacuum zones — consecutive price bins with volume below 35% of the mean. Price tends to move quickly through these, so a vacuum right outside the value area means a breakout has little to slow it down.
POC drift — compares the last three daily POCs: Flat (balanced), Rising (buyers) or Falling (sellers).
Day range — the current UTC day's range as a percentage of the daily ATR. Below 50% means compressed; above 150% means the day's move is probably done.
How to read it
Check the table. Inside VA means range conditions; above or below VA means trend conditions.
Treat VAH and VAL as places where conditions change, not as support and resistance. Go by closes, not wicks.
Look beyond the edge. A vacuum means price can move quickly; a naked POC shows where it may head.
Settings
Everything is automatic by default. The lookback adjusts to the timeframe (4H = 96 bars, 1H = 192, 15m = 288), and bin size is the actual price range ÷ 40, so you don't need to change anything when you switch symbols. Every setting can still be overridden by hand.
Alerts: Close above VAH, Close below VAL, VPOC cross.
Notes: The table and lines are recalculated on the latest bar, so this is a live reading, not a history of signals. VPOC is less precise on higher timeframes. Drop to 1H if you need an exact level. Structure only: it gives no buy or sell signals.
Works on 5m to 1D; not intended for weekly or monthly charts, where daily calculations break down. The table and lines are recalculated on the latest bar, so this is a live reading, not a history of signals. On higher timeframes the VPOC is approximate — compare against 1H for a precise level. Structure only: it gives no buy or sell signals.
What it shows
Value Area (VAH / VPOC / VAL) — a rolling composite, built by spreading each bar's volume across its high-low range and expanding out from the POC until 70% of volume is covered.
Naked POC — daily POCs that price has never traded back through. Treat them as targets, not entries.
LVN vacuum zones — consecutive price bins with volume below 35% of the mean. Price tends to move quickly through these, so a vacuum right outside the value area means a breakout has little to slow it down.
POC drift — compares the last three daily POCs: Flat (balanced), Rising (buyers) or Falling (sellers).
Day range — the current UTC day's range as a percentage of the daily ATR. Below 50% means compressed; above 150% means the day's move is probably done.
How to read it
Check the table. Inside VA means range conditions; above or below VA means trend conditions.
Treat VAH and VAL as places where conditions change, not as support and resistance. Go by closes, not wicks.
Look beyond the edge. A vacuum means price can move quickly; a naked POC shows where it may head.
Settings
Everything is automatic by default. The lookback adjusts to the timeframe (4H = 96 bars, 1H = 192, 15m = 288), and bin size is the actual price range ÷ 40, so you don't need to change anything when you switch symbols. Every setting can still be overridden by hand.
Alerts: Close above VAH, Close below VAL, VPOC cross.
Notes: The table and lines are recalculated on the latest bar, so this is a live reading, not a history of signals. VPOC is less precise on higher timeframes. Drop to 1H if you need an exact level. Structure only: it gives no buy or sell signals.
Works on 5m to 1D; not intended for weekly or monthly charts, where daily calculations break down. The table and lines are recalculated on the latest bar, so this is a live reading, not a history of signals. On higher timeframes the VPOC is approximate — compare against 1H for a precise level. Structure only: it gives no buy or sell signals.
Mã nguồn mở
Theo đúng tinh thần TradingView, tác giả của tập lệnh này đã công bố nó dưới dạng mã nguồn mở, để các nhà giao dịch có thể xem xét và xác minh chức năng. Chúc mừng tác giả! Mặc dù bạn có thể sử dụng miễn phí, hãy nhớ rằng việc công bố lại mã phải tuân theo Nội quy.
Thông báo miễn trừ trách nhiệm
Thông tin và các ấn phẩm này không nhằm mục đích, và không cấu thành, lời khuyên hoặc khuyến nghị về tài chính, đầu tư, giao dịch hay các loại khác do TradingView cung cấp hoặc xác nhận. Đọc thêm tại Điều khoản Sử dụng.
Mã nguồn mở
Theo đúng tinh thần TradingView, tác giả của tập lệnh này đã công bố nó dưới dạng mã nguồn mở, để các nhà giao dịch có thể xem xét và xác minh chức năng. Chúc mừng tác giả! Mặc dù bạn có thể sử dụng miễn phí, hãy nhớ rằng việc công bố lại mã phải tuân theo Nội quy.
Thông báo miễn trừ trách nhiệm
Thông tin và các ấn phẩm này không nhằm mục đích, và không cấu thành, lời khuyên hoặc khuyến nghị về tài chính, đầu tư, giao dịch hay các loại khác do TradingView cung cấp hoặc xác nhận. Đọc thêm tại Điều khoản Sử dụng.