Skip to content
Back to skills

Congress Trades

BSecurity

Track US congress member and politician stock trades in real-time using the Quiver Quant API. Syncs trades to a local SQLite database, detects new significant trades above 15K, and sends alerts via OpenClaw messaging. Only requires Python with the requests library and a QUIVER_API_KEY environment variable. Use when setting up congressional trade monitoring, politician stock trade alerts, insider trading surveillance, or tracking what senators and representatives are buying and selling.

  • 33 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added May 30, 2026
databasespythonshellbashsqlapidatabase

Works with

  • api

Security analysis

B85/100
  • highCreates or modifies cron jobs for persistent execution
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 2 files and shows the line behind each finding

Scanned May 30, 2026

npx -y skills add dvcrn/openclaw-skills-marketplace --skill congress-trades --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Congress Trades?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Congress Trades
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/dvcrn-congress-trades/badge)](https://www.skillsdirectory.com/skills/dvcrn-congress-trades)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: congress-trades
description: "Track US congress member and politician stock trades in real-time using the Quiver Quant API. Syncs trades to a local SQLite database, detects new significant trades above 15K, and sends alerts via OpenClaw messaging. Only requires Python with the requests library and a QUIVER_API_KEY environment variable. Use when setting up congressional trade monitoring, politician stock trade alerts, insider trading surveillance, or tracking what senators and representatives are buying and selling."
---

# Congress Trades Tracker

Monitor US congressional stock trades via Quiver Quant API, store in a local SQLite database, and alert on new significant trades. Requires Python `requests` library and a Quiver Quant API key.

## Requirements

- Python 3.10+ with `requests` (`pip install requests`)
- **QUIVER_API_KEY** environment variable (get a key at https://www.quiverquant.com/)

## Environment Variables

| Variable | Required | Default | Description |
|---|---|---|---|
| QUIVER_API_KEY | **Yes** | — | Quiver Quant API token |
| CONGRESS_DB_PATH | No | data/congress_trades.db | SQLite database path |
| MIN_TRADE_AMOUNT | No | 15001 | Minimum trade amount to trigger alerts |

Set these in your shell profile, `.env` file, or cron environment. Never hard-code API keys in the script.

## Setup

### 1. Install Python dependency

```bash
pip install requests
```

### 2. Set your API key

```bash
export QUIVER_API_KEY="your-api-key-here"
```

### 3. Schedule with user cron (no sudo needed)

Add your env vars to `~/.profile` or a `.env` file sourced by your shell, then add the cron entry:

```bash
crontab -e
# Add this line (uses env vars from your profile):
* * * * * . "$HOME/.profile" && /usr/bin/python3 /path/to/scripts/scraper.py >> /path/to/logs/scraper.log 2>&1
```

Never inline API keys directly in crontab entries.

### 4. Set up OpenClaw alert pickup

Add to your `HEARTBEAT.md`:

```markdown
## Check for congress trade alerts
- Read `congress_trades/data/pending_congress_alert.txt` — if it has content, send the alert to the user, then delete the file.
```

Or create an OpenClaw cron job (every 5 min) to check and forward alerts.

## How It Works

1. Scraper runs every minute, fetches latest 200 trades from `api.quiverquant.com`
2. Inserts into local SQLite with unique trade_key deduplication
3. First run initializes DB and reports newest trade
4. Subsequent runs detect new trades, filter to buys/sells above threshold
5. Writes formatted alert to `data/pending_congress_alert.txt` for OpenClaw pickup
6. Keeps last 50 alerts in `data/new_trades.json`

## Network and Data

- **Only outbound connection**: `api.quiverquant.com` (Quiver Quant API)
- **Storage**: local SQLite file + JSON alert files in `data/`
- **No external endpoints** besides the Quiver API
- Restrict file permissions on data directory (`chmod 700 data/`)

## Alert Format

```
🏛️ 3 new congress trade(s) detected:

🟢 PURCHASE: Nancy Pelosi (D) [Rep]
   $NVDA — $1,000,001 - $5,000,000
   Trade: 2026-02-10 | Reported: 2026-02-14

🔴 SALE: Dan Crenshaw (R) [Rep]
   $MSFT — $15,001 - $50,000
   Trade: 2026-02-09 | Reported: 2026-02-14
```

## Customization

- **MIN_TRADE_AMOUNT**: raise/lower via env var to change alert threshold
- **Fetch limit**: change `limit=200` in `fetch_trades()` for broader sweeps
- **Cron frequency**: reduce to every 5 or 15 minutes if you prefer less polling

Files in this skill

  • SKILL.md3.4 KB
  • scripts/scraper.py8.1 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.