Ewan Li

Market scan

Jul 30, 2026

Research as of published 25-day delay

schemav2.0calls14
RegimeCHOP
breadth39.2% green5d+0.48%10d-1.20%Directional tradable
Vol state
  • dealer-short-gamma both indices (SPY GEX -$366.9M FULLY_NEGATIVE
  • QQQ NEGATIVE, spot 683.77 vs zero-gamma 729.4) = vol-EXPANSION conditioning. VIX 17.09, -17.3% on the day -- the 07-29 spike to 20.66 fully round-tripped in one session. VRP FAIR both indices (SPY +0.0126, QQQ -0.0057): nothing rich to sell. Front-end backwardation SPY 1.296x / QQQ 1.445x. NOT a direction.

7 event-risk item(s) flagged.

  • MEDIUM1
  • WATCH8
  • ADVISORY5
MEDIUM: 1 of 14WATCH: 8 of 14ADVISORY: 5 of 14
Tier mix — data table
Tier mix: tier and call count
TierCalls
MEDIUM1
WATCH8
ADVISORY5

Directional book

6 calls

Sizing is removed from every call by policy — see the disclaimer.

PLNT

MEDIUMShortlaneOI_FADE10d

OI_FADE short on a heavy 5-day net call-OI build. Since-entry SHORT excess -1.47% (gross -1.41%, price $55.20 -> $55.98). TODAY's excess +2.05% (PLNT -0.37% vs SPY +1.68%). Computed by the orchestrator, NOT read off held_book.py, whose 'gross' is since-entry while its 'excess' is TODAY-only -- two different horizons printed side by side. HOLD to the binding exit.

Entry / trigger
live since 2026-07-20 @ $55.20, half size
Invalidation
EARLIEST of: (a) 2026-08-03 close -- BINDING h10, admits NO drift, 2 sessions left (07-31, 08-03); (b) first genuinely NEGATIVE call_net print -- NOT triggered, tonight prints call +233 / put +42 / net +191, calls still net-OPENING; (c) close > $59.50 with 1-day confirm -- ACTIVE, price $55.98 is 6.29% away. Leg (c) was tested against PLNT's own realized 2-day move distribution: only 2 of 133 windows (~1.5%) cleared +6.29%. Low-probability but NOT arithmetically unreachable, so it is a real backstop, NOT vestigial -- kept unchanged. Not tightened further: with 2 sessions left and the signal still confirming, a tighter stop adds whipsaw risk without shortening a time-to-resolution the h10 exit already caps.
validated excess+0.70% (n=906)regime fit0.50
Key risks
  • Low rel_build (0.028) is trailing-5d-window DECAY, not an unwind -- total call OI is still elevated ~76.7K vs a ~58K baseline, i.e. the crowd's calls remain open
  • V-rebound tape shape raises generic squeeze risk on any open short
  • Since-entry excess is negative (-1.47%); the position has not worked in aggregate even though today was strongly positive
Gates
regime crashPASS

PASS -- s1_standdown FALSE as measured. OI_FADE is a flow-mechanism lane, not a relative-weakness lane, so the gate-1 dissent raised on MOM_SHORT does not reach it in any case.

liquidityPASS

PASS -- $55.98 close, 20d $-ADV $97.3M via scripts/liquidity.py (clears the $5 / $50M floor)

clusterPASS

PASS -- sole open position, no cluster exists

fundamentalsN/A

NA -- held position, no fresh gate run required absent a new catalyst; the 07-29 CAUTION stands. Re-run if PLNT-specific news lands before 08-03.

event riskPASS

PASS -- PLNT reports 2026-08-06, THREE trading days AFTER the binding 2026-08-03 exit; the exit lands clear of the print. Neither NFP (08-07) nor CPI (08-12) falls inside the remaining 2-session window.

FCX

ADVISORYLonglaneS2_dp_revert5d
Invalidation
Not sized. Advisory tag only.
validated excess+0.06%regime fit0.50
Key risks
  • $256.5M DP premium, 92.1% one-sided
Gates
regime crashPASS

PASS

liquidityPASS

PASS

clusterPASS

PASS

fundamentalsN/A

n/a -- advisory, not sized

event riskPASS

PASS -- earnings-gated

JEF

ADVISORYLonglaneS4_pcr_fade10d
Invalidation
Not sized. Advisory tag only.
validated excess+0.44%regime fit0.50
Key risks
  • PCR 81.3, LIVE
Gates
regime crashPASS

PASS

liquidityPASS

PASS

clusterPASS

PASS

fundamentalsN/A

n/a -- advisory, not sized

event riskPASS

PASS -- earnings-gated

