← Files DayTrading.MonsterARCHIVED FILE

skills/us-stock-gamma-moomoo/references/experience.md

12 KB · Oct 2, 2026 · 00:33 UTC

↓ Download file

# US Stock Gamma Experience

## Active Playbook

- Read gamma as a positioning map, not a standalone forecast. Confirm the map with live spot, price action, volatility, and news acceptance.
- Positive gamma is not a bullish directional forecast. In same-day SPX/0DTE reads, if spot keeps moving away from an upper wall while 0DTE/All GEX rapidly decays, treat the upper wall as failed repair / overhead pressure and describe the session as weakening within positive gamma, not as a prediction that price should rise back to the wall. The actionable warning is the sequence: lower spot, weaker GEX, lower active pinning zone, and failure to reclaim nearby strikes.
- Treat third-party gamma/trigger-wall tables as a context filter, not a treasure map or standalone buy/sell signal. GEX describes where dealer hedging and liquidity pressure may matter; it does not prove price must travel to a wall, and it should not be used as a deterministic endpoint.
- Gamma flip is a risk-state boundary, not a direction signal. In actionable guidance, translate spot versus flip into a conditional path: above/accepting flip means volatility may be buffered and repair can be considered only if nearby walls are reclaimed and held; below/rejecting flip means fragility and trend amplification risk increase; a cross of flip alone is not a buy/sell trigger without hold/retest, IV/0DTE-flow stability, and price-action confirmation.
- For call walls, put walls, gamma walls, and gamma pits, give guidance as conditions rather than labels: identify the crowded strike, then state what confirms acceptance, what invalidates it, where a failed reclaim/failed breakdown changes the scenario, and which next level becomes the next pinning or acceleration zone. Do not stop at renaming walls as support/resistance or road conditions; provide the trigger, false-signal check, and invalidation level the user can monitor.
- Do not infer direction from customer inventory or OI alone. Traditional client-position conventions can be wrong during institution-to-institution trades, crosses, spreads, or dealerless prints; the useful question is dealer net hedging pressure and whether price action confirms it.
- Be especially skeptical of overnight or stale OI/GEX snapshots in 0DTE-heavy markets. Same-day opening and expiry flows can rebuild the battlefield, so yesterday's wall can become stale by afternoon after spot/IV move.
- Gamma walls move with spot and volatility. A call wall or gamma wall that shifts intraday is not necessarily a failed dataset; it may reflect price moving the gamma peak, IV surface changes, or dealer re-hedging. Do not describe walls as fixed rails.
- GEX omits or underweights vanna/charm effects when used alone. Near expiry, IV-driven delta changes and time-decay/charm flows can overwhelm a static gamma read, so combine gamma with IV direction, vanna/charm context when available, and price-action confirmation.
- Avoid the common OI trap: high OI or a large put/call shelf is not automatically support/resistance. It becomes useful only as a level to watch for acceptance, rejection, pinning, or acceleration after a break.
- When third-party GEX providers disagree on sign or level, do not average them mechanically. Different vendors may use opposite sign conventions or different dealer/customer assumptions; separate the source convention and focus on confirmed dealer hedging implications.
- Before leaning on GEX after a headline, run an expectation-gap check: what was priced, what landed, and whether price accepted or rejected it.
- Use `stock-technical-analysis` when entry/exit timing, 1h+ structure, support/resistance, or failed-breakout confirmation matters.
- Use `stock-sentiment-analysis` when rates, FX, volatility, crowded AI/semiconductor positioning, or broad risk-on/risk-off behavior is driving the underlying.
- For U.S. single-stock move analysis, ChartExchange off-exchange/dark-pool levels, dark-pool prints, short volume, borrow fee, shares available, short interest, and FTD are secondary positioning checks after news, macro/sector tape, price/volume, and option/gamma evidence. Dark-pool data has no side information: high off-exchange share or a large print is not automatically bullish/bearish. Use the source ticker URL by changing both listing venue and ticker, e.g. `nyse-anet`, `nasdaq-nvda`, `nyse-spy`; SPY is a common ticker where ChartExchange uses `nyse-spy`, and for uncertain venues search the ticker first.
- For SPX/SP500 gamma, try `US..SPX` option expiries/chains first even if the SPX index snapshot fails. When that chain is available, do not use SPY conversion; use SPX/SPXW strikes directly. Use SPXW PM-settled contracts for same-day intraday/0DTE maps and filter out AM-settled monthly SPX unless AM settlement is the question.
- De-duplicate moomoo SPX expiry dates before fetching chains. On monthly-expiry Fridays, `get_option_expiration_date("US..SPX")` can return the same `strike_time` twice for `MONTH` and `WEEK`; fetching both rows by date double-counts the same chain and inflates GEX/VEX.
- For intraday SPX spot anchoring, prefer SPXW 0DTE put-call parity from the same moomoo option chain when the OpenD SPX index snapshot is unavailable. Do not use delayed/static TradingView page text as an anchor; ignore it unless a live chart value is explicitly confirmed. SPY is a sanity check, not the normal anchor.
- For intraday questions such as "now", "today", "can it get through", or "0DTE", make the same-day SPXW bucket the primary read. Use `Next2`, `Fri2w`, and `All` only as background unless the user asks about the week.
- If comparing with third-party gamma levels, do not claim to reproduce proprietary vendor levels. Label local outputs as self-calculated from SPXW option chains, and keep third-party levels separate when the user provides them.
- For intraday SPX output, include ladders rather than a single level: call-OI walls, put-OI walls, positive-GEX gamma walls, negative-GEX gamma pits, and major vanna zones. Put walls and gamma pits are different: put-OI walls can act as defense/support, while negative-GEX pits are volatility/acceleration zones.
- Do not treat the first touch or brief break of a gamma pit as an automatic short signal. If a put wall and pit overlap, call it a battlefield; require failure to reclaim, loss of the next nearby pit/trigger, or price-action confirmation before describing downside continuation.
- When an option/gamma answer uses macro/flash-news, technical, or sentiment reasoning, call the corresponding sibling skill instead of folding that layer into this skill ad hoc: `macro-news-check` for 宏观/快讯, `stock-technical-analysis` for 技术面, and `stock-sentiment-analysis` for 情绪面/期待差. State the fusion layers in the final answer when they materially affect the conclusion.
- For SPX/SP500 reports, calculate vanna from SPXW spot/strike/IV/DTE and analyze top positive/negative VEX zones alongside gamma walls. Treat VEX as an IV-sensitive pressure map, not a standalone forecast. To judge whether vanna favors upside or downside, combine: IV direction, spot versus gamma flip, current gamma regime, and trigger/price-action confirmation. Positive VEX above spot is only potential upside support if price reclaims the relevant flip/trigger and IV is stable or falling; if spot remains below flip in negative gamma with IV rising, downside pits and failed reclaims matter more than distant positive VEX zones.
- For SPX answers, default to desk-note granularity: show 0DTE/Next2/Fri2w/All net GEX, net VEX, flips, walls, pits, and a key-strike cross-section across those buckets. This is required to evaluate claims such as "still negative gamma, 7450 neutralizes, 7500 becomes stronger positive gamma." Separate aggregate regime from local strike regime; do not flatten a negative all-window aggregate and positive upper strike walls into one simplistic label.
- Keep SPX report render helpers compatible with both per-level pairs and scalar level lists. `flips` are scalar floats, while walls/pits are `[level, value]` pairs; text rendering must not assume every level list is two-dimensional.
- When writing index ranges, support/resistance, walls, pits, triggers, or scenario levels, list prices from high to low so the map reads top-down.
- For Nikkei proxy conversion, never pair a stale EWJ close with the current Nikkei CFD directly. If EWJ is closed, anchor the EWJ/NKD ratio using NKDmain or Nikkei CFD at the EWJ quote timestamp, then bridge to current NIYmain/current CFD with a current NKD/NIY ratio. If moomoo returns permission errors for `US.NKDmain` or `US.NIYmain`, ask for those anchors explicitly.
- If a Nikkei cash close anchor is used, it must pair with an EWJ overnight/24h quote at the same Japan-close timestamp. Do not pair Japan cash close with the later US regular-session EWJ close.
- For SPX/Nikkei special workflows, default to a concise human text summary. Use JSON only when the user explicitly requests raw export. Unfinished files should not appear as incidental artifacts.
- For same-day repeated SPX gamma requests in one conversation, compare current spot, net GEX, net VEX, flip, nearest wall, nearest pit, and CPR position against earlier same-session results. Say plainly whether the structure is strengthening, weakening, migrating up/down, or staying pinned. Do not imply an internal time series when the prior result is not in the conversation or user-provided notes.
- Re-run after the regular session opens or after a large spot move; pre-market stock moves often use stale option IV/OI/Greeks.
- In script output, treat `spot` as the pricing anchor for Gamma/Vanna recalculation, not automatically as a live tradable current price. During pre-market, overnight, weekends, or stale quote windows, label it as a reference anchor and compare it against the last regular close or live session price before making trading conclusions.
- For U.S. stocks, do not blindly prefer `pre_price`: moomoo can leave stale pre-market fields populated after the session ends. Choose the pricing anchor by U.S. session: regular `last_price`, after-hours `after_price`, overnight `overnight_price`, and pre-market `pre_price`, with bid/ask midpoint or regular last only as fallback.
- For single-stock gamma reports, default to a complete OpenD data group before giving the conclusion: VT/flip, gamma wall, call wall, put wall, distance to VT/CW/PW, net GEX, gamma pits, DEX, VEX/vanna zones, charm/day zones, call/put OI shelves, and front-expiry IV smile/skew. The final bias must cite the specific dimensions that drive it; do not conclude from one wall or one GEX aggregate alone.

