Congress stock trades data
Every stock trade a member of the US House disclosed since 2015, read from the members’ periodic transaction reports and linked to each one. Free to use with credit to OptimistFi (CC BY 4.0). No key, no sign-up.
Congress trades, daily · free
Every stock trade Congress and the executive branch disclose, in one email a day
Each report filed since the last email: who traded, how many trades, which stocks, and a link to the filing.
Congress trades, daily: one email a day with each stock trade report members of Congress and the executive branch filed since the last, with the filing. Nothing on days with none. Unsubscribe in one click.
Download the dataset
OptimistFi/house-stock-trades on Hugging Face: one CSV of trades per year and filings.csv, every report on the Clerk’s roster with how many trades were read from it, or why none were. Rebuilt daily. In Python:
from datasets import load_dataset
trades = load_dataset("OptimistFi/house-stock-trades", split="train")Trades read from scans of paper forms are marked scanned_form; one is kept only where every box and date on its line reads unambiguously.
JSON, one file per year
https://mcp.optimistfi.com/datasets/house/<year>.json: every trade in the reports filed that year, as the site reads them, updated within the hour of a report reaching the Clerk’s site. A file changes at most hourly, so fetch it once and keep it rather than per page view.
| Field | What it holds |
|---|---|
politician, state_dst, party | The member as the Clerk's roster names them, their district ("CA11") and their party on the trade date |
doc_id, filing_date | The report's Clerk id (its PDF is ptr-pdfs/<year>/<doc_id>.pdf) and the day it reached the Clerk's public site |
owner, account | Spouse, joint or dependent child (empty: the member), and the account the report names, without its number |
asset, ticker, asset_type, sector, industry | The asset as filed, its ticker where the report or the SEC's list gives one, the report's asset code (ST, OP, GS…) and the company's SEC industry |
txn_type, partial_sale, exercise | buy, sell or exchange; whether a sale was partial; whether the description says options were exercised |
txn_date, disclosure_date | The trade date and the report's notification date, as filed |
amount_low, amount_high | The disclosed range in dollars; amount_high is empty for an "Over" band |
cap_gains_over_200, description | The report's capital-gains box and its own description line |
filing_status | new, amended (re-reports a trade an earlier report listed) or deleted (withdrawn; not a trade) |
source_quality | scan when the trade was read from a scanned paper form's image, ocr when only its text could be read (no amount) |
date_anomaly, account_not_read | Flags where the report's dates contradict each other, or its account could not be read |
RSS feeds
The newest 100 trades, newest report first, each with the member, the stock, the amount, the dates and a link to the report.
- https://optimistfi.com/congress/feed.xml: every member
- https://optimistfi.com/congress/feed.xml?member=nancy-pelosi: one member, by the name in their page’s address
- https://optimistfi.com/congress/feed.xml?ticker=NVDA: one stock
A widget for your site
The newest trades in a card any page can show: paste the code below. It updates itself as reports reach the Clerk’s site, follows your reader’s light or dark setting, and links each trade to its report. Free, no signup.
<iframe src="https://optimistfi.com/embed/congress" title="Stock trades by members of the House" width="100%" height="758" style="display:block;width:100%;max-width:560px;border:0;border-radius:14px;overflow:hidden" loading="lazy"></iframe>
<p style="font-size:12px">Stock trades by members of the House tracked by <a href="https://optimistfi.com/congress">OptimistFi</a></p>
<script async src="https://optimistfi.com/embed.js"></script>One member: add ?member=nancy-pelosi (the name in their page’s address). One stock: ?ticker=NVDA. Rows: &n= 1 to 20. Colors: &theme=light or dark.
<iframe src="https://optimistfi.com/embed/congress?member=nancy-pelosi&n=5" title="Nancy Pelosi's stock trades" width="100%" height="530" style="display:block;width:100%;max-width:560px;border:0;border-radius:14px;overflow:hidden" loading="lazy"></iframe>
<p style="font-size:12px">Nancy Pelosi's stock trades tracked by <a href="https://optimistfi.com/congress/nancy-pelosi">OptimistFi</a></p>
<script async src="https://optimistfi.com/embed.js"></script>For AI assistants: MCP
The OptimistFi MCP server’s get_congress_trades tool answers by member or by stock from the same reports: connect it.
Pages to link
The newest trades, every member since 2015, a page per member (Nancy Pelosi), per stock (NVIDIA) and per state (Pennsylvania), and the trades disclosed after 45 days.
