Workflow composite that runs five filing / ownership skills on a single ticker (8-k-scanner + risk-factor-delta + filing-sentiment + insider-flow + analyst-tracker) and returns a unified fundamental report with a cross-source verdict (predominantly_constructive / predominantly_concerning / mixed / no_clear_signal). Handles entitlement gaps gracefully. Requires Stocks Basic; analyst-tracker section skipped without Benzinga Analyst Ratings.
Scanned 9/6/2026
Install to Claude Code
npx -y skills add rgourley/quant-garage --skill filing-triangulation --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Filing Triangulation?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/rgourley-filing-triangulation)More formats (shields.io, HTML) on the badges page.
---
name: filing-triangulation
description: Workflow composite that runs five filing / ownership skills on a single ticker (8-k-scanner + risk-factor-delta + filing-sentiment + insider-flow + analyst-tracker) and returns a unified fundamental report with a cross-source verdict (predominantly_constructive / predominantly_concerning / mixed / no_clear_signal). Handles entitlement gaps gracefully. Requires Stocks Basic; analyst-tracker section skipped without Benzinga Analyst Ratings.
---
# filing-triangulation
You hand over a ticker. The workflow runs five fundamental skills in
sequence and returns a unified report with a cross-source verdict:
- **`8-k-scanner`** — material events over the last 90 days
- **`risk-factor-delta`** — 10-K risk factor YoY changes
- **`filing-sentiment`** — LM tone shift on 10-K narrative sections
- **`insider-flow`** — Form 4 signal-vs-noise + cluster buys
- **`analyst-tracker`** — sell-side ratings and consensus PT
Answers "what is the full fundamental picture on this name?" — the
integrated view I've been building manually every time you asked me
to look at ALLO or NVDA.
## When to invoke
- Deep-dive on a single name before a position decision
- Pre-portfolio review triage
- Fundamental analyst prep for a call
- The user says "full fundamental read on X", "triangulate X",
"everything you know about X"
Not for: watchlist scans (one ticker at a time; this is 5+ API
call sequences). Not for real-time (all data sources are
snapshot / filing-based).
## What you need
- A ticker (`--ticker`)
- `MASSIVE_API_KEY` exported
- Stocks Basic minimum
- Optional: Benzinga Analyst Ratings entitlement (analyst-tracker
section will emit NOT_AUTHORIZED without it and skip gracefully)
Optional:
- `--lookback-days-8k` (default 90)
- `--lookback-days-insider` (default 180)
- `--lookback-days-analyst` (default 180)
- `--exclude-directors` (pass through to insider-flow)
## What you get back
**Layer 1: canonical JSON** with the full output of each sub-skill
nested under `eight_k_scanner`, `risk_factor_delta`,
`filing_sentiment`, `insider_flow`, `analyst_tracker`. Plus a
top-level `triangulation` block with `verdict`, `bullish_signals`,
`concerns`, `other_signals`.
**Layer 2: rendered note**. Verdict header + concerns / bullish
signals list + per-sub-skill summary blocks.
## How it works
1. Runs each sub-skill in sequence with error catching. If any
sub-skill raises (entitlement, empty data, etc.), records the
error and moves on.
2. Cross-reads the outputs to build a triangulation:
- Bullish signals: insider cluster buys, analyst upgrades,
ensemble consensus PT premium, positive M&A / leadership news
- Concerns: negative tone shift, new risk categories, insider
selling, analyst downgrades, restatement filings
3. Verdict:
- `predominantly_constructive`: >=2 bullish, <=1 concern
- `predominantly_concerning`: >=3 concerns, 0 bullish
- `mixed`: >=1 bullish AND >=2 concerns
- `no_clear_signal`: everything else
## Fallbacks
If a sub-skill fails, the `sub_skill_errors` block reports the
failure and the triangulation is built from what remains. Missing
Benzinga analyst-tracker just drops the sell-side lens.
## Endpoints used (via sub-skills)
- `/stocks/filings/8-K/vX/disclosures`
- `/stocks/filings/vX/risk-factors`
- `/stocks/filings/10-K/vX/sections`
- `/stocks/filings/vX/form-4`
- `/benzinga/v1/ratings`
## Doesn't handle (yet)
- **Batch mode.** One ticker per run. A watchlist mode would
iterate + summarize, but the per-ticker output is already dense.
- **Time-series triangulation.** A single point-in-time verdict;
no rolling history.
- **Price context.** No overlay of the fundamental verdict against
the current price / RS / vol regime.
- **Options overlay.** Not chained to options-flow or
zero-dte-gamma.
These are clean composite extensions.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!