A simple regime tag by 10:15 ET: range day or trend day, from features I can see
Posted: Wed Sep 30, 2026 10:18 pm
I don't use a model to predict the day. But I do like a consistent tag by 10:15 ET, range-ish or trend-ish, built from a few features I could check by hand. The value is consistency. My mood used to decide the tag, and that isn't a feature.
## Features (all measured at 10:15 ET)
1. Opening range width: 09:30–09:45 ET high minus low, compared with the name's own recent opening ranges. I use the median of the last 10 sessions as a reference and don't claim any universal threshold.
2. Price position: is the 10:15 price outside the opening range, and by how much, as a fraction of the range width?
3. VWAP crosses: how many times price has crossed VWAP since 09:30.
4. SPY agreement: is SPY outside its own opening range in the same direction?
## The tag
- TREND-ISH: price outside the opening range by at least half its width, 0–1 VWAP crosses, and SPY agrees.
- RANGE-ISH: price inside the opening range and 3+ VWAP crosses.
- UNCLEAR: anything else. That's a real answer, and I allow it.
The tag chooses which playbook page I use: trend pullbacks, range fades at the edges, or nothing new until the tag changes.
## Worked example (illustrative)
QQQ-like ETF. The opening range from 09:30 to 09:45 is 380.20–381.00, 80 cents wide. At 10:15 ET the price is 381.55, 55 cents above the range and more than half its width. It has crossed VWAP once, and SPY is above its range too. Tag: TREND-ISH.
At 10:22 ET it pulls back to 381.18, near VWAP, and holds. I buy 100 at 381.24 with a stop at 381.05, 19 cents. It reaches 381.60 at 10:35 ET, and I sell half at 381.58 for 34 cents and trail the rest to 381.40 at 10:41 ET for 16 cents.
## Failure modes
- Adding features until the tag agrees with what I wanted.
- Treating the tag as a forecast. It describes the first 45 minutes and doesn't tell me what comes next.
- Changing the thresholds after a bad day instead of on a scheduled review.
## When to skip
- UNCLEAR means no new setups until 10:45 ET, when I re-tag.
- On news-driven days such as FOMC, I don't tag at all. The afternoon event dominates.
- If my feature data is missing (feed issue), I don't guess. The tag is UNCLEAR.
Diagram: four small feature boxes feeding a decision diamond that outputs TREND-ISH, RANGE-ISH or UNCLEAR, each pointing to its own playbook page.
## Features (all measured at 10:15 ET)
1. Opening range width: 09:30–09:45 ET high minus low, compared with the name's own recent opening ranges. I use the median of the last 10 sessions as a reference and don't claim any universal threshold.
2. Price position: is the 10:15 price outside the opening range, and by how much, as a fraction of the range width?
3. VWAP crosses: how many times price has crossed VWAP since 09:30.
4. SPY agreement: is SPY outside its own opening range in the same direction?
## The tag
- TREND-ISH: price outside the opening range by at least half its width, 0–1 VWAP crosses, and SPY agrees.
- RANGE-ISH: price inside the opening range and 3+ VWAP crosses.
- UNCLEAR: anything else. That's a real answer, and I allow it.
The tag chooses which playbook page I use: trend pullbacks, range fades at the edges, or nothing new until the tag changes.
## Worked example (illustrative)
QQQ-like ETF. The opening range from 09:30 to 09:45 is 380.20–381.00, 80 cents wide. At 10:15 ET the price is 381.55, 55 cents above the range and more than half its width. It has crossed VWAP once, and SPY is above its range too. Tag: TREND-ISH.
At 10:22 ET it pulls back to 381.18, near VWAP, and holds. I buy 100 at 381.24 with a stop at 381.05, 19 cents. It reaches 381.60 at 10:35 ET, and I sell half at 381.58 for 34 cents and trail the rest to 381.40 at 10:41 ET for 16 cents.
## Failure modes
- Adding features until the tag agrees with what I wanted.
- Treating the tag as a forecast. It describes the first 45 minutes and doesn't tell me what comes next.
- Changing the thresholds after a bad day instead of on a scheduled review.
## When to skip
- UNCLEAR means no new setups until 10:45 ET, when I re-tag.
- On news-driven days such as FOMC, I don't tag at all. The afternoon event dominates.
- If my feature data is missing (feed issue), I don't guess. The tag is UNCLEAR.
Diagram: four small feature boxes feeding a decision diamond that outputs TREND-ISH, RANGE-ISH or UNCLEAR, each pointing to its own playbook page.