ClousDocs
Recipes

Insider-trade signal feed

Track large Form 4 insider sells for a company and turn them into a tradeable signal.

Insider-trade signal feed

Surface meaningful Form 4 insider activity — large open-market sells by officers and directors — and filter out the noise (grants, tax withholding) to get a clean signal.

Prerequisites

  • A Clous API key — get one free. export CLOUS_API_KEY=clous_live_...

1. Recent insider transactions for a company

GET /v1/insider?ticker=NVDA&limit=10
curl -s "https://api.clous.ai/v1/insider?ticker=NVDA&limit=10" \
  -H "Authorization: Bearer $CLOUS_API_KEY"
import os, requests
H = {"Authorization": f"Bearer {os.environ['CLOUS_API_KEY']}"}
r = requests.get("https://api.clous.ai/v1/insider",
                 params={"ticker": "NVDA", "limit": 10}, headers=H)
trades = r.json()["data"]
const r = await fetch("https://api.clous.ai/v1/insider?ticker=NVDA&limit=10",
  { headers: { Authorization: `Bearer ${process.env.CLOUS_API_KEY}` } });
const { data: trades } = await r.json();

2. Isolate large open-market sells

trans_code=S is an open-market sale; min_value_usd filters by trade size (shares × price). This drops grants (A), exercises (M), and tax withholding (F).

curl -s "https://api.clous.ai/v1/insider?ticker=NVDA&trans_code=S&min_value_usd=1000000" \
  -H "Authorization: Bearer $CLOUS_API_KEY"

3. Inspect one filing in full

For the structured detail of a single Form 3/4/5 — every owner, trade, holding, and footnote — hit the per-filing endpoint with the accession:

curl -s "https://api.clous.ai/v1/filings/0001140361-26-020871/insiders" \
  -H "Authorization: Bearer $CLOUS_API_KEY"

Each transaction includes a computed value (shares × price) and a human transaction_type ("Open-market or private sale").

How it works

/v1/insider is the bulk, queryable feed; /v1/filings/{accession}/insiders is the full structured parse of one filing. The SEC transaction codes (P, S, A, M, F, G…) are what trans_code filters on.

To get pushed the moment an insider sells, create a monitor on target_type: ticker, target_value: "NVDA", signals: ["sec.form4.insider_sell"].

Next steps

On this page