OPEN-SOURCE SCRIPT
Stocks: QQQ Daily ATR% + Premarket Range (% of ATR)

## Stocks/ETFs: QQQ Premarket Range (% of Daily ATR) — ORB Trading Guide
### What this indicator does
This indicator is built for **stocks and ETFs** like **QQQ** and is meant to support **Opening Range Breakout (ORB)** trading.
It measures the **Premarket Range** from **04:00 to 09:30** (exchange time), then compares that move to QQQ’s **typical full-day movement** using **Daily ATR(14)**.
The goal is simple:
> **Before the open, decide whether the day is more likely to behave like a “chop day” or an “expansion day,” and then choose the ORB style that matches.**
---
## Key terms (plain English)
### Daily ATR(14)
ATR stands for **Average True Range**.
On the **daily** timeframe, ATR(14) estimates QQQ’s **typical daily movement** over the last 14 trading days.
Think of it as:
> “On a normal day, QQQ tends to move about *X* dollars.”
---
### ATR% (vs Daily Close)
This converts ATR into a percent of price so you can compare volatility over time:
[
ATR% = \frac{\text{Daily ATR}}{\text{Daily Close}} \times 100
]
Think of it as:
> “QQQ’s typical daily move is about *X%* of its price.”
---
### Premarket Range (04:00–09:30)
This is the distance between the **premarket high** and **premarket low** during the session window:
**04:00 → 09:30**
Think of it as:
> “How much QQQ already moved before the bell.”
---
### Premarket Range % of ATR
This is the core measurement:
[
\text{PM Range % of ATR} = \frac{\text{Premarket Range}}{\text{Daily ATR}} \times 100
]
It answers:
> “How much of a normal day’s movement already happened before the open?”
Examples:
* **20%** = quiet premarket (small move)
* **60%** = active premarket (big move already happened)
---
## How to interpret the Regime label
This script classifies the day into one of three “regimes”:
### **CHOP-LEANING** (Premarket Range < 25% of Daily ATR)
Premarket was quiet. The open is more likely to be:
* range-bound
* full of fakeouts
* slower follow-through
### **NEUTRAL** (25%–50%)
Normal premarket activity. Either outcome is possible:
* trend or chop
* you must let the open confirm it
### **EXPANSION-LEANING** (Premarket Range > 50%)
Premarket was very active. The open is more likely to:
* move faster
* expand range quickly
* have stronger directional pushes (or sharp swings)
**Important:** Expansion does not guarantee a clean trend. It means **movement is more likely**.
---
# How I use this indicator with ORB (my rules)
This indicator is not a buy/sell signal by itself.
I use it to decide **which ORB style to trade**.
## Step 1 — Check the “Regime” before the open
* If the indicator reads **EXPANSION-LEANING**, I treat it like a momentum environment.
* If the indicator reads **CHOP-LEANING**, I treat it like a confirmation environment.
* If it reads **NEUTRAL**, I stay selective and let price action confirm.
---
## Step 2 — ORB Execution Rules
### ✅ If **EXPANSION-LEANING** (momentum day)
**Goal:** Catch the move early and avoid missing the breakout.
**My ORB plan:**
* Build my opening range using the **5-minute ORB**
* Enter on a **break of the ORB level**
* Use the **1-minute timeframe** for the actual entry trigger
**How I confirm the break:**
* I want a clean break through the ORB level (not just a wick touch)
* If price snaps immediately back inside the ORB, I avoid chasing
This approach fits expansion days because QQQ can move fast after the open and waiting for perfect retests can cause you to miss the push.
---
### ✅ If **CHOP-LEANING** (confirmation day)
**Goal:** Avoid fakeouts and only enter when the break proves itself.
**My ORB plan:**
* Build my opening range using a **15-minute ORB**
* I do **not** enter on the first break
* I wait for a **break and retest**
* Then I use the **5-minute timeframe** to confirm the retest holds before entry
This fits chop days because breaks fail more often, so I require confirmation before committing.
---
### ✅ If **NEUTRAL**
**Goal:** Reduce low-quality trades.
**My ORB plan:**
* Treat it as “wait and see”
* Only take the break if price shows strong conviction (hold outside ORB)
* If price is whipping in and out of the range, I skip the trade
---
## Best practices
* Works best on **1m / 5m / 15m charts** so the premarket high/low is captured accurately.
* Premarket session time uses the symbol’s **exchange time**.
* Use proper risk management—QQQ can move fast, especially on expansion days.
---
## Disclaimer
This script is for educational purposes only and is not financial advice. Trading involves risk. Always use risk management and test any approach before trading live.
### What this indicator does
This indicator is built for **stocks and ETFs** like **QQQ** and is meant to support **Opening Range Breakout (ORB)** trading.
It measures the **Premarket Range** from **04:00 to 09:30** (exchange time), then compares that move to QQQ’s **typical full-day movement** using **Daily ATR(14)**.
The goal is simple:
> **Before the open, decide whether the day is more likely to behave like a “chop day” or an “expansion day,” and then choose the ORB style that matches.**
---
## Key terms (plain English)
### Daily ATR(14)
ATR stands for **Average True Range**.
On the **daily** timeframe, ATR(14) estimates QQQ’s **typical daily movement** over the last 14 trading days.
Think of it as:
> “On a normal day, QQQ tends to move about *X* dollars.”
---
### ATR% (vs Daily Close)
This converts ATR into a percent of price so you can compare volatility over time:
[
ATR% = \frac{\text{Daily ATR}}{\text{Daily Close}} \times 100
]
Think of it as:
> “QQQ’s typical daily move is about *X%* of its price.”
---
### Premarket Range (04:00–09:30)
This is the distance between the **premarket high** and **premarket low** during the session window:
**04:00 → 09:30**
Think of it as:
> “How much QQQ already moved before the bell.”
---
### Premarket Range % of ATR
This is the core measurement:
[
\text{PM Range % of ATR} = \frac{\text{Premarket Range}}{\text{Daily ATR}} \times 100
]
It answers:
> “How much of a normal day’s movement already happened before the open?”
Examples:
* **20%** = quiet premarket (small move)
* **60%** = active premarket (big move already happened)
---
## How to interpret the Regime label
This script classifies the day into one of three “regimes”:
### **CHOP-LEANING** (Premarket Range < 25% of Daily ATR)
Premarket was quiet. The open is more likely to be:
* range-bound
* full of fakeouts
* slower follow-through
### **NEUTRAL** (25%–50%)
Normal premarket activity. Either outcome is possible:
* trend or chop
* you must let the open confirm it
### **EXPANSION-LEANING** (Premarket Range > 50%)
Premarket was very active. The open is more likely to:
* move faster
* expand range quickly
* have stronger directional pushes (or sharp swings)
**Important:** Expansion does not guarantee a clean trend. It means **movement is more likely**.
---
# How I use this indicator with ORB (my rules)
This indicator is not a buy/sell signal by itself.
I use it to decide **which ORB style to trade**.
## Step 1 — Check the “Regime” before the open
* If the indicator reads **EXPANSION-LEANING**, I treat it like a momentum environment.
* If the indicator reads **CHOP-LEANING**, I treat it like a confirmation environment.
* If it reads **NEUTRAL**, I stay selective and let price action confirm.
---
## Step 2 — ORB Execution Rules
### ✅ If **EXPANSION-LEANING** (momentum day)
**Goal:** Catch the move early and avoid missing the breakout.
**My ORB plan:**
* Build my opening range using the **5-minute ORB**
* Enter on a **break of the ORB level**
* Use the **1-minute timeframe** for the actual entry trigger
**How I confirm the break:**
* I want a clean break through the ORB level (not just a wick touch)
* If price snaps immediately back inside the ORB, I avoid chasing
This approach fits expansion days because QQQ can move fast after the open and waiting for perfect retests can cause you to miss the push.
---
### ✅ If **CHOP-LEANING** (confirmation day)
**Goal:** Avoid fakeouts and only enter when the break proves itself.
**My ORB plan:**
* Build my opening range using a **15-minute ORB**
* I do **not** enter on the first break
* I wait for a **break and retest**
* Then I use the **5-minute timeframe** to confirm the retest holds before entry
This fits chop days because breaks fail more often, so I require confirmation before committing.
---
### ✅ If **NEUTRAL**
**Goal:** Reduce low-quality trades.
**My ORB plan:**
* Treat it as “wait and see”
* Only take the break if price shows strong conviction (hold outside ORB)
* If price is whipping in and out of the range, I skip the trade
---
## Best practices
* Works best on **1m / 5m / 15m charts** so the premarket high/low is captured accurately.
* Premarket session time uses the symbol’s **exchange time**.
* Use proper risk management—QQQ can move fast, especially on expansion days.
---
## Disclaimer
This script is for educational purposes only and is not financial advice. Trading involves risk. Always use risk management and test any approach before trading live.
오픈 소스 스크립트
트레이딩뷰의 진정한 정신에 따라, 이 스크립트의 작성자는 이를 오픈소스로 공개하여 트레이더들이 기능을 검토하고 검증할 수 있도록 했습니다. 작성자에게 찬사를 보냅니다! 이 코드는 무료로 사용할 수 있지만, 코드를 재게시하는 경우 하우스 룰이 적용된다는 점을 기억하세요.
면책사항
해당 정보와 게시물은 금융, 투자, 트레이딩 또는 기타 유형의 조언이나 권장 사항으로 간주되지 않으며, 트레이딩뷰에서 제공하거나 보증하는 것이 아닙니다. 자세한 내용은 이용 약관을 참조하세요.
오픈 소스 스크립트
트레이딩뷰의 진정한 정신에 따라, 이 스크립트의 작성자는 이를 오픈소스로 공개하여 트레이더들이 기능을 검토하고 검증할 수 있도록 했습니다. 작성자에게 찬사를 보냅니다! 이 코드는 무료로 사용할 수 있지만, 코드를 재게시하는 경우 하우스 룰이 적용된다는 점을 기억하세요.
면책사항
해당 정보와 게시물은 금융, 투자, 트레이딩 또는 기타 유형의 조언이나 권장 사항으로 간주되지 않으며, 트레이딩뷰에서 제공하거나 보증하는 것이 아닙니다. 자세한 내용은 이용 약관을 참조하세요.