update to where files are stored

This commit is contained in:
2026-08-24 14:27:53 -04:00
parent 2076abcf0c
commit dd8e4cca0c
14 changed files with 561 additions and 183 deletions

View File

@@ -6,15 +6,15 @@ This README catalogs the tools and resources in this directory. It is intended f
| Tool / Folder | Purpose | Key Files | When to Use | | Tool / Folder | Purpose | Key Files | When to Use |
| --- | --- | --- | --- | | --- | --- | --- | --- |
| `tool-catalog-maintainer/` | Creates and maintains catalog READMEs for directories of tools/resources. | `SKILL.md`, `CONTEXT.md`, `references/catalog-format.md` | Use when asked to catalog, index, or update documentation for a folder of tools. | | `workflows/tool-catalog-maintainer/` | Creates and maintains catalog READMEs for directories of tools/resources. | `SKILL.md`, `CONTEXT.md`, `references/catalog-format.md` | Use when asked to catalog, index, or update documentation for a folder of tools. |
| `research-dfns/` | DFNS research folder — alerts logs, chat log, and TODO tracking. | `TODO.md`, `AlertsLog_*.txt`, `ChatLog_*.txt` | Use when reviewing or continuing DFNS research. | | `workflows/research-dfns/` | DFNS research folder — alerts logs, chat log, and TODO tracking. | `TODO.md`, `AlertsLog_*.txt`, `ChatLog_*.txt` | Use when reviewing or continuing DFNS research. |
| `260731-1330-credit-spread.md` | SPY Bull Put Credit Spread trade plan (0DTE, July 31). | `260731-1330-credit-spread.md` | Use for today's SPY options trade — bullish slow grind thesis. | | `sources/260731-1330-credit-spread.md` | SPY Bull Put Credit Spread trade plan (0DTE, July 31). | `260731-1330-credit-spread.md` | Use for today's SPY options trade — bullish slow grind thesis. |
| `iron-condor-45dte.md` | SPX Iron Condor trade plan — 45DTE entry, 21DTE time exit, Schwab broker. | `iron-condor-45dte.md` | Use when setting up or managing SPX iron condor spreads. | | `sources/iron-condor-45dte.md` | SPX Iron Condor trade plan — 45DTE entry, 21DTE time exit, Schwab broker. | `iron-condor-45dte.md` | Use when setting up or managing SPX iron condor spreads. |
| `cha-martin-watchlist.ms.csv` | Cha Martin watchlist export (CSV). | `cha-martin-watchlist.ms.csv` | Use for ticker watchlist reference or scan filtering. | | `sources/cha-martin-watchlist.ms.csv` | Cha Martin watchlist export (CSV). | `cha-martin-watchlist.ms.csv` | Use for ticker watchlist reference or scan filtering. |
## Tools ## Tools
### `tool-catalog-maintainer/` ### `workflows/tool-catalog-maintainer/`
**Purpose:** **Purpose:**
Creates and maintains a `README.md` catalog for a directory containing subfolders of tools, prompts, scripts, docs, workflows, skills, or other reusable resources. The README is a living catalog that improves over time. Creates and maintains a `README.md` catalog for a directory containing subfolders of tools, prompts, scripts, docs, workflows, skills, or other reusable resources. The README is a living catalog that improves over time.
@@ -34,7 +34,7 @@ None noted. Works with file read/write tools.
**Notes:** **Notes:**
Always use this tool when asked to catalog a directory — inspect subfolders, read their key files, and write the README using `references/catalog-format.md`. Always use this tool when asked to catalog a directory — inspect subfolders, read their key files, and write the README using `references/catalog-format.md`.
### `research-dfns/` ### `workflows/research-dfns/`
**Purpose:** **Purpose:**
Research folder for DFNS (Digital Frontier Acquisition Corp.) — contains alert logs, chat transcripts, and tracking notes from July 27, 2026. Research folder for DFNS (Digital Frontier Acquisition Corp.) — contains alert logs, chat transcripts, and tracking notes from July 27, 2026.
@@ -50,7 +50,7 @@ Reviewing or continuing DFNS research. Note: per ticker tracking rule, DFNS shou
**Setup / dependencies:** **Setup / dependencies:**
None noted. None noted.
### `260731-1330-credit-spread.md` ### `sources/260731-1330-credit-spread.md`
**Purpose:** **Purpose:**
Active trade plan for a SPY Bull Put Credit Spread (0DTE, July 31, 2026). Sell $740 put / Buy $738 put spread, targeting 20%+ profit with bullish slow grind thesis. Active trade plan for a SPY Bull Put Credit Spread (0DTE, July 31, 2026). Sell $740 put / Buy $738 put spread, targeting 20%+ profit with bullish slow grind thesis.
@@ -61,7 +61,7 @@ Executing or monitoring today's SPY options trade.
**Setup / dependencies:** **Setup / dependencies:**
None noted. Trade-specific, not reusable. None noted. Trade-specific, not reusable.
### `iron-condor-45dte.md` ### `sources/iron-condor-45dte.md`
**Purpose:** **Purpose:**
Trade plan for SPX Iron Condor through Schwab broker. 45DTE entry, 30-point wings, forced close at 21DTE. Includes profit target (25% of net credit), stop loss (50% of max loss), and monitoring cadence. Trade plan for SPX Iron Condor through Schwab broker. 45DTE entry, 30-point wings, forced close at 21DTE. Includes profit target (25% of net credit), stop loss (50% of max loss), and monitoring cadence.
@@ -72,7 +72,7 @@ Setting up or managing SPX iron condor spreads with Schwab.
**Setup / dependencies:** **Setup / dependencies:**
Schwab broker session required. Schwab broker session required.
### `cha-martin-watchlist.ms.csv` ### `sources/cha-martin-watchlist.ms.csv`
**Purpose:** **Purpose:**
CSV export of a Cha Martin watchlist — likely contains tickers for scanning or monitoring. CSV export of a Cha Martin watchlist — likely contains tickers for scanning or monitoring.

View File

