Fintech

Cohort live 2026-05-07

GammaRips

Autonomous overnight options-flow scanner. Picks one V5.3 contract per day with pre-set stop and target. Every paper trade published, win or loss.

Fourteen Cloud Run services, ~20 schedulers, and a multi-agent publishing layer that filters market noise into one tracked, public, mechanically-held trade idea per day.

Problem

The problem.

Retail options traders drown in "unusual activity" feeds that are mostly noise: hedges, dealer offsets, multi-leg spreads, late prints. Existing UOA tools dump everything and let users sort it; false signals are the norm and outcomes are never tracked. Buy-side gets Bloomberg and quants. Retail gets newsletters that brag about wins and bury losses.

Approach

How I built it.

  • Four gated stages run overnight on Google Cloud. The scanner pulls option chains across an equity universe, scores overnight unusual activity, and writes raw candidates to BigQuery.
  • An enrichment service applies literature-anchored gates (overnight score ≥ 1, spread ≤ 8%, directional UOA > $500K).
  • A signal-notifier layers V5.3 quality filters (V/OI > 2.0, 5 to 10% out-of-the-money, VIX ≤ VIX3M, no earnings overlap), ranks deterministically, and writes one pick (or none) to Firestore.
  • A forward-paper-trader simulates V5.3 entry rules (10:00 ET entry, −60% stop, +80% target, 3-day hold) against Polygon minute bars and writes every outcome to a versioned ledger.
  • A separate multi-agent publishing layer (Google ADK) handles X, blog, and Reddit posts. Pattern: Planner → Writer → Reviewer LoopAgent → Publisher. A deterministic compliance rubric is enforced twice: at the EscalationChecker and again at the Publisher.
  • Every Gemini call from every instrumented service lands in a BigQuery trace table; an eval pipeline runs LLM-as-judge weekly and writes digests to its own table.

Architecture

What's running, and why.

Cloud Run services (14 production)

overnight-scanner
Generates raw flow candidates from Polygon + a GCS ticker universe.
enrichment-trigger
Score / spread / UOA gates → overnight_signals_enriched.
signal-notifier
V5.3 quality stack, dual-writes today's pick, fires the operator email.
forward-paper-trader
V5.3 paper execution against minute bars, plus an IV cache.
win-tracker
Outcome tracking, signal_performance writes, 30-trade gate watcher.
overnight-report-generator
Gemini synthesis → daily_reports/{date}.
x-poster
ADK 4-agent X publisher; 7 post types behind POST /post.
blog-generator
ADK weekly blog post pipeline rendered by webapp /blog.
reddit-poster
Distraction-frame drafter to gs://gammarips-reddit-drafts/{date}/.
gammarips-eval
Gemini-as-judge over llm_traces_v1, monitoring-only.
gammarips-mcp
18-tool MCP attack surface for the sandboxed gammarips-bot.
gammarips-webapp
Next.js on Firebase App Hosting (gammarips.com).

BigQuery (profit_scout)

Signal pipeline
overnight_signals → overnight_signals_enriched → forward_paper_ledger.
Frozen training set
signals_labeled_v1 (immutable backtest substrate).
Reference data
polygon_iv_history, signal_performance.
LLM observability
llm_traces_v1 / llm_eval_results_v1. Every Gemini call, every weekly judge run.

LLMs

Gemini
Report synthesis, blog and X-poster Writer + Reviewer agents, eval LLM-as-judge, MCP-fronted gammarips-bot.

Data sources

Polygon
Option chains and minute bars.
FRED
VIX and VIX3M for term-structure gating.
FMP
Earnings calendar (/stable/earnings-calendar) and news.

Orchestration

Cloud Scheduler
~20 cron jobs, all America/New_York, gating each pipeline stage.
Pub/Sub
Fan-out between stages so failures isolate cleanly.
Firestore
Runtime state: today's pick, cohort_stats/current, blast_killswitch, park_watchdog.

Shared libs (vendored at deploy)

libs/trace_logger
Single instrumentation point for every Gemini call.
libs/gammarips_content
Compliance rubric and voice rules consumed by every publishing agent.

Email

Mailgun
Operator preview + Mon 05:30 ET auto-blast, kill-switchable from Firestore.

Outcome

What shipped.

Trade #1 live

Cohort opened 2026-05-07 (NVAX BULLISH, exits 5/12)

14 services

Production Cloud Run + ~20 Cloud Scheduler crons

211 users

Registered webapp users in Firestore

~9 min

Enrichment runtime over ~70 tickers/day

Every call

Gemini calls instrumented to llm_traces_v1; weekly judge digests written

Pending

Win-rate, latency, MRR, gated until 30-trade public-track-record threshold

Stack

  • Python 3.12
  • Flask
  • Gunicorn
  • Google ADK
  • Gemini Enterprise
  • Gemini
  • Cloud Run
  • Cloud Scheduler
  • Pub/Sub
  • BigQuery
  • Firestore
  • GCS
  • Firebase App Hosting
  • Next.js
  • TypeScript
  • Polygon
  • FRED
  • FMP
  • Mailgun
  • pandas
  • pandas-ta

What this proves

Where this ports.

Multi-agent LLM publishing with a deterministic compliance gate (Planner, Writer, Reviewer LoopAgent, rubric scored at both EscalationChecker and Publisher) reproduces for any team that needs auditable, voice-consistent autonomous content. The same scaffold ports to ticketing, RFP drafting, or compliance-bound research notes: anywhere a human reviewer is the bottleneck and the rubric is encodable.

Want the same pattern in your business?

Thirty minutes. Describe what you're working on and I'll tell you if I can ship it.