How BZsignals Works

A daily automated pipeline that screens stocks, scores them with AI, tracks OTM call options, and emails you when something is worth entering.

The Strategy

Every weekday after market close, BZsignals scans all NASDAQ and NYSE stocks against 9 screening filters to find stocks in a strong uptrend with room to move. Candidates that pass have their best OTM call fetched and are reviewed by Claude AI. If Claude issues an ENTER signal, the system records a 3-month just-OTM call option at that evening's market close and tracks it until a mechanical exit rule fires.

The 9 Screening Filters

All 9 must pass for a stock to enter AI scoring.

1

Price ≥ $10

Sub-$10 stocks have structurally wide option spreads and thin open interest

2

Avg Daily Dollar Volume ≥ $10M

Equity turnover proxy — below this threshold options chains are almost always unusable

3

Price > EMA 50

Stock is above its 50-day trend

4

Price > EMA 200

Stock is above its 200-day trend

5

EMA 50 > EMA 200

Short-term trend above long-term (golden cross zone)

6

3-Month Performance > 10%

Strong recent momentum

7

RSI(14) below 70

Not overextended — stocks above 70 are parabolic and likely to mean-revert

8

ATR(14) 4–9% of price

Enough movement to make an option worthwhile, not so volatile the premium is prohibitive

9

Market Cap > $1B

Established enough to have liquid options

+ Estimated next earnings date is passed to Claude as context. Trades with earnings near expiry are scored down or rejected by the AI.

Daily Pipeline

Evening Runner — 4:30 PM EST weekdays
1
Screen stocks~5–7 min

Pulls all NASDAQ/NYSE stocks, applies all 9 filters, saves new signals. Takes ~5–7 min.

2
Claude AI scoring~1–5 min

For each screened stock, fetches the best just-OTM call (90–120 DTE) from Polygon then calls Claude with full stock + option context for a 0–100 score and enter/no-enter decision. Skips stocks with no tradeable option. ~1–2 sec per stock.

3
Update forward returns~5–10 min

Fills in the 1M/2M/3M/4M stock return columns for historical signals that now have enough price history.

4
Append daily prices~5–10 min

Adds today's OHLCV price row for every signal still within its 84-day forward tracking window.

5
EOD option snapshot~seconds

For every open position, fetches today's option bid/ask/mid/IV/delta/theta/vega/gamma from Polygon and stores it for the P&L chart.

6
Exit rule check~seconds

Checks every open position against 3 mechanical exit rules using EOD prices. Records the close mid and marks the position closed — final, no next-morning step.

7
Nightly email digestemail

Sends one consolidated email with everything: ENTER signals (with EOD option snapshot), any POSITIONS CLOSED today (with P&L), and a full summary of all stocks scored tonight.

Scoring System

Claude AI Score0–100

For each stock that passes the 9 filters, the system fetches the best just-OTM call (90–120 DTE) from Polygon. The option must clear 4 quality gates before Claude sees it: open interest ≥ 100, delta ≥ 0.15, mid ≥ $0.50, and spread < 20% of mid. Claude then scores the trade 0–100 across four dimensions — technical momentum (0–30), option pricing attractiveness (0–25), risk/reward profile (0–25), and market regime alignment (0–20) — and issues an independent ENTER decision. Disqualifying factors that force enter=false regardless of score: earnings within 14 days, IV so elevated a pullback would crush the option, or a parabolic move likely to mean-revert.

Enter Signalenter = true

When Claude marks enter=true, it appears in that night's nightly digest email with the full rationale and option snapshot. The entry is recorded at that evening's market close — the same run that sends the email.

Mechanical Exit Rules

Checked every evening after the EOD option snapshot. No manual decisions — all exits are automatic.

1
Time Stop≤ 30 days to expiry

Option is too close to expiration to hold. Closed unconditionally regardless of profit/loss.

2
Hard StopStock −15% from entry

Stock has broken down meaningfully below entry. The thesis has failed — cut the loss.

3
Day-45 RuleDay 45–52, stock flat or negative

If after 45 days the stock hasn't moved above entry, the thesis hasn't played out. Exit and redeploy capital.

Email Alerts

Nightly Digest

~5 PM EST, every weekday — one email with everything

Always sent. Sections appear as needed: ENTER SIGNALS (ticker, score, rationale, EOD option snapshot), POSITIONS CLOSED (exit reason, stock P&L, option P&L, days held), and ALL SCORED TONIGHT (every stock Claude reviewed). Subject line reflects the night's highlights — e.g. "BZsignals ENTER: WT" or "BZsignals Daily — 4 scored, no enters".

Option Tracking

Entry Recorded

~5 PM EST, evening of signal

  • EOD stock price
  • Contract ticker
  • Strike & expiry
  • Bid / Ask / Mid
  • IV, Delta

Daily Snapshot

~5 PM EST, every market day from Day 1

  • Stock price
  • Bid / Ask / Mid
  • IV, Delta, Theta
  • Vega, Gamma
  • Trailing high updated

At Exit

~5 PM EST, evening exit rule fires

  • Exit reason
  • EOD stock price
  • EOD option close mid
  • Days held
  • Final P&L on Analysis page

App Pages

Signals/signals

Full historical database of every stock that passed the 9 filters. Sortable and filterable by sector, date, score, and all technical columns. Expand any row to see the 84-day price chart. Use the Entered & Closed view (pill button) for a track record of all entered positions with win stats.

Analysis/analysis

Tracks every stock Claude issued an ENTER signal for. Shows option entry details (including entry stock price), current P&L tracked via daily snapshots, exit reason when closed, and summary stats (win rate, avg return vs baseline). Expand any row to see a daily Greeks chart (Delta %, IV %, Theta cost).

Admin/admin

Manual controls for the data pipeline. Trigger the full daily job, backfill prices, or run Claude scoring manually. Shows DB health stats.

Help/help

This page.