PLD

ADVISORYLonglaneS2_dp_revert5d
Invalidation
Not sized. Advisory tag only.
validated excess+0.06%regime fit0.50
Key risks
  • $257.5M DP premium, 96.8% one-sided, buy_skew 1.0 -- but the lane's own read is that one-sided concentration is a BINARY EVENT GATE with IC ~= 0, not a ranking signal; do not read the largest print as the best candidate
Gates
regime crashPASS

PASS

liquidityPASS

PASS

clusterPASS

PASS

fundamentalsN/A

n/a -- advisory, not sized

event riskPASS

PASS -- earnings-gated on the trading-day window

QTWO

ADVISORYLonglaneS4_pcr_fade10d
Invalidation
Not sized. Advisory tag only.
validated excess+0.44%regime fit0.50
Key risks
  • Highest PCR in the cohort at 147.0 and assessed LIVE (elevated on 07-30 itself, not stale fear left over from the 07-29 VIX spike)
  • Reported 07-29 AH, opened strong 07-30 then REVERSED intraday (-2.2% on the day) -- a post-print reversal pattern that muddies the contrarian read
Gates
regime crashPASS

PASS

liquidityPASS

PASS

clusterPASS

PASS

fundamentalsN/A

n/a -- advisory, not sized

event riskPASS

PASS on the forward gate -- but see key_risks, it reported 07-29 AH

RGEN

ADVISORYLonglaneS4_pcr_fade10d
Invalidation
Not sized. Advisory tag only.
validated excess+0.44%regime fit0.50
Key risks
  • PCR 82.2, LIVE
  • ivrank_chg_5d -25.1 -- hedging premium already partly harvested, so the entry point may have passed even though the crowding tag is live
Gates
regime crashPASS

PASS

liquidityPASS

PASS

clusterPASS

PASS

fundamentalsN/A

n/a -- advisory, not sized

event riskPASS

PASS -- earnings-gated on the trading-day window

Vol book

6

Non-directional, delta-neutral, net-of-cost — advisory only, 0 directional points.

LDOS

vol_earningssell premium
Vol state
rich_vs_realized -- implied 8.5% vs realized avg 1.7% / max 6.2% (n=7). Implied clears even the WORST historical print with room.
Implied move
8.50%
Expected range
6.20%

Defined-risk iron fly, 08/21 monthly (~22 DTE), earnings 08-04. Wings set at/beyond the 6.2% realized-MAX print, never at the implied move. ATM relative bid/ask ~16-24% on this monthly chain -- a genuine single-name cost, and no measured cost model exists for this sleeve yet, so net_expectancy is left NULL rather than fabricated. Edge survives a generous haircut on the raw +6.9pp.

TRMB

vol_earningssell premium
Vol state
rich_vs_realized -- implied 8.6% vs realized avg 2.4% / max 5.4% (n=8). Best option liquidity of the group (OI 21.6k, ~5.5k opt/day).
Implied move
8.60%
Expected range
5.40%

Defined-risk iron fly, 08/21 monthly, earnings 08-05. Wings beyond the 5.4% realized-max. Raw edge +6.2pp; net_expectancy NULL for the same reason as LDOS -- no measured cost constant for single-name monthlies.

TTMI

vol_earningssell premium
Vol state
rich_vs_realized -- implied 19.7% vs realized avg 7.9% / max 16.6% (n=8). Largest raw edge of the three clean names (+11.8pp) but thin daily option volume (~900/day).
Implied move
19.70%
Expected range
16.60%

Defined-risk iron fly, 08/21 monthly, earnings 08-05, REDUCED SIZE for chain thinness. Wings beyond the 16.6% realized-max. Note the equity clears the C12 $-ADV floor at $304M -- the concern here is option-chain depth, which C12 does not cover.

UCTT

vol_earningsbuy premium
Vol state
rich_on_average_but_fat_tail_already_breached -- implied 22.3% vs realized avg 10.3%, but realized MAX 28.2% EXCEEDS today's implied move
Implied move
22.30%
Expected range
28.20%

Stand aside EXCLUDED despite the largest headline edge (+12.0pp). Hard rule 'size for the unsampled left tail' is exactly what this name's OWN history says: a 28.2% print already blew through a smaller implied move once in 7 samples (~14% of the time). The headline edge is an average that the tail has already falsified.

SPY

vol_0dtebuy premium
Vol state
backwardated_short_gamma -- front-end near/far IV ratio 1.296x (BACKWARDATION), GEX -$366.9M FULLY_NEGATIVE
Net expectancy
0.001

