Clean CPR v2.0

Author: jsm
// modified from "CPR (Central Pivot Range)" script by ajithcpas and Simple CPR by finallynitin
1. Overview
Clean CPR v2.0 is an intraday + swing CPR toolkit designed to keep the chart visually clean while still giving a full “context dashboard” on the right side.
The script combines:
- Classic / Fibonacci / Camarilla CPR with multi-timeframe options
- Previous-session CPR & zones
- Developing CPR + Dev R1 / Dev S1
- Initial Balance & custom session ranges
- A sentiment dashboard (Monthly / Weekly / Daily CPR)
- CPR width & CPR-type classification with emojis
- A >21-EMA “status pill”
- Optional Moving Averages and a Day-Open Anchored VWAP
2. Main CPR Engine
- What it plots (depending on your inputs):
- Central Pivot Range (CPR): BC, TC, PP
- Pivot SR levels (R1–R5 / S1–S5)
- Choice of Traditional, Fibonacci, Classic, Camarilla formulas
- Ability to hide CPR-based SR (for a very clean look)
- Multi-timeframe CPR source (Daily, Weekly, Monthly, Quarterly, Half-yearly, Yearly, or Auto)
Extras:
- Historical SR pivots (optional)
- Adjustable number of CPRs to look back
- Label side (Left / Right) and line width controls
3. Previous Session Structure
- Optional plotting of the previous session’s structure:
- Previous High / Previous Low
- Previous CPR (PH / PL zones)
- Shaded zones between: PH ↔ R1, PL ↔ S1
- Clean labels with prices on the right, aligned to the current day
This gives a quick view of “yesterday’s battle zone” relative to today’s price.
4. Developing CPR & Dev R1 / Dev S1
- For intraday traders, the script includes a Developing CPR module:
- Dev CPR band for the current session
- Optional Dev R1 and Dev S1 levels
Implementation details:
- Only the latest Dev CPR / Dev R1 / Dev S1 labels are kept on screen – old labels are cleaned up so you don’t get a vertical stack as time moves.
- Option to extend developing CPR lines further into the session.
5. Initial Balance (IB) & Custom Ranges
The script can show:
- Initial Balance high/low (first X minutes)
- IB extension lines and range
- Additional user-defined custom session windows
This is useful for breakout / range traders around the opening range.
6. >21 EMA Status Box
On the right side you can enable a compact >21EMA info box:
- Uses Daily 21 EMA (requested via security() so it’s consistent across intraday timeframes).
- A dot + label show the relationship between close and 21 EMA:
7. Dashboard – Monthly / Weekly / Daily CPR Context
A compact dashboard table appears on the right (position & size configurable).
7.1 Location vs CPR (M / W / D)
For each timeframe:
It classifies the close as Above / Inside / Below its CPR band.
7.2 Sentiment Header – “Trust the Bulls / Bears / Patience”
The dashboard header follows Daily CPR location:
- If Daily is above its CPR → header: “Trust the Bulls” (green background)
- If Daily is below its CPR → header: “Trust the Bears” (red background)
- If Daily is inside its CPR → header: “Have Patience” (neutral grey)
8. CPR Width & CPR Type (with Emojis)
8.1 CPR Width – Daily
Daily CPR width (% of price) is classified as:
- 🎯 Super Narrow
- 📏 Narrow
- ➖ Medium
- 📐 Wide
Useful for identifying potential trend / expansion days vs balanced sessions.
8.2 CPR Type – 3-day Structure
Based on the last three daily CPRs, the script categorises CPR structure as:
- Ascending – 3-day rising CPR
- Descending – 3-day falling CPR
- Inside – today’s CPR within yesterday’s
- Outside – today’s CPR outside yesterday’s
- Asc Rev – bullish reversal pattern
- Desc Rev – bearish reversal pattern
- Overlapping – messy / overlapping CPRs
9. Moving Averages (MA 1–5)
Optional Moving Average panel Up to 5 MAs, each configurable:
Type: SMA, EMA, SMMA (RMA), WMA, VWMA
10. Day-Open Anchored VWAP
Optional Day-Open VWAP module. Resets VWAP at each new trading day’s open.
This is helpful for intraday mean-reversion and VWAP-based trade locations.
11. Recommended Use & Notes
- Best used on indices and liquid futures where CPR, previous session zones and VWAP have strong interaction.
- Works on any timeframe; for the full effect, try intraday charts (3-15 min) with:
- Dashboard enabled
- Daily CPR as the base
- Dev CPR + Day-Open VWAP for intraday structure
- 21EMA box and one or two MAs for trend confirmation.
Disclaimer:
This script is for educational and informational purposes only. It does not constitute financial advice or a recommendation to buy or sell any security. Always test on paper / demo and combine with your own analysis and risk management.
Skrypt tylko na zaproszenie
Dostęp do tego skryptu mają wyłącznie użytkownicy zatwierdzeni przez autora. Aby z niego korzystać, należy poprosić o zgodę i ją uzyskać. Zgoda jest zazwyczaj udzielana po dokonaniu płatności. Więcej informacji można znaleźć w instrukcjach autora poniżej lub kontaktując się bezpośrednio z jigz11.
TradingView NIE zaleca płacenia za skrypt ani korzystania z niego, jeśli nie ma pełnego zaufania do jego autora i nie rozumie się zasad jego działania. Można również znaleźć darmowe, otwartoźródłowe alternatywy w skryptach społeczności.
Instrukcje autora
Wyłączenie odpowiedzialności
Skrypt tylko na zaproszenie
Dostęp do tego skryptu mają wyłącznie użytkownicy zatwierdzeni przez autora. Aby z niego korzystać, należy poprosić o zgodę i ją uzyskać. Zgoda jest zazwyczaj udzielana po dokonaniu płatności. Więcej informacji można znaleźć w instrukcjach autora poniżej lub kontaktując się bezpośrednio z jigz11.
TradingView NIE zaleca płacenia za skrypt ani korzystania z niego, jeśli nie ma pełnego zaufania do jego autora i nie rozumie się zasad jego działania. Można również znaleźć darmowe, otwartoźródłowe alternatywy w skryptach społeczności.