- For a forward SPX gamma heatmap, plot every real listed expiry returned by OpenD and preserve missing dates as missing; never interpolate or invent a daily expiry that is not in the chain.
- Preserve the requested vertical range and the chain's native strike spacing. Do not collapse a 5-point SPXW chain into 25-point rows when the purpose is to show whether a broad downside zone remains continuously negative.
- Smooth only the heatmap's visual layer. A Gaussian filter along strikes plus one-pixel linear interpolation can remove striping, but raw GEX, net GEX, walls, pits, and flip values must remain unchanged. Do not blend horizontally across expiries. Label the solid flip line as a regime boundary, not a forecast path, and keep current spot as a separate dashed line.
- Calculate daily Call Wall and Put Wall independently inside each expiry bucket: Call Wall is the strike with the largest call-side GEX, and Put Wall is the strike with the most negative put-side GEX at the current anchor. Do not substitute all-strike maximum OI, because far-OTM legacy OI can create a misleading wall. Keep these side-specific gamma walls separate from net-GEX walls/pits and flip; a Put Wall is only a potential defense while held and becomes an acceleration-risk reference after a confirmed break.
- For Codex inline gamma charts, use a generated unique root ID plus `document.getElementById`, never `document.currentScript`, and emit only the visualization file name in `::codex-inline-vis`. Keep CW and PW labels on separate header rows at 736px and wider; a combined `CW · PW` line can overlap adjacent expiry columns.

SHA-256: 4ea557481b19f896a42828d4766a16c4c440c2b5dc39a33e122ac5273e0a1e7c