Stand aside STOOD DOWN despite a mechanically POSITIVE net backtest (gross +0.246%/day -> net +0.146%/day after 0.10% assumed round-trip, 90% open-win). The lane script returned GO_PREMIUM_SELL_INTRADAY and was overridden: front-end backwardation + dealer-short-gamma + a fresh post-VIX-spike whiplash session (20.66 -> 17.09 in ONE session) is precisely the unsampled-left-tail combination the tail cap exists to catch. The 60-day trailing sample that produced those averages contains no analog for a ~21% one-day VIX round-trip -- the module's own disclosed caveat.

QQQ

vol_0dtebuy premium
Vol state
backwardated_short_gamma -- front-end near/far IV ratio 1.445x (BACKWARDATION); spot 683.77 sits well BELOW the 729.4 zero-gamma level, i.e. inside the negative-gamma zone
Net expectancy
0.003

Stand aside STOOD DOWN, same reasoning as SPY (gross +0.376%/day -> net +0.276%/day). SECOND, INDEPENDENT REASON: scripts/zerodte_setup.py MISCLASSIFIED QQQ as long-gamma -- its recommend() path sums net gamma over 0-45DTE instead of applying the spot-vs-zero-gamma-level convention the CLI 'gex' command uses, so it picked the quiet/mean-reverting branch. A real bug; do not trust that script's QQQ verdict until fixed. Logged as a maintenance item, NOT patched tonight (this was an advisory scan, not a lane change, and a code edit would trip the regression gate).

Watch / stood-down

8
TickerTierLaneDirectionInvalidation
AVTRWATCHOI_FADEShortNot sized. Re-admit to the OI_FADE universe only if a forward fundamentals re-check flips the veto: the analyst tape turning (no further PT raises/upgrades, or fresh cuts) AND the guidance picture deteriorating. The mechanical OI signal was the cleanest of the night -- this is a pure gate-4 kill.
HRIWATCHOI_FADEShortNot sized. Re-admit condition UNCHANGED and still open: the analyst tape must turn (no further PT raises/upgrades, or fresh cuts) AND the guidance picture must deteriorate. Checked tonight against the last 1-2 sessions specifically, per the recorded condition -- not a restatement of last night's veto.
INFYWATCHOI_FADEShortNot sized. Re-check 07-31 for build persistence, same test as OLLI.
LHXWATCHMOM_SHORTShortNot sized. Watch-only.
OLLIWATCHOI_FADEShortNot sized. Re-check 07-31: if the build PERSISTS into a second session it becomes a genuine multi-day accretion and re-enters the universe; if it does not, it was a one-session print and stays out.
SNPSWATCHMOM_SHORTShortNot sized. Watch-only.
VICIWATCHMOM_SHORTShortNot sized. Watch-only.
WSOWATCHMOM_SHORTShortNot sized. Watch-only.

Lane status

1
laneMOM_LONGBasket watchLongregime fit0.60

[migrated from calls[] by audit 2026-08-01 -- was synthetic ticker BASKET_NEAR_52W_HIGH] Basket-only by construction -- never a per-name HIGH call (CLAUDE.md lane table) Not sized. Watch-only BY THE RUBRIC, not by discretion: +0.18% mean sits BELOW the +0.3% MEDIUM tier threshold, and the median is -1.06% (the lane's edge is tail-driven, so a basket held at watch loses nothing but the tail).

Watchlist write-back

12

Carried forward to the next session's watchlist — not calls.

PLNTAVTRHRIOLLIINFYSNPSWSOPLDFCXQTWORGENJEF
Lane glossary (7)
OI_FADE
OI-flow fade — fades persistent multi-day net call-OI building; heavy call-OI build precedes underperformance. The most robust lane measured (short, h10).
MOM_SHORT
Momentum, short leg — near-52w-low relative weakness. Regime-gated against momentum-crash/squeeze rebounds (h10).
S2_dp_revert
Liquidity reversion — fades an extreme one-sided dark-pool liquidity event as short-horizon mean reversion (long-tilted), news/earnings-gated (h3-5).
S4_pcr_fade
Sentiment contrarian — fades a put-heavy (high put/call ratio) crowd long; the only sentiment leg that measured positive. Advisory size only (h5-10).
vol_earnings
Vol book — sells volatility into an earnings IV-crush. Non-directional, delta-neutral, 0 directional points.
vol_0dte
Vol book — 0DTE variance-risk-premium premium-selling. Non-directional, delta-neutral, 0 directional points.
MOM_LONG
Momentum, long leg — near-52w-high relative strength. Tail-driven; basket-only, never sized per-name (h10).

Personal research journal · published on a ≥ 14-day delay · position sizes removed · not investment advice.