Market regime STRESS
VIX9D/VIX 1.054 > 1 (front-end inversion) — risk per trade today: 0.25%
| Index | Close | % Chg | Gap | Range pos | RelVol | 20d MA | 50d MA | RV20 | Trend |
|---|---|---|---|---|---|---|---|---|---|
| SPY | 754.35 | +0.30% | +0.08% | 42% | 0.80 | 768.09 | 767.04 | 11.2% | mixed, below 50d |
| QQQ | 685.28 | +0.62% | +0.48% | 38% | 0.85 | 720.71 | 723.93 | 22.7% | downtrend (below 20d < 50d) |
| SMH | 518.52 | +2.01% | +2.43% | 33% | 0.90 | 557.92 | 571.01 | 45.1% | downtrend (below 20d < 50d) |
Reading this panel
Realized vs implied: SPY has actually moved 11.18% annualized over 20 days while options price 20.83%. Implied well above realized — options price more fear than the tape has shown.
Term structure: Short-dated vol is above 30-day vol (inverted) — near-term event/stress risk. VIX/VIX3M 0.979: mild contango (normal).
Session rules
- No new entries: 9:30–10:00 ET (let the opening range form)
- Risk per trade: 0.25% of equity (halve to 0.125% if VIX > 22)
- Stop: 1 × ATR(14) from entry
- Target: 2 × ATR(14) from entry
- Time stop: Exit if not working after 60 minutes
- Max concurrent positions: 3 (and no more than 1 per correlated sector cluster)
- Daily loss limit: −1% of equity → stop trading for the day
- Flat by: 3:55 PM ET — no overnight holds
- Suspended: short momentum: Suspended from live trading — watchlist/research only. The historical replay of this screen lost money net of costs (see Scorecard); the opposite trade is not validated either.
Quant regime model: score -55.0 risk-off · trend choppy
What do these terms mean?
- Realized vs implied volatility
- Realized vol (RV20) is how much SPY actually moved over the last 20 sessions, annualized. Implied vol (VIX) is what S&P 500 options are pricing for the next 30 days. When VIX sits well above realized vol (a positive "volatility risk premium"), options are pricing more fear than the market has shown — typical in calm, grinding tapes. When realized catches up to or exceeds implied, the market is moving more than expected and intraday ranges widen.
- Term structure (VIX9D / VIX / VIX3M)
- Compares implied vol across horizons: 9-day, 30-day and 3-month. Normally short-dated vol is cheaper (contango: VIX9D/VIX < 1 and VIX/VIX3M < 1). When near-term vol rises above longer-term vol (backwardation, ratio > 1), traders are paying up for immediate protection — a stress signal. This engine labels the regime "stress" whenever VIX9D > VIX.
- VVIX
- The volatility of VIX itself (implied from VIX options). Readings above ~110–120 mean the market expects large swings in fear, which often precede sharp moves.
- VWAP / TWAP
- VWAP (volume-weighted average price) is the average price paid during the session, weighting each 5-minute bar by its volume. Institutions benchmark execution to it, so price above VWAP means buyers have been in control on average; below means sellers. TWAP (time-weighted average price) weights every interval equally regardless of volume — used for executing an order evenly through time. A stock holding above VWAP into the close is a classic momentum confirmation.
- Opening range (OR)
- The high and low of the first 30 minutes (9:30–10:00 ET). A close above the OR high or below the OR low shows the day trended out of its initial balance. Rules here forbid new entries during that window so the range can form.
- Order-flow imbalance
- The difference between aggressive buying (trades lifting the offer) and aggressive selling (hitting the bid). Persistent imbalance moves price. This engine has no tick/quote data, so it uses proxies: relative volume, close location in the range, and close vs VWAP. True order-flow imbalance needs Level 1/Level 2 or trade-and-quote data.
- Relative volume (RelVol)
- Today’s volume divided by the 20-day average. >1.5 means unusual participation (news, flows); momentum signals require it. Mean-reversion signals require 0.7–1.5 — a big move on ordinary volume is more likely to be noise that fades.
- Beta and residual returns
- Beta (β60) measures how much a stock typically moves per 1% SPY move, estimated over the prior 60 sessions. The residual (beta-neutral) return is the stock’s return minus β × SPY’s return — the part not explained by the market. Residual z divides it by the stock’s usual residual noise, so +3 means an idiosyncratic move three times larger than normal. Trading residuals isolates stock-specific information rather than just levered market exposure.
- 1-day z-score
- Today’s return divided by the standard deviation of the last 20 daily returns. |z| > 2 is a roughly 1-in-20 move; combined with ordinary volume it is the mean-reversion trigger.
- ATR (Average True Range)
- Average of the true range (high–low, including gaps from the prior close) over 14 days. Used for sizing: stop = 1 ATR, target = 2 ATR. The liquidity filter keeps ATR between 2% and 8% of price — enough movement to trade, not so much that stops get blown through.
- Alpha decay
- Signals lose predictive power as time passes and as others trade them. Intraday momentum edges typically decay within minutes to hours, which is why this playbook uses a 60-minute time stop and requires being flat by 3:55 ET. A premarket list built on yesterday’s data is a watchlist, not a trigger — confirm with live price action.
- Liquidity-adjusted Sharpe
- Sharpe ratio is return divided by volatility. A liquidity-adjusted version subtracts realistic trading costs — spread, slippage, market impact (which grows with order size relative to volume) — before computing it. A strategy that looks great on paper in thin names often has a much lower Sharpe after costs; the $500M ADV filter exists to keep costs small.
- Gap risk
- The risk that price jumps past your stop between sessions (earnings, news, macro data) so the realized loss exceeds the planned 1 ATR. Day trading that is flat by the close avoids overnight gap risk. Gap % shows how far a stock opened from the prior close; "Ext. gap" shows the latest pre/post-market print.
- Regime label
- Calm: VIX < 15. Transitional: VIX 15–22. Stress: VIX > 22 or VIX9D > VIX. In stress, risk per trade is halved (0.125%), ranges are wider, and momentum reversals are more violent. Unvalidated: the post-close run could not get final VIX/VIX9D/VIX3M prints (Cboe settles at 4:15 PM ET) even after a retry, so no label is called from stale data; risk defaults to the halved 0.125% until a run on final prints.
Long momentum
RelVol > 1.5, residual return > 0, close in top 30% of day range, close above VWAP. Liquidity filter applied: price > $10, 20d ADV > $500M, ATR% 2–8%.
Correlated clusters Healthcare: CVS, REGN · Software: ORCL, TEAM, DDOG — treat each cluster as one bet.
| Ticker | Side | Sector | Cluster | Close | % Chg | Gap | Ext. gap | RelVol | Range pos | Resid z | 1d z | vs VWAP | vs OR | ATR% | ATR $ | β60 | 5d mom | Earnings | ρ cluster |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| CVS | LONG | Healthcare | Healthcare ×2 | 91.41 | +3.28% | -0.09% | — | 2.36 | 87.5% | 2.12 | 2.13 | +1.05% | above | 2.4% | 2.17 | -0.24 | +0.31% | — | — |
| ORCL | LONG | Software | Software ×3 | 126.19 | +5.85% | +2.33% | — | 2.44 | 71.3% | 1.65 | 1.21 | +1.08% | above | 6.3% | 7.94 | 3.65 | -3.32% | 12-14 AMC | 1 |
| ANET | LONG | Hardware | — | 169.91 | +3.52% | +0.89% | — | 1.79 | 71.3% | 1.04 | 0.93 | +0.40% | inside | 5.6% | 9.54 | 2.87 | -9.14% | — | 1 |
| REGN | LONG | Healthcare | Healthcare ×2 | 973.36 | +1.26% | -0.52% | — | 1.51 | 90.5% | 0.60 | 0.39 | +0.35% | above | 3.0% | 28.98 | -0.65 | +19.27% | 01-28 BMO | — |
| TEAM | LONG | Software | Software ×3 | 191.05 | +2.12% | -2.49% | — | 1.52 | 99.2% | 0.46 | 0.64 | +2.00% | above | 5.7% | 10.94 | 2.10 | -12.93% | 02-04 AMC | 19 |
| DDOG | LONG | Software | Software ×3 | 220.52 | +2.05% | -1.43% | — | 2.28 | 82.1% | 0.28 | 0.41 | +0.50% | inside | 8.0% | 17.63 | 3.48 | -21.47% | — | 7 |
Short momentum (suspended)
RelVol > 1.5, residual return < 0, close in bottom 30% of day range, close below VWAP. Liquidity filter applied: price > $10, 20d ADV > $500M, ATR% 2–8%.
Suspended Suspended from live trading — watchlist/research only. The historical replay of this screen lost money net of costs (see Scorecard); the opposite trade is not validated either.
Correlated clusters Healthcare: VRTX, PFE — treat each cluster as one bet.
| Ticker | Side | Sector | Cluster | Close | % Chg | Gap | Ext. gap | RelVol | Range pos | Resid z | 1d z | vs VWAP | vs OR | ATR% | ATR $ | β60 | 5d mom | Earnings | ρ cluster |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| VRTX | SHORT | Healthcare | Healthcare ×2 | 530.76 | -4.05% | +0.96% | — | 1.57 | 4.9% | -2.23 | -2.08 | -1.29% | below | 3.4% | 18.08 | 0.02 | +1.87% | — | 4 |
| PFE | SHORT | Healthcare | Healthcare ×2 | 30.00 | -2.18% | +0.03% | — | 1.71 | 9.5% | -1.72 | -1.74 | -1.34% | below | 2.1% | 0.63 | -0.20 | +0.67% | 02-02 BMO | 4 |
Mean reversion
|1-day return z| > 2 with RelVol 0.7–1.5 (move on ordinary volume → fade candidate). Liquidity filter applied: price > $10, 20d ADV > $500M, ATR% 2–8%.
| Ticker | Side | Sector | Cluster | Close | % Chg | Gap | Ext. gap | RelVol | Range pos | Resid z | 1d z | vs VWAP | vs OR | ATR% | ATR $ | β60 | 5d mom | Earnings | ρ cluster |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ETN | SHORT | Industrials | — | 391.70 | +7.00% | +3.68% | — | 1.26 | 79.4% | 3.04 | 2.46 | +0.07% | inside | 4.5% | 17.82 | 2.38 | +1.95% | 02-02 BMO | 1 |
| APP | SHORT | Software | — | 245.51 | +7.28% | +1.05% | — | 1.25 | 82.9% | 2.52 | 2.30 | +1.11% | above | 4.9% | 12.09 | 2.26 | -6.59% | — | — |