@@ -0,0 +1,237 @@
# HANDOFF — scan-watchlist-for-equities: mechanical data-fetch script
Written: Tue 2026-08-18 9:37 PM ET. Purpose: a fresh session can resume this
build without re-deriving anything. All API facts below were LIVE-VERIFIED
this session (not from memory).
## 1. What the member asked for
Gump: "I want to create scripts to do some of the work you're doing now and
stitch these into the workflow to avoid the inference work these stages
undertake on each run."
Follow-up approval: "yes build it and include Benzinga news pull" — then,
after the flaky Benzinga endpoint (HTTP 500) and dropped tool payloads:
"can you continue without benzinga angle?"
=> DECISION: **v1 script = price/volume/bars/S-R only (no Benzinga).**
News stays an optional agent MCP call at stage 01, exactly as before.
Benzinga re-add can be v2 once the endpoint proves stable.
## 2. Goal / design
One stdlib-only Python 3.11 script:
`workflows/scan-watchlist-for-equities/shared/scripts/fetch_scan_data.py`
CLI: python3 fetch_scan_data.py <watchlist.csv> [--out DIR]
[--regime SPY,QQQ] [--bars-days 80] [--news-since YYYY-MM-DD]
(news args drop in v2; ignore for v1)
It fetches, per watchlist ticker, DIRECTLY from TTG real-time data API
(via streamable-HTTP MCP JSON-RPC — see section 5):
- stocks_snapshot_ticker
- stocks_aggs_custom_bars daily (from = today-100d, to = today,
multiplier=1, timespan=day, limit=90)
- stocks_aggs_custom_bars 3-min (from/to = last trading day,
multiplier=3, timespan=minute, limit=400)
- calculate_support_resistance {ticker, timeframe: "daily"}
- calculate_support_resistance {ticker, timeframe: "3min"}
Plus SPY/QQQ regime snapshots.
It computes (mechanical, zero interpretation):
- session split of 3-min bars: PM (<09:30 ET), RS (09:30-16:00),
AH (>16:00 ET) — per session: o/h/l/c/v and vwap=sum(c*v)/sum(v)
- intraday high/low timestamps; volume by RS hour; first-15-min and
last-30-min RS moves
- MA20 / MA50 from daily closes + distance % (n/a if <20 bars: IPOs)
- period high/low from fetched daily bars
- vol vs prev-day volume (snapshot day.v / prevDay.v)
It writes into `stages/01_broad_filter/output/`:
- data_brief.md — formatted tables, the mechanical half of shortlist.md
- raw_data.json — every raw payload, audit trail
stdout: compact fetch summary + output paths. Exit 0/1.
Per-call: 1 retry, 2s backoff. Timestamps in bars are MILLISECONDS UTC —
convert to America/New_York (zoneinfo; fall back to local tz on error).
"Last trading day" for the 3-min fetch = max bar date from the daily bars
(handles weekend/pre-market runs).
Credentials: read at RUNTIME from env var MARI_MCP_CONFIG (machine-local
JSON; see section 4). NEVER hardcode keys or write them into the workflow
folder — the Cell syncs to Fleet.
## 3. Environment facts (verified this session)
- cwd = C:\Users\Eric\AppData\Roaming\MARI Desktop\localCell\accounts\
acct-c6fef984c60eb59b9c1c4202ababa059\workspace (git-bash paths use /c/...)
- Python 3.11.15 (pyenv) reachable from MARI bash; stdlib urllib HTTPS works
(proven by live calls below). Node is UNREACHABLE from MARI bash — use Python.
- MCP config: env var MARI_MCP_CONFIG ->
C:\Users\Eric\AppData\Roaming\MARI Desktop\mcp\acct-c6fef984...json
Shape: {"servers": {"ttg-stocks": {"transport":"streamablehttp",
"url":"https://rt.data.ttg.ai/stocks/mcp",
"auth":{"type":"header","headers":{"Authorization":"Bearer ***",
"X-User-ID":"27930"}}}, "ttg-benzinga": {...benzinga/mcp...}, ...}}
(Do not print the real bearer key in chat/output.)
- Workflow root: .mari/scratchpad/workflows/scan-watchlist-for-equities/
(Layer-3 scripts belong in shared/scripts/ per ICM Table 2; ICM.md is at
workflows/ICM.md — re-read on exec per member's predicate.)
- Watchlist CSVs live in shared/ (e.g. 260818.csv = "XOS, AMLX" one per line).
Script should resolve the CSV relative to shared/ (script_dir.parent).
## 4. MCP-over-HTTP protocol (proven working from Python)
Stateless on these servers: no Mcp-Session-Id returned. Sequence:
1) POST url {"jsonrpc":"2.0","id":1,"method":"initialize","params":
{"protocolVersion":"2025-03-26","capabilities":{},
"clientInfo":{"name":"fetch_scan_data","version":"1.0"}}}
2) POST {"jsonrpc":"2.0","method":"notifications/initialized"} (best-effort)
3) POST {"jsonrpc":"2.0","id":N,"method":"tools/call","params":
{"name":<tool>,"arguments":{...}}}
Headers for every POST: Content-Type: application/json,
Accept: application/json, text/event-stream, plus the server's auth headers.
Responses came back plain application/json (not SSE) in testing, but the
parser MUST handle both: if CT starts with text/event-stream, scan lines
starting "data:" and JSON-parse until one has the matching id.
Result text = d["result"]["content"][0]["text"] -> json.loads (it's a
JSON string). On JSON-RPC error object, raise with the message.
Minimal proven client (this exact code worked):
cfg = json.load(open(os.environ['MARI_MCP_CONFIG']))
srv = cfg['servers']['ttg-stocks']
headers = {'Content-Type':'application/json',
'Accept':'application/json, text/event-stream'}
headers.update(srv['auth']['headers'])
req = urllib.request.Request(srv['url'], data=json.dumps(payload).encode(),
headers=headers, method='POST')
body = urllib.request.urlopen(req, timeout=60).read().decode()
## 5. Verified response shapes (live, 8/18 evening)
stocks_snapshot_ticker {ticker:"SPY"} ->
{"ticker":{"ticker":"SPY","todaysChangePerc":-0.675,"todaysChange":-5.22,
"updated":1787097600000000000,"day":{"dv":43920901.2,"o":768.7,"h":769.5,
"l":766.92,"c":767.45,"v":...,"vw":768.52,...}, ...}}
(also has prevDay with c/v — code defensively with .get; the exact AH
sub-fields were not captured: rely on 3-min AH bars for after-hours shape,
not the snapshot.)
stocks_aggs_custom_bars {ticker,from,to,multiplier,timespan,limit} ->
{"ticker":...,"results":[{"v":22219.6,"vw":768.25,"o":769.21,"c":768.37,
"h":769.73,"l":767.8,"t":1787040000000,"n":446}],"next_url":...}
NOTE: 'multiplier' IS REQUIRED (missing it = "Missing required params").
Daily: multiplier=1 timespan=day. Intraday: multiplier=3 timespan=minute.
t = MILLISECONDS UTC.
calculate_support_resistance {ticker, timeframe:"daily"|"3min"} ->
{"timeframe":"daily","current_price":4.44,
"support_levels":{"minor":[{"price":1.92,"touches":1,
"description":"Swing low 3 weeks ago, 1 touch"}],
"major":[{"price":3.04,"touches":3,"description":"..."}, ...],
"key_references":{"pdl":4.01,"pdc":4.44,"period_low":1.65}},
"resistance_levels":{"minor":[...],"major":[...],
"key_references":{"pdh":4.95,"period_high":...}}}
benzinga_news (V2 ONLY — endpoint flaky, 500'd once this session):
ttg-benzinga execute {endpoint:"benzinga_news",
params:{"stocks":"AMLX","published.gte":"2026-08-18"}} ->
{"status":"OK","results":[{"benzinga_id":...,"author":"benzinga newsdesk",
"published":"2026-08-18T20:02:46Z","title":"Amylyx Pharmaceuticals
Announces $350M Common Stock Offering","url":"...","channels":[...],...}]}
Use ONLY minimal params (stocks + published.gte) — extra params
(limit/sort) coincided with the 500; retry once on failure.
## 6. data_brief.md format (mirror the mechanical sections of tonight's
shortlist.md so stage agents can drop them straight in)
# Data Brief — scan-watchlist-for-equities
Generated: <ts ET> | Watchlist: <file> | Tickers: ... | Regime: SPY, QQQ
(Mechanical fetch + compute only — interpretation is stage work.)
## 1. Market regime (SPY/QQQ)
| Ticker | Close | Chg % | O | H | L | VWAP | Vol | Vol vs prev | Closed vs VWAP |
## 2. Watchlist snapshot
| Ticker | Close | Chg % | O | H | L | VWAP(all-day) | VWAP(RS) |
| Vol | Vol vs prev | | | | | | |
## 3. Intraday shape — <ticker> (3-min bars, <date>)
Sessions PM/RS/AH: o/h/l/c/v/vwap each; high & low timestamps;
volume by RS hour; first-15-min and last-30-min moves.
## 4. Daily structure — <ticker>
Close | MA20 (dist%) | MA50 (dist%) | period high/low
## 5. Support/Resistance — <ticker>
daily + 3-min: major/minor levels w/ touches, key references
(pdh/pdl/pdc/period high-low).
## 6. (v2) Catalyst feed — Benzinga per ticker, ET-sorted, with
offering/dilution auto-flag (regex on title: offering|ATM|S-3|
underwrit|registered direct|share sale|financing|capital raise).
Format rules: prices 2dp (3dp if <2.0); volumes in M (1dp); facts only —
"closed below VWAP" is allowed (arithmetic), "risk-off" is NOT (judgment).
## 7. Stitching into CONTEXT.md (pending edits, after script works)
- stages/01_broad_filter/CONTEXT.md: replace the manual fetch steps with
"run `python3 shared/scripts/fetch_scan_data.py <watchlist csv from
user_preferences.md>`; read output/data_brief.md; do NOT re-pull data the
brief contains (fallback to MCP calls only if the script fails)".
Agent keeps: regime interpretation, triage, shortlist.md.
(Benzinga: keep the existing agent news step for v1, unchanged.)
- stages/02_confluence_analysis/CONTEXT.md: add input
../01_broad_filter/output/data_brief.md — factors read from brief.
- stages/03_trade_plan/CONTEXT.md: add same input — levels from brief.
- Root CONTEXT.md "Shared Resources": update shared/ line to mention
scripts/fetch_scan_data.py. CLAUDE.md: one-line note under shared/.
- Stages 00 and 04: UNTOUCHED (pure conversation/synthesis).
## 8. Verification targets (tonight 8/18 run — script output must match)
SPY 767.45 -0.68% VWAP 768.52 vol 43.9M | QQQ 717.51 -1.88% VWAP 719.73 vol 49.0M
XOS 4.44 +96.65% O4.53 H4.95 L4.01 VWAP 4.4281(vol 110.1M) AH last ~4.11
3-min SR: resistance cluster 4.25/4.30/4.32 | daily SR: 3.04/2.70/2.11,
res 8.27, pdl 4.01 pdc 4.44 period_low 1.65
AMLX 35.11 +63.42% O29.91 H35.39(ATH) L28.00 VWAP 31.4446 vol 24.0M AH ~35.02
3-min SR: support 35.02(48t)/34.90(28t), congestion 33.26/33.53
daily SR: 17.00/12.44 support, pdh 35.39
## 9. Pitfalls / failure modes learned this session
- file_write (and bash) DROP the payload when a single tool call carries a
very large content (~10KB+ observed failing). Symptom: "missing required
positional argument: 'content'". FIX: write in chunks of <= ~3KB
(file_write, or bash `cat > f <<'EOF'` then `cat >> f <<'EOF'`). Verified:
3 chunks landed cleanly.
- ttg-stocks execute: 'multiplier' param is REQUIRED (500-ish error w/o it).
- ttg-benzinga: HTTP 500 (HTML error page) occurred once; retry with
minimal params worked. Treat as flaky — never block the script on it.
- 3-min bar timestamps: MILLISECONDS (not nanoseconds/seconds).
- Node is unreachable from MARI bash (PATH isolation) — Python only.
- Weekend/pre-market: daily bars may lack today; 3-min fetch should target
the last trading day found in daily bars, and brief must say so.
- ICM standing rules (member's predicates): re-read ICM.md fresh every exec;
clear each stage's output/ before re-running the workflow; the workflow
folder is equities-only (options work was stripped 8/18 — do not re-add).
## 10. Resume checklist (fresh session)
1. Read this doc; read workflows/ICM.md (member predicate).
2. Build fetch_scan_data.py per section 2 spec, using the client from
section 4 and shapes from section 5. Write via chunked bash heredocs.
Keep it stdlib-only. v1 has NO Benzinga.
3. Run: python3 .../fetch_scan_data.py 260818.csv
4. Diff its data_brief.md numbers against section 8 targets (must match).
Inspect raw_data.json to confirm snapshot field extraction (esp.
prevDay.v) — adjust .get() chains if fields differ.
5. Make the CONTEXT.md stitch edits in section 7.
6. Report to Gump with: script path, brief preview, stage-edit list,
and the Benzinga-v2 note (why it was deferred: flaky 500).
7. Standing member rules: plan-first for consequential multi-step work;
visible progress updates; re-run = clear output/ first.
## 11. Current state
- Workflow folder: options work fully stripped (5 files edited 8/18,
verified clean). 8/18 evening run completed: all 5 stage outputs exist
in stages/*/output/ (shortlist, confluence, plans, summary card) with
AMLX primary / XOS conditional plans for Wed 8/19.
- fetch_scan_data.py: NOT YET WRITTEN (all large file_write attempts
dropped). Probes above are the only code verified this session.
- Nothing in the workflow folder is dirty beyond what 8/18 run wrote.

View File

@@ -0,0 +1,90 @@
# XPON Short Squeeze — Premarket Signal Reconstruction (2026-08-24)
## The Setup: What a Pre-Open Scanner Would Have Flagged
### 1. Extreme Float Restriction
- **Free float: 10,684,515 shares** (93.4% of share class)
- **Total shares outstanding: ~962,335** (weighted: 953,191)
- **Market cap: $3.27M** — deep micro-cap
- **22 employees**, listed 2022-04-01, NASDAQ (XNAS)
- **1-for-12 reverse split** (effective ~2026 Q2) to regain Nasdaq compliance
- A ~$3.30M market cap with 10.7M free float = tiny tradable universe. Any meaningful buy-side interest moves the tape fast.
### 2. 8/19 Volume Blowout — The "Accumulation Day"
| Metric | 8/19 (Thu) | Prior days (typical) |
|--------|-----------|---------------------|
| Close | $4.43 | $3.30–$3.74 |
| High | $4.90 | $3.30–$3.74 |
| Volume | **83,482 shares** | ~300–1,000 shares |
| $ Volume | $7.37M | <$5K |
- Volume was **~80–250x** the prior 10-day average (~300–700 shares/day).
- Price went from a 3-week range of $3.18–$3.89 to a **$4.90 intraday high** — a break above the established range.
- Close at $4.43 held well above the prior range — this is an **accumulation/reversal bar**, not a failed spike.
- The 8/20–8/22 follow-through: volume stayed elevated (3.8K, 1K, 680) vs. the prior 1K baseline, and price held above $3.60 — confirming the 8/19 move wasn't a one-day fluke.
### 3. Premarket 8/24: The Trigger
- **Pre-market high: $4.80** (09:24 ET, first 5-min bar: o:3.56 c:4.10 h:4.80 l:3.40, v:1,047,600)
- That's a **+8.5% gap** above the 8/23 close of $3.435.
- **Pre-market volume: ~1.94M shares in the first hour** (vs. 83K the prior full day) — **23x the prior day's total volume before the open**.
- The quote tape shows **bid/ask sizes at 100 shares** throughout pre-market — no institutional size was visible. This was **retail/momentum-driven**, not institutional.
- The 09:30 open printed at **$7.77** — a **126% gap** above prior close. The open was already 1.7x the premarket high.
### 4. The Squeeze Mechanics (First 2 Hours)
| Time (ET) | Price | Volume | Notes |
|-----------|-------|--------|-------|
| 09:25 | 3.40 → 4.80 | 1.0M | Pre-market trigger |
| 09:30 | 4.10 → 5.88 | 4.4M | Open + first 5 min |
| 09:35 | 5.90 → 6.45 | 3.3M | Acceleration |
| 09:40 | 6.17 → 6.18 | 1.7M | Consolidation |
| 09:45 | 6.18 → 7.58 | 3.8M | Second wave |
| 09:50 | 7.58 → 8.64 | 3.4M | **High: $9.03** |
| 09:55 | 8.67 → 8.18 | 2.0M | First fade |
| 10:00 | 8.20 → 8.70 | 1.6M | Retest |
| 10:05 | 8.70 → 9.84 | 2.4M | **High: $9.99** |
| 10:10 | 9.83 → 8.45 | 2.1M | Sharp reversal |
| 10:15 | 8.43 → 8.18 | 0.7M | Consolidation |
- **Intraday high: $9.99** (+191% from prior close) at ~10:05 AM ET
- **First 15 min volume: ~13M shares** — 150x the prior day's total
- The 10:05 high at $9.99 was a **psychological round number** — classic momentum exhaustion
- After 10:15, price faded to $6.31 by mid-morning (low of $6.31 at ~11:30)
- **Closed at $7.36** (+114% from prior close) — gave back ~26% of the gains
### 5. Why Mike Edwards Would Have Flagged This
A short-squeeze scanner (or discretionary premarket review) would have scored XPON high on:
1. **Float size**: $3.3M market cap, 10.7M free float — one of the most restricted floats in the market
2. **Volume spike**: 8/19 was 80–250x normal — the "something changed" signal
3. **Price range break**: 8/19 broke the 3-week $3.18–$3.89 range with a $4.90 high
4. **Follow-through**: 8/20–8/22 held above the prior range with elevated volume
5. **Premarket gap**: +8.5% gap to $4.80 before the open — confirming momentum
6. **Premarket volume**: 1.94M shares pre-market = 23x prior day — "the market is paying attention"
7. **Thin liquidity**: 100-share bid/ask sizes = no institutional selling wall, retail/momentum can drive price
8. **Reverse split**: Fresh off a 1-for-12 reverse split — stock was recently reset, new float, new retail interest
9. **Nasdaq compliance regained**: The reverse split was to fix compliance — "clean bill of health" for short-sellers (reduced short borrow risk)
10. **No options market**: No listed options = no hedging mechanism for short-sellers → they can only cover
### 6. What Went Wrong (Post-Open Fade)
- The 10:05 high at $9.99 was a **blow-off top** — no follow-through, sharp reversal
- $9.99 → $6.31 in ~90 minutes = **-37% from the high**
- The close at $7.36 held above the open ($7.77) — "strong" close for a +114% day, but gave back 26%
- **No fundamental catalyst**: Q2 revenue down 32% YoY, net loss, declining cash — this was pure momentum/squeeze, not a fundamental move
- The 8/19 volume spike may have been **positioning by a single entity or small group** rather than broad institutional interest
### 7. Risk Assessment for a Pre-Open Entry
- **Entry**: ~$4.10 (first 5-min close) to ~$5.88 (end of first 5 min)
- **Target**: $9.99 (10:05 high) = +70% to +140% from entry
- **Stop**: $3.40 (pre-market low) = -17% to -42% risk
- **R:R at $4.10 entry**: 70%/17% = 4.1:1 (excellent)
- **R:R at $5.88 entry**: 70%/42% = 1.7:1 (marginal)
- **Risk**: Squeeze stocks can reverse 50%+ in minutes. The 10:05→10:10 fade was $9.84→$8.45 = -14% in 5 minutes.
### 8. Key Takeaway
XPON was a **textbook micro-cap short squeeze setup**:
- Tiny float + volume spike + range break + premarket gap + thin liquidity
- The squeeze worked (191% intraday gain) but faded hard
- The **premarket signals were strong** — a scanner would have ranked this in the top 5-10 premarket names
- The **risk/reward was excellent** at pre-market prices but degraded fast once price ran
- **No fundamental catalyst** = the move was purely mechanical (short covering + momentum)

View File

@@ -1,28 +1,28 @@
# Scan Preferences — run 2026-08-18 (Tue) morning, ~8:03 AM ET (pre-market) # Scan Preferences — run 2026-08-18 (Tue) evening, ~8:25 PM ET (post-close)
## Config (confirmed by operator 2026-08-18 ~8:03 AM ET) ## Config (operator instruction 2026-08-18 ~8:25 PM ET)
1. **Bias:** both — long + short setups. Operator clarified "both" = **single-leg calls and single-leg puts** in the options evaluation. 1. **Bias:** LONGS ONLY (operator-specified).
2. **Time horizon:** shortest DTE possible = **0DTE — expiring today, Tue 2026-08-18** (pre-market run; market opens 9:30 AM ET, ~1.5h to regular open). 2. **Time horizon:** Day/swing holds — post-close run, so all plans target the **next session (Wed 2026-08-19)**. Intraday-0DTE framing from the morning run does not apply to an equity-only, post-close scan. (Inferred from run timing — operator did not state a horizon.)
3. **Asset class focus:** Equities only (both list members are equities; no ETFs in this list). 3. **Asset class focus:** Equities only (both list members are equities; no ETFs in this list).
4. **Watchlist file:** `260818.csv` (2 tickers) 4. **Watchlist file:** `260818.csv` (2 tickers) — operator wrote "26018.csv", resolved to the existing `260818.csv`.
## Tickers (2) ## Tickers (2)
| Ticker | Type | | Ticker | Type |
|--------|------| |--------|------|
| XOS | equity | | XOS | equity (micro-cap, ~$29.7M mkt cap) |
| AMLX | equity | | AMLX | equity (mid-cap pharma, ~$2.3B mkt cap) |
## Standing preferences carried from memory ## Standing preferences carried from memory
- VWAP is the standard intraday reference; pullbacks to VWAP in rising action = long trigger.
- Near-50MA confluence: tickers within ~1% of 50MA flagged as strong confluence (broad filter uses ~3% per stage design). - Near-50MA confluence: tickers within ~1% of 50MA flagged as strong confluence (neither applies today — both gapped far above all MAs).
- Options structure this run: **single-leg calls AND single-leg puts** (operator override of the usual credit-spread preference).
- Bid-ask spread ≤ $0.25 preferred for 0DTE scalps; avoid wide-spread strikes.
- VWAP is the standard intraday reference; pullbacks to VWAP in rising action = long trigger; rejection into resistance = short trigger.
- Multi-target exits (T1/T2/T3) with partials; stop-tighten as targets hit. - Multi-target exits (T1/T2/T3) with partials; stop-tighten as targets hit.
- User polls for progress — keep status updates visible between stages. - User polls for progress — keep status updates visible between stages.
## This run is equity-only
Per this workspace's stage specs (options work removed 2026-08-18), **no options evaluation** — no chain pulls, no strikes, no DTE work. Plans are single-instrument equity entries only.
## Notes ## Notes
- Pre-market run: daily structure from completed prior sessions (Aug 17 close); intraday VWAP/orange-range setup will form at the 9:30 open. Plans should specify pre-market entries where quotes allow, plus open-auction triggers. - Post-close run: all daily data is final for Tue 8/18. After-hours quotes captured at ~8:00–8:25 PM ET.
- List ≤15 → stage 01 passes full list through unchanged (no triage cut). - List ≤15 → stage 01 passes full list through unchanged (no triage cut).

View File

@@ -1,50 +1,46 @@
# Broad Filter Output (Shortlist) — run 2026-08-18 (Tue) # Broad Filter Output (Shortlist) — run 2026-08-18 (Tue) evening, ~8:25 PM ET (post-close)
Input: `shared/260818.csv` → **XOS, AMLX** (2 tickers). Input: `shared/260818.csv` → **XOS, AMLX** (2 tickers).
List ≤ 15 → per workflow rule, **skip triage; full list passes through unchanged**. List ≤ 15 → per workflow rule, **skip triage; full list passes through unchanged**.
Data as of 8:10–8:14 AM ET, 2026-08-18, pre-market (`market_status: early_trading`). All data TTG MCP only. Data as of Tue 8/18 close + AH through ~8:20 PM ET. All data TTG MCP only (`stocks_snapshot_ticker`, `stocks_aggs_custom_bars`, `calculate_support_resistance`) + Benzinga news for catalysts.
## Market regime (SPY/QQQ) ## Market regime (SPY/QQQ, Tue 8/18 close)
| Ticker | PM price | Chg vs prev close | PM VWAP | Notes | | Ticker | Close | Chg | Day O/H/L/C | VWAP | Volume | AH |
|---|---|---|---|---| |---|---|---|---|---|---|---|
| SPY | 769.48 | **−0.41%** (prev 772.67) | 774.17 | PM range 772.51–776.78 | | SPY | 767.45 | **−0.68%** | 768.70 / 769.50 / 766.92 | 768.52 | 43.9M (vs 34.4M prev — above avg) | 767.02 (−0.05%) |
| QQQ | 721.61 | **−1.13%** (prev 729.87) | 731.74 | PM range 729.27–734.58 | | QQQ | 717.51 | **−1.88%** | 720.21 / 722.13 / 715.92 | 719.73 | 49.0M (vs 26.5M prev — ~1.85x) | 716.18 (−0.19%) |
**Regime: risk-off pre-market, tech-led** (QQQ ~2.7x SPY's decline). Idiosyncratic gappers in the watchlist = relative strength into a weak tape. **Regime: risk-off, tech-led.** Both indices closed below VWAP on above-average volume — sellers in control; QQQ down ~2.8x SPY. AH quiet. Context for Wed 8/19: any new long in this list is fighting a weak tape — entry triggers must be conditional, not blind.
## Watchlist snapshot ## Watchlist snapshot
| Ticker | Name | PM price | Chg | Prev close | AH chg | PM VWAP | PM bid/ask | PM/AH vol | Regime fit | | Ticker | Close | Chg | Day O/H/L/C | VWAP | Volume | AH last | AH chg | Regime fit |
|---|---|---|---|---|---|---|---|---|---| |---|---|---|---|---|---|---|---|---|
| XOS | Xos, Inc. | 4.6682 | **+123.35%** | 2.09 | +87.08% (→~3.90) | 3.7622 | 4.66/4.67 ($0.01) | **28.0M shares** (normal ~0.1–0.5M) | Extreme relative strength | | XOS | 4.44 | **+96.65%** | 4.53 / 4.95 / 4.01 | 4.4281 (reg-sess 4.35) | **110.1M sh** (~4x mkt cap) | 4.11 | **−7.4%** | Extreme idiosyncratic strength, fading AH |
| AMLX | Amylyx Pharma | 27.46 (→28.14 by 8:14) | **+28.12%** | 21.43 | +14.28% (→~24.5) | 22.3694 | 27.45/27.60 ($0.15) | 1.27M (8/17 reg sess; last-min PM 42.4K sh) | Strong relative strength | | AMLX | 35.11 | **+63.42%** | 29.91 / 35.39 / 28.00 | 31.4446 (reg-sess 31.97) | **24.0M sh** (19x prev) | 35.02 | −0.3% | Extreme idiosyncratic strength, held AH |
## Catalyst check (Benzinga, via ttg-benzinga `benzinga_news`) ## Catalyst check (Benzinga, `benzinga_news`, Tue 8/18)
- **XOS** — First US Air Force contract: prototype OTA for a deployable mobile battery-energy-storage / EV-charging solution, announced Monday 8/17 after close. AH +86.6% → $3.90, continued to $4.67+ PM. Micro-cap ($29.7M mkt cap). [Xos (XOS) Stock Rallies Over 86% After Hours, 6:04 ET] - **XOS** — First US Air Force contract (prototype OTA for deployable mobile battery-energy-storage / EV-charging solution), announced Mon 8/17 after close. 8 articles today, **nothing new after 1:05 PM ET** — no after-close offering/financing news found. Micro-cap (~$29.7M mkt cap).
- **AMLX** — Phase 3 LUCIDITY topline results **announced 8:00 AM ET today: MET primary endpoint** (55% reduction in L2/L3 hypoglycemic events vs placebo, p=0.000003), all secondary endpoints met, NDA planned by year-end, Breakthrough Therapy designation. Halted 6:55:57 AM ET, resumed 7:25 AM ET. [11:08 UTC headline] - **AMLX** — Phase 3 LUCIDITY topline 8:00 AM ET: **MET primary endpoint** (55% reduction in L2/L3 hypoglycemic events, p=0.000003), all secondary endpoints met, NDA planned by year-end, Breakthrough Therapy. Halted 6:55 AM, resumed 7:25 AM. **1:37 PM ET: HC Wainwright maintains Buy, PT raised $34 → $55.** ⚠️ **4:02 PM ET (after close): announces $350M common stock offering** — at ~$2.3B mkt cap that is ~15% dilution; price/terms not yet in the feed. This is the single most important Wed variable for this name.
## Daily structure (54 daily bars each, TTG `stocks_aggs_custom_bars`) ## Daily structure (TTG bars + `calculate_support_resistance` daily)
| Ticker | Last close (8/17) | MA20 | MA50 | 54d high / low | Structure read | | Ticker | Structure | Key levels |
|---|---|---|---|---|---| |---|---|---|
| XOS | 2.09 | 2.33 | 2.73 | 8.27 (6/3 IPO) / 1.85 (8/14) | Post-IPO downtrend base 1.85–2.75 → +123% gap **through** all structure; extended, not MA-confluent. June supply zones: 3.58–4.64, 5.20–5.48, 6.20 | | XOS | 6/3 IPO (8.27 high) → downtrend → 1.85 low (8/14) → 3-week base 1.85–2.75 → today +97% gap **through** all structure, close 4.44 = **inside June supply zone 3.58–4.64** | Daily S: 3.04 (3t), 2.70 (3t), 2.11 (4t). Daily R: 8.27. Today: PDH 4.95 / PDL 4.01. June supply above: 5.20–5.48 |
| AMLX | 21.43 | 20.91 | 18.29 | 24.60 (8/7 ATH) / 12.62 (7/1) | Multi-month uptrend → PM 27.5–28.1 = **new all-time high breakout**, trend-aligned, extended above MAs | | AMLX | Multi-month uptrend 12.44 (7/1) → 24.60 (8/7 ATH) → pullback 21.28 (8/17) → today +63% **new ATH 35.39**, close 35.11 (99.2% of high) | Daily S: 17.00 (3t), 12.44. Old ATH 24.60 now far below. Open gap 21.43–28.00 wide open. PDH 35.39 (ATH) / PDL 28.00 |
## Options availability (the "shortest DTE" question, answered) ## Intraday S/R (TTG `calculate_support_resistance`, 3-min, Tue 8/18)
| Ticker | 0DTE (8/18) | Nearest listed exp | Detail | - **XOS** — Resistance (heavy congestion): 4.25 (10t), 4.30 (13t), 4.32 (10t), 4.59, 4.73; today's PDH 4.95. Support: 4.01 (PDL). Pre-market opening range 3.33–3.89. **AH price 4.11 = below the 4.25–4.32 congestion, testing 4.01 from below.**
|---|---|---|---| - **AMLX** — Late-day support cluster: 35.02 (48t), 34.90 (28t); resistance 35.09 (4t), 35.39 (ATH), 36.33 (AH high, 4:12 PM). Morning congestion (now support if pulled back to): 33.26 (17t), 33.53 (20t). Reg-sess low 28.00.
| XOS | **Does not exist — no listed options at all** (full chain query empty) | n/a | **Equity-only** for this run |
| AMLX | Empty for 8/18 | **2026-08-21 (Fri) = 1 DTE** | Strikes $1 apart. 8/21 OI around money: calls 20C/361, 28C/194, 33C/178, 35C/101, 40C/104; puts 21P/93, 24P/19, 25P/14 — **zero put OI above 25P**. All quotes 0/0 until 9:30 open. |
**Operator config "shortest DTE possible": XOS = equity only (no options market). AMLX = 8/21 weekly (1 DTE) — that is the shortest DTE that exists for this name.**
## Shortlist (pass-through, unchanged) ## Shortlist (pass-through, unchanged)
1. **XOS** — equity long/short only 1. **XOS** — equity long only (catalyst: Air Force contract)
2. **AMLX** — single-leg calls and puts on 8/21 weekly + equity 2. **AMLX** — equity long only (catalysts: LUCIDITY Phase 3 + $350M offering overhang)
Both pass to Stage 02. Nothing excluded. Both pass to Stage 02. Nothing excluded.

View File

@@ -1,51 +1,61 @@
# Confluence Analysis — run 2026-08-18 (Tue) # Confluence Analysis — run 2026-08-18 (Tue) evening, ~8:25 PM ET (post-close)
As of 8:25 AM ET pre-market. All data TTG MCP (ttg-stocks, ttg-options, ttg-benzinga). Factors evaluated per workspace spec (equity-only): 1) daily structure, 2) intraday setup, 3) volume, 4) relative strength.
Operator config: **single-leg calls AND single-leg puts, shortest DTE possible, equities**. Bias: **longs only**. All data from stage 01 (`shortlist.md`) — no re-pulls.
Confluence dimensions per ticker: (1) catalyst strength/verifiability, (2) daily structure, (3) pre-market/gap structure, (4) volume confirmation, (5) options availability + liquidity, (6) relative strength vs tape.
--- ---
## 1. AMLX — Amylyx Pharmaceuticals (score 5/6) — TOP SETUP ## XOS (Xos, Inc.) — LONG candidate, HIGH RISK
**Catalyst (✓✓):** Phase 3 LUCIDITY (avexitide, post-bariatric hypoglycemia) topline announced 8:00 AM ET today — **primary endpoint MET: 55% reduction in composite L2/L3 hypoglycemic events vs placebo, p=0.000003; all secondary endpoints met (SMBG, CGM, L3); well-tolerated; NDA planned by year-end; Breakthrough Therapy designation.** This is the strongest category of catalyst (confirmed data pass with path to filing), not a rumor or contract-terms-not-disclosed story. ### 1. Daily chart structure — NEGATIVE / mixed
- Post-IPO downtrend base (1.85–2.75, ~3 weeks) launched +97% into **June supply 3.58–4.64**; close 4.44 sits mid-supply, not at a clean level.
- No MA confluence — price is far above every moving average (extended, not confluent).
- First real test of the 4.64 upper supply edge came at 4.95 (10:57) and was sold.
- If it bases here, 4.64–4.95 is the resistance that defines the setup; below, 4.01 (PDL) is the floor of today's range.
**Daily structure (✓):** Multi-month uptrend 12.62 (7/1 low) → 24.60 (8/7 prior ATH) → PM 27.5–28.1 = **new all-time high breakout**. Above MA20 (20.91) by +31% and MA50 (18.29) by +53% — extended, but every day since 8/1 has closed higher or flat; trend-aligned, no overhead structure between PM price and open air. Extension is a risk, not a confluence (fails the user's ~1%-of-50MA filter — noted honestly: this is a breakout play, not a 50MA confluence play). ### 2. Intraday setup — MIXED (fading)
- PM: 3.88 → 5.38 (7:15 AM) → open 4.53. Reg session: low **4.01 @ 10:24** (gap ~70% filled), high **4.95 @ 10:57**, close **4.44** — a full day of distribution after the spike: open high → low → bounce → drift.
- Closed just above reg-sess VWAP (4.44 vs 4.35) but **below all-day VWAP 4.4281? No — 4.44 > 4.4281, barely above**. Effectively closed at VWAP, far off the high (−10.5%).
- **AH: 4.45 → 4.80 (6:00 PM) → 4.11 (7:57 PM), low 4.06. AH −7.4%**, testing 4.01 (PDL) from below. Below the 4.25–4.32 heavy 3-min congestion (10–13 touches).
- Long trigger (Wed): PM/open **holds 4.01 and reclaims 4.25–4.32** on volume, or a 4.01–4.10 shelf that stops bleeding. Without that, no entry.
**Pre-market structure (✓):** +28.1% PM. Halted 6:55:57 AM ET on news, resumed 7:25 AM. PM VWAP 22.37 ≈ 8/17 regular-session VWAP (22.37) = first support confluence; prior ATH 24.60 = second support. Price (28.14 at 8:14) is well above PM VWAP = buying on strength, not a gap-fill setup. ### 3. Volume — NEGATIVE lean
- **110.1M shares on a ~$29.7M mkt cap ≈ 4x market cap in one day.** Front-loaded: 14.4M in 9:00 hr, 12.0M in 10:00 hr, decay to 2.7–2.8M midday, 5.2M in 15:00 hr.
- The fade from 4.95 to 4.44 on that volume + AH bleed reads as **supply/distribution into the June zone**, not quiet accumulation.
**Volume (✓ with caveat):** 8/17 regular session 1.27M sh (above its 0.8–2M normal, below its 3.5M data-day level of 8/6). PM tape: 42.4K sh in the last minute alone. No full PM volume total in the snapshot — flagged; expect 3–5M+ on the open given the data day. ### 4. Relative strength — EXTREME (catalyst-driven)
- +96.65% on a day SPY −0.68% / QQQ −1.88%. Pure idiosyncratic (first Air Force contract). No sector peer to compare; the tape is not helping it.
**Options (◐):** Shortest DTE = **8/21 weekly (1 DTE)** — no 0DTE exists for AMLX. 8/21 OI: **28C 194, 33C 178, 35C 101, 20C 361** (liquid call side); puts: **21P 93, 24P 19, 25P 14, zero OI above 25P** (put side thin — a single-leg put only works at ≤25P or 21P). All quotes 0/0 pre-market — **bid-ask ≤ $0.25 screen must be verified at the 9:30 open** before any option entry. **Confluence: 2.5 / 4** — RS extreme, intraday neutral-fading, daily structure mid-supply, volume distributional. Viable only as a high-risk conditional long (see stage 03).
**Relative strength (✓✓):** QQQ −1.13% / SPY −0.41% PM vs AMLX +28% — fully idiosyncratic strength in a risk-off tape.
**Verdict:** Long-bias, calls primary. Put plan is a low-conviction fade of a data beat — presented per "both" config but explicitly ranked low.
--- ---
## 2. XOS — Xos, Inc. (score 4.5/6) ## AMLX (Amylyx Pharma) — LONG candidate, PRIMARY
**Catalyst (✓✓ real, ◐ size-unknown):** First-ever US Air Force contract — prototype OTA (Other Transaction Agreement) for deployable mobile charging / battery energy storage for electrified support equipment. **Terms not disclosed** (prototype OTA = smaller, non-binding-style award vs a full contract). Announced 8/17 AH. Real strategic catalyst for a $29.7M mkt-cap EV-truck company, but magnitude is unquantified — size the position accordingly. ### 1. Daily chart structure — POSITIVE
- Multi-month uptrend (12.44 → 24.60 ATH 8/7), orderly pullback to 21.28 (8/17), then +63% **new ATH 35.39**. Trend-aligned break, not an extended chase — the prior structure was broken *yesterday-to-today*, with the close at 99.2% of the high.
- 24.60 (old ATH) and the 21.43–28.00 gap are now far below; first real supports for a pullback are the 33.26–33.53 morning congestion and the 28.00 low.
**Daily structure (◐):** Post-IPO downtrend since 6/3 (8.27 high → 1.85 low on 8/14); +123% PM gap reclaims the entire base. **Not** MA-confluent (71% above MA50 2.73, 101% above MA20 2.33). Overhead supply from the June breakdown: **3.58–4.64 zone (heavy volume), 5.20–5.48, 6.20–8.27**. PM price 4.67 has already re-entered the top of the June supply zone — that's resistance, not open air (the key structural difference vs AMLX). ### 2. Intraday setup — POSITIVE (textbook for a long)
- Open 29.91 (gap +39%), **one probe to 28.00 @ 9:42, then a clean all-day grind higher**; new high 15:33 (35.39), close 35.11.
- Close **+11.6% above reg-sess VWAP (31.97)** — the strongest possible VWAP relationship. Late-day effort: 15:00 hr volume 3.2M (highest of the afternoon) into the ATH.
- **AH: held 35.20 → tagged 36.33 (4:12 PM) → 35.02 (−0.3%)** — flat-to-firm in after-hours despite the 4:02 PM offering announcement (thin AH volume: 326K sh; reaction likely deferred to Wed PM/open).
- Wed long trigger: offer-priced action stabilizes — hold above 33.53 and/or reclaim 35.40 on volume.
**Pre-market structure (✓):** +123% from 2.09. AH cluster 3.90–3.91 = first support; PM VWAP 3.76 = second. Price 4.67 > PM VWAP = strength, but the gap from 2.09–2.16 is wide: gap-fill risk (3.38 midpoint, 2.16 full fill) is the standing threat on any dip. ### 3. Volume — POSITIVE in-session, NEGATIVE overhang
- 24.0M shares (19x prior day) with a close at the high = accumulation signature on the data print.
- **BUT the 4:02 PM ET $350M common stock offering (~15% of the ~$2.3B mkt cap) is a known supply event for Wed.** Price/terms not yet published at scan time. Expect gap-down risk to near the offering price, then a base. HC Wainwright PT $55 (1:37 PM) gives a post-offering valuation anchor.
**Volume (✓✓):** **28.0M shares** traded across 8/17 extended + 8/18 PM vs normal 100K–500K — 50–100x normal. The strongest volume confirmation of the day. ### 4. Relative strength — EXTREME
- +63.4% on a day healthcare +1.6%, tech −2.1%. Idiosyncratic (Phase 3 primary endpoint met). Held its gain while the tape sold off — the pattern of a real institutional move.
**Options (✗):** **No listed options exist for XOS** (full chain query empty). The "single-leg call/put, shortest DTE" config is **not executable for XOS** — equity only. This is a workflow fact, stated plainly. **Confluence: 3 / 4** — daily trend-break + close-at-high, extreme RS, constructive intraday; volume factor split by the after-close offering. Best long of the list **if** Wed pricing of the offering is absorbed.
**Relative strength (✓✓):** +123% into a −1.13% QQQ tape.
**Verdict:** Long-bias gap-and-go in equity (momentum entry or pullback to 4.20–4.50). Short variant = fade into 5.20–5.48 June supply — aggressive (fading first-contract micro-cap news), presented per config, ranked low.
--- ---
## Cross-cutting ## Ranking
- **Tape headwind:** risk-off PM (QQQ −1.13%) — both names hold up anyway = genuine idiosyncratic demand. Weak tape raises the chance of a post-open dip into both names' support zones (which is where the pullback entries live). | Rank | Ticker | Score | Read |
- **Liquidity check:** XOS spread $0.01 ✓, AMLX stock spread $0.15 ✓ (both ≤ $0.25). AMLX option quotes unknown until 9:30 — gated. |---|---|---|---|
- **Halt risk:** AMLX halted 6:55–7:25 AM — first 15 min after open can be unstable (auction-driven). Enter AMLX options after the first 5-min bar closes, not in the opening print. | 1 | AMLX | 3/4 | Primary long — ATH close, VWAP +11.6%, offering = defined Wed risk to manage |
- **No 0DTE exists for either name** — the workflow's "shortest DTE" resolves to: XOS equity-only; AMLX 1-DTE (8/21). | 2 | XOS | 2.5/4 | Conditional high-risk long — must hold 4.01 and reclaim 4.25–4.32; AH fade is the enemy |

View File

@@ -1,83 +1,45 @@
# Trade Plans — run 2026-08-18 (Tue) # Trade Plans — run 2026-08-18 (Tue) evening, ~8:30 PM ET (post-close)
Config: **single-leg calls AND single-leg puts, shortest DTE possible, equities.** Config: **longs only, equities only** (no options work per workspace spec). All plans target **Wed 2026-08-19**.
Shortest-DTE resolution: **XOS has no listed options (equity only). AMLX nearest = 8/21 Friday weekly (1 DTE).** Levels from stage 02 confluence analysis (TTG MCP data, Tue 8/18 close + AH).
All quotes TTG MCP, pre-market 8:10–8:33 AM ET. Option bid/ask = 0/0 until 9:30 — **every option entry is gated on a live quote with spread ≤ $0.25 at/after the open.**
Ranks: ★ conviction, 5 = highest.
--- ---
## PLAN 1 — AMLX 8/21/26 28C (long single-leg call) ★★★★★ — PRIMARY ## Plan 1 — AMLX (PRIMARY)
| Field | Value | **Symbol:** AMLX (Amylyx Pharma) — equity long
|---|---| **Side:** Long
| Instrument | AMLX 2026-08-21 Call 28.00 (OI 194 — most liquid ATM strike) | **Thesis:** Phase 3 LUCIDITY winner — new ATH 35.39, closed 99.2% of high at +11.6% above VWAP, 19x volume, held after-hours. Wed risk is the after-close **$350M common offering (~15% dilution; price/terms pending at scan time)** — enter only on evidence it's being absorbed, never blind into the open.
| Side / structure | Buy to open, **single-leg**, 1 DTE | **Entry zone (conditional, two triggers):**
| Thesis | Confirmed Phase 3 LUCIDITY pass (55% reduction, p=0.000003, all secondary endpoints, NDA by year-end, Breakthrough Therapy) + new-ATH breakout + relative strength into a −1.13% QQQ tape. IV event already happened — residual risk is stock price, not event. | - **T-A (preferred):** Wed PM/open stabilizes **above 33.53** (Tue morning congestion 33.26–33.53, 17–20 touches) and builds — bid the 33.53–34.20 zone, no chasing above 34.50.
| Entry trigger | After the **first 5-min bar closes (~9:35 ET)**: AMLX ≥ **$27.00** (holds above prior ATH 24.60 and PM VWAP 22.37) **and** 28C spread ≤ $0.25. Do NOT buy the opening print (name halted 6:55–7:25 AM; auction unstable). | - **T-B (stronger):** reclaim of **35.40** (Tue PDH/ATH) on volume → enter on the reclaim, offering absorbed.
| Alt strike | 33C (OI 178) if 28C premium too wide — higher beta, needs AMLX ~+18% by Friday. | - Skip entirely if: offering prints below ~$33 (deep discount) or Wed opens below 33.26.
| Invalidation (stop) | 5-min close < **$24.50** (prior ATH) → exit. **Time stop:** 11:00 ET, AMLX < $26.00 → exit (1 DTE theta ramps hard post-lunch). | **Stop:** **32.50** (below the 33.26–33.53 congestion cluster; from T-A entry ≈ −2.5 to −5%, from T-B entry ≈ −8%)
| T1 | Option +50% → sell ½ | **Targets:** T1 **35.40** (PDH retest — take 1/3) · T2 **36.35** (Tue AH high) · T3 **37.50** (measured move off Tue range 28.00→35.39 from the open)
| T2 | Option +100% → sell ½ of remainder | **Time horizon:** Day/swing — scale out by Fri if T3 not reached; holding over the offering's settlement week requires T1 hit or price > 35.40.
| T3 | Trail remainder on 5-min structure through 2:30 PM; if AMLX > $30 at 2:30, can hold to Friday expiry (NDA narrative) | **Rationale (confluence):** trend-aligned daily break (new ATH) + close-at-high intraday + extreme relative strength (+63.4% vs health care +1.6%) + late-day volume effort.
| Risk note | New-ATH + 28% extended move = chase risk; the $24.50 invalidation is the whole trade. If AMLX opens < $26, skip the plan entirely. | **Invalidation:** Wed print below **33.26** = congestion failed, offering discount too deep — thesis dead, no entry. Broader biotech tape gap-down > 3% also voids T-A.
**Size note:** half normal size — dilution overhang + $2.3B name in a risk-off tape.
--- ---
## PLAN 2 — AMLX 8/21/26 24P (long single-leg put) ★☆☆☆☆ — CONDITIONAL ONLY ## Plan 2 — XOS (SECONDARY, HIGH RISK, CONDITIONAL)
| Field | Value | **Symbol:** XOS (Xos, Inc.) — equity long
|---|---| **Side:** Long
| Instrument | AMLX 2026-08-21 Put 24.00 (OI 19 — thin; size small). Alt: 21P (OI 93, deep OTM, only works on a violent reversal). | **Thesis:** First Air Force contract, +97% day — but closed mid-June-supply (3.58–4.64) after a distributional fade (4.95 → 4.44) and bled AH to 4.11 (−7.4%), testing 4.01. Only tradeable if the low holds and the tape reclaims congestion.
| Side / structure | Buy to open, single-leg, 1 DTE | **Entry zone (conditional, two triggers):**
| Thesis | Sell-the-news rejection at all-time highs after a +28% PM: fade toward PM VWAP 22.37 / old ATH 24.60. | - **T-A:** Wed PM/open **holds 4.01** (Tue PDL) and reclaims **4.25–4.32** (10–13 touch 3-min congestion) on volume → bid 4.30–4.35.
| Entry trigger | **Conditional:** AMLX opens **≥ $29.50** AND fails to print a new high within 15 min of the open (lower 15-min high on the 5-min) AND 24P spread ≤ $0.25. Otherwise the plan does not exist. | - **T-B:** clean 4.01–4.10 shelf that stops bleeding (two+ failed lower tests) → enter off the shelf.
| Invalidation (stop) | 5-min close above the **opening print** (reclaim of PM-high momentum) → exit. Time stop 11:30 ET if AMLX still > $26.50. | - Skip entirely if: AH/PM breaks 4.01 before any trigger (gap retrace toward 3.58 = thesis dead).
| T1 | AMLX $26.00 → sell ½ | **Stop:** **3.85** (below 4.01 PDL; from 4.30 entry ≈ −10% — micro-cap stop; position size must be small, not the stop)
| T2 | AMLX $24.60 (prior ATH) → sell ½ of remainder | **Targets:** T1 **4.51** (VWAP cluster 4.43–4.51, 1/3) · T2 **4.95** (Tue PDH, 1/3) · T3 **5.25** (Tue PM high zone 5.25–5.38, balance)
| T3 | AMLX $23.60 / trail | **Time horizon:** Day/swing — if T1 unhit by Wed 2 PM, trim to starter size or out; do not hold a broken micro-cap overnight.
| Risk note | **Counter-trend fade of a confirmed data beat — low conviction by construction.** Included to complete the "calls and puts" config; expect it to lose in the base case. If you only take one AMLX side, it's the call. | **Rationale (confluence):** extreme relative strength (+96.65% vs SPY −0.68%) + closed at reg-sess VWAP; offset by mid-supply daily location and 4x-mkt-cap distribution volume.
**Invalidation:** loss of **4.01** = the entire setup. One break, gone.
**Size note:** smallest size of the list — $29.7M mkt cap, 110M shares traded, wide AH spreads (4.10/4.11, but PM book was 4.66/4.67 at $0.01 — verify quotes at entry).
--- ---
## PLAN 3 — XOS equity long (gap-and-go) ★★★★☆ ## Sizing rule (both plans)
Risk-based: fix risk per trade first (e.g., $250–500), derive share count from entry→stop distance. AMLX T-A: (33.53−32.50) ≈ $1.03/sh risk. XOS T-A: (4.30−3.85) = $0.45/sh risk but treat max position as half of AMLX's dollar risk.
| Field | Value |
|---|---|
| Instrument | **XOS common stock — equity only (no options market exists for this name)** |
| Side / structure | Long, intraday |
| Thesis | First-ever USAF contract (prototype OTA, terms undisclosed) + 28M-shr pre-market/AH volume (50–100x normal) + PM already reclaimed the top of the June supply zone (4.64). Micro-cap $29.7M mkt cap → violent both ways. |
| Entry A (pullback) | **$4.20–4.50** fill zone (above PM VWAP 3.76 and AH cluster 3.90), only if 5-min bars hold ≥ $4.00 |
| Entry B (momentum) | 5-min close > **$4.80** on expanding volume |
| Invalidation (stop) | 5-min close < **$3.90** (AH cluster) → out. Hard stop from Entry A: $3.85 (−14%); from Entry B use $4.15 (−13%) or the 3.90 rule, whichever is tighter |
| T1 | **$5.00** round → sell ⅓ |
| T2 | **$5.20–5.48** (June supply: 6/8 high 5.20, 6/5 high 5.48) → sell ⅓ |
| T3 | **$6.20** (June high) or trail on 5-min structure into the close |
| Risk note | OTA terms not disclosed → catalyst magnitude unknown; size for a micro-cap. Wide stop is structural here — halve position size vs a normal stop distance. Gap-fill (3.38 midpoint) is the failure mode; the 3.90 invalidation guards it. |
---
## PLAN 4 — XOS equity short (fade the pop) ★★☆☆☆ — CONDITIONAL ONLY
| Field | Value |
|---|---|
| Instrument | XOS common stock (equity only) |
| Side / structure | Short, intraday |
| Thesis | Fade into the June breakdown supply **$5.20–5.50** (5.48 = 6/5 high; 5.20 = 6/8 high) — the first real overhead wall after open air. |
| Entry trigger | **Conditional:** rejection wick into $5.20–5.50 (15-min high-lower-high on the 5-min + volume contraction). No entry on the first touch — needs a visible rejection. |
| Invalidation (stop) | 5-min close > **$5.75** → out (first supply shelf broken = open air to 6.20/8.27) |
| T1 | $4.67 (PM area / round) → cover ⅓ |
| T2 | $4.00 → cover ⅓ |
| T3 | $3.90 (AH cluster) / trail |
| Risk note | Fading a first-contract micro-cap on real government news is a counter-current trade — take only with a clean rejection signal, and never average a loser here. |
---
## Execution gates (all plans)
1. 9:30 open: verify AMLX option quotes live (bid/ask, ≤ $0.25) before Plan 1/2 entries — pre-market quotes are 0/0 and meaningless.
2. Do not enter AMLX in the first 5 minutes (halt history 6:55→7:25 AM).
3. Market is risk-off (SPY −0.41%, QQQ −1.13%): pullback entries (Plan 1 trigger ≥27.00, Plan 3 Entry A) are the higher-probability fills; momentum entries only on strength confirmation.
4. One position per name at a time. If Plan 1 (AMLX call) and Plan 2 (AMLX put) conditions ever both appear — they won't; they are mutually exclusive by design.
5. Nothing here is a recorded plan — per workflow, plans become binding only if the operator picks one and we record it via the trade-workflow.

View File

@@ -1,37 +1,30 @@
# Summary Card — scan-watchlist run 2026-08-18 (Tue) # Summary Card — Watchlist Confluence Scan (Equities)
**Run:** 2026-08-18 (Tue) ~8:30 PM ET, post-close · **Bias:** longs only · **Watchlist:** `260818.csv` (XOS, AMLX) · **Target session:** Wed 2026-08-19
**Input:** XOS, AMLX (260818.csv) · **Config:** single-leg calls AND puts, shortest DTE, equities · **Data as of:** ~8:33 AM ET pre-market (TTG MCP only) **Tape context:** SPY −0.68% / QQQ −1.88%, both closed below VWAP on above-average volume — risk-off, tech-led. AH calm. Longs are fighting the tape; all entries below are conditional.
## One-liner ---
Both watchlist names gapped up hard on confirmed catalysts into a risk-off tape (QQQ −1.13%): **AMLX passed its Phase 3 LUCIDITY trial** (55% reduction, p=0.000003, NDA by year-end) and **XOS landed its first USAF contract** (prototype OTA, terms undisclosed).
## ⚠️ The "shortest DTE" answer (important) ## 1) AMLX — LONG · Confluence 3/4 · Risk: MEDIUM
- **XOS: no options market exists at all** → equity-only plans. - **Setup:** Phase 3 data break — new ATH 35.39, closed at 99.2% of high, +11.6% above VWAP, 19x volume; held AH at 35.02.
- **AMLX: no 0DTE — shortest listed exp is 8/21 Friday (1 DTE).** Plans built on that weekly. - **Entry:** A) 33.53–34.20 if Wed holds above 33.53 · B) reclaim 35.40 on volume. **Skip if offering prints < ~$33 or open < 33.26.**
- **Stop:** 32.50 · **Targets:** 35.40 / 36.35 / 37.50 (thirds, tighten after T1)
- **Confluence aligned:** trend-aligned daily break · close-at-high intraday · extreme RS (+63.4% vs HC +1.6%)
- **Key risk:** after-close **$350M stock offering (~15% dilution**, price pending) — half size. HC Wainwright PT $55 = post-offering anchor.
## Ranked setups ## 2) XOS — LONG (conditional) · Confluence 2.5/4 · Risk: HIGH
- **Setup:** Air Force contract gap-up +96.7%, but faded 4.95 → 4.44 into June supply (3.58–4.64), AH −7.4% to 4.11 testing 4.01.
- **Entry:** A) hold 4.01 + reclaim 4.25–4.32 on volume → bid 4.30–4.35 · B) 4.01–4.10 shelf holds. **Skip if 4.01 breaks before any trigger.**
- **Stop:** 3.85 · **Targets:** 4.51 / 4.95 / 5.25 (thirds)
- **Confluence aligned:** extreme RS (+96.7% vs SPY −0.68%) · closed at VWAP
- **Key risk:** 110M sh ≈ 4x mkt cap = distribution into supply; $29.7M micro-cap. Smallest size.
| # | Setup | Instrument | Entry | Stop/invalidation | Targets | Conviction | ---
|---|---|---|---|---|---|---|
| 1 | **AMLX data-day long** | 8/21 **28C** (OI 194) | ≥ $27.00 after first 5-min bar, spread ≤ $0.25 | 5-min close < $24.50; or < $26 by 11:00 | opt +50% / +100% / trail | ★★★★★ |
| 2 | **XOS gap-and-go** | equity | A: $4.20–4.50 pullback (hold ≥ $4.00) · B: 5-min close > $4.80 | 5-min close < $3.90 | $5.00 / $5.20–5.48 / $6.20 | ★★★★☆ |
| 3 | **XOS fade** (conditional) | equity short | rejection into $5.20–5.50 only | 5-min close > $5.75 | $4.67 / $4.00 / $3.90 | ★★☆☆☆ |
| 4 | **AMLX sell-the-news** (conditional) | 8/21 **24P** (OI 19, thin) | opens ≥ $29.50 AND fails new-high within 15 min | reclaim of opening print | $26.00 / $24.60 / $23.60 | ★☆☆☆☆ |
## Sitting on hands (not recommended today) ## Sitting on hands
- **AMLX put as a first trade** — fading a confirmed Phase 3 beat is the lowest-probability side of the day; Plan 4 exists only for a visible open-rejection scenario. - **None** — 2-ticker list; both carry conditional plans. (XOS is the one to walk away from fast: one break of 4.01 and it's off the board.)
- **XOS short without rejection** — first-contract micro-cap on real government news; no fading the first touch of 5.20–5.50.
- **Chasing either name if it opens extended past its trigger without the confirmation bar** — risk-off tape makes the pullback fills the better entries.
## Key levels cheat-sheet ## Pre-open checklist (Wed 8/19)
- **AMLX:** 28.14 PM last · 27.00 (entry gate) · 24.60 (old ATH = stop zone) · 22.37 (PM VWAP) · 21.43 (8/17 close) 1. **AMLX offering price/terms** (8-K/pricing announcement, likely pre-open) — the single most important input.
- **XOS:** 4.67 PM · 3.90 (AH cluster = invalidation) · 3.76 (PM VWAP) · 5.20–5.48 (June supply) · 6.20 (June high) · 3.38 (gap midpoint, worst case) 2. SPY/QQQ PM direction vs Tue's risk-off close.
- **Tape:** SPY 769.48 (−0.41%) · QQQ 721.61 (−1.13%) — risk-off backdrop 3. XOS AH/PM: is 4.01 holding?
## Execution gates
1. AMLX option quotes are 0/0 pre-market — **verify live spread ≤ $0.25 after 9:30** before any option entry.
2. No AMLX entry in the first 5 minutes (6:55–7:25 AM halt history).
3. XOS is equity-only — "single-leg call/put" is not executable for this name; say so if asked.
4. Nothing here is a recorded/binding plan — pick a plan and it gets recorded via the trade workflow first.
**Stage artifacts:** `01_broad_filter/output/shortlist.md` · `02_confluence_analysis/output/confluence_analysis.md` · `03_trade_plan/output/trade_plans.md` · this card.

View File

@@ -0,0 +1,90 @@
# XPON Short Squeeze — Premarket Signal Reconstruction (2026-08-24)
## The Setup: What a Pre-Open Scanner Would Have Flagged
### 1. Extreme Float Restriction
- **Free float: 10,684,515 shares** (93.4% of share class)
- **Total shares outstanding: ~962,335** (weighted: 953,191)
- **Market cap: $3.27M** — deep micro-cap
- **22 employees**, listed 2022-04-01, NASDAQ (XNAS)
- **1-for-12 reverse split** (effective ~2026 Q2) to regain Nasdaq compliance
- A ~$3.30M market cap with 10.7M free float = tiny tradable universe. Any meaningful buy-side interest moves the tape fast.
### 2. 8/19 Volume Blowout — The "Accumulation Day"
| Metric | 8/19 (Thu) | Prior days (typical) |
|--------|-----------|---------------------|
| Close | $4.43 | $3.30–$3.74 |
| High | $4.90 | $3.30–$3.74 |
| Volume | **83,482 shares** | ~300–1,000 shares |
| $ Volume | $7.37M | <$5K |
- Volume was **~80–250x** the prior 10-day average (~300–700 shares/day).
- Price went from a 3-week range of $3.18–$3.89 to a **$4.90 intraday high** — a break above the established range.
- Close at $4.43 held well above the prior range — this is an **accumulation/reversal bar**, not a failed spike.
- The 8/20–8/22 follow-through: volume stayed elevated (3.8K, 1K, 680) vs. the prior 1K baseline, and price held above $3.60 — confirming the 8/19 move wasn't a one-day fluke.
### 3. Premarket 8/24: The Trigger
- **Pre-market high: $4.80** (09:24 ET, first 5-min bar: o:3.56 c:4.10 h:4.80 l:3.40, v:1,047,600)
- That's a **+8.5% gap** above the 8/23 close of $3.435.
- **Pre-market volume: ~1.94M shares in the first hour** (vs. 83K the prior full day) — **23x the prior day's total volume before the open**.
- The quote tape shows **bid/ask sizes at 100 shares** throughout pre-market — no institutional size was visible. This was **retail/momentum-driven**, not institutional.
- The 09:30 open printed at **$7.77** — a **126% gap** above prior close. The open was already 1.7x the premarket high.
### 4. The Squeeze Mechanics (First 2 Hours)
| Time (ET) | Price | Volume | Notes |
|-----------|-------|--------|-------|
| 09:25 | 3.40 → 4.80 | 1.0M | Pre-market trigger |
| 09:30 | 4.10 → 5.88 | 4.4M | Open + first 5 min |
| 09:35 | 5.90 → 6.45 | 3.3M | Acceleration |
| 09:40 | 6.17 → 6.18 | 1.7M | Consolidation |
| 09:45 | 6.18 → 7.58 | 3.8M | Second wave |
| 09:50 | 7.58 → 8.64 | 3.4M | **High: $9.03** |
| 09:55 | 8.67 → 8.18 | 2.0M | First fade |
| 10:00 | 8.20 → 8.70 | 1.6M | Retest |
| 10:05 | 8.70 → 9.84 | 2.4M | **High: $9.99** |
| 10:10 | 9.83 → 8.45 | 2.1M | Sharp reversal |
| 10:15 | 8.43 → 8.18 | 0.7M | Consolidation |
- **Intraday high: $9.99** (+191% from prior close) at ~10:05 AM ET
- **First 15 min volume: ~13M shares** — 150x the prior day's total
- The 10:05 high at $9.99 was a **psychological round number** — classic momentum exhaustion
- After 10:15, price faded to $6.31 by mid-morning (low of $6.31 at ~11:30)
- **Closed at $7.36** (+114% from prior close) — gave back ~26% of the gains
### 5. Why Mike Edwards Would Have Flagged This
A short-squeeze scanner (or discretionary premarket review) would have scored XPON high on:
1. **Float size**: $3.3M market cap, 10.7M free float — one of the most restricted floats in the market
2. **Volume spike**: 8/19 was 80–250x normal — the "something changed" signal
3. **Price range break**: 8/19 broke the 3-week $3.18–$3.89 range with a $4.90 high
4. **Follow-through**: 8/20–8/22 held above the prior range with elevated volume
5. **Premarket gap**: +8.5% gap to $4.80 before the open — confirming momentum
6. **Premarket volume**: 1.94M shares pre-market = 23x prior day — "the market is paying attention"
7. **Thin liquidity**: 100-share bid/ask sizes = no institutional selling wall, retail/momentum can drive price
8. **Reverse split**: Fresh off a 1-for-12 reverse split — stock was recently reset, new float, new retail interest
9. **Nasdaq compliance regained**: The reverse split was to fix compliance — "clean bill of health" for short-sellers (reduced short borrow risk)
10. **No options market**: No listed options = no hedging mechanism for short-sellers → they can only cover
### 6. What Went Wrong (Post-Open Fade)
- The 10:05 high at $9.99 was a **blow-off top** — no follow-through, sharp reversal
- $9.99 → $6.31 in ~90 minutes = **-37% from the high**
- The close at $7.36 held above the open ($7.77) — "strong" close for a +114% day, but gave back 26%
- **No fundamental catalyst**: Q2 revenue down 32% YoY, net loss, declining cash — this was pure momentum/squeeze, not a fundamental move
- The 8/19 volume spike may have been **positioning by a single entity or small group** rather than broad institutional interest
### 7. Risk Assessment for a Pre-Open Entry
- **Entry**: ~$4.10 (first 5-min close) to ~$5.88 (end of first 5 min)
- **Target**: $9.99 (10:05 high) = +70% to +140% from entry
- **Stop**: $3.40 (pre-market low) = -17% to -42% risk
- **R:R at $4.10 entry**: 70%/17% = 4.1:1 (excellent)
- **R:R at $5.88 entry**: 70%/42% = 1.7:1 (marginal)
- **Risk**: Squeeze stocks can reverse 50%+ in minutes. The 10:05→10:10 fade was $9.84→$8.45 = -14% in 5 minutes.
### 8. Key Takeaway
XPON was a **textbook micro-cap short squeeze setup**:
- Tiny float + volume spike + range break + premarket gap + thin liquidity
- The squeeze worked (191% intraday gain) but faded hard
- The **premarket signals were strong** — a scanner would have ranked this in the top 5-10 premarket names
- The **risk/reward was excellent** at pre-market prices but degraded fast once price ran
- **No fundamental catalyst** = the move was purely mechanical (short covering + momentum)