Top Movers (24h)
Companies whose risk score changed the most today. Red number = risk got worse. Green = risk improved.
Congress Trade Activity — Day × Month
When Congress actually trades. Rows = day of week, columns = calendar month. Darker = more trades. Pure count of congressional_trades.traded_at.
Latest Events
Live feed of things happening right now: politicians trading stocks, governments handing out contracts, sanctions, lawsuits, big stock moves. The colored dot shows the type.
Score Rankings
The most politically-exposed companies right now. Higher number = more risk. Click any row to drill in.
Data Source Status
Where the data comes from. Green = working. Yellow = data is getting old. Red = something broke.
Who's the most politically exposed right now?
Every public company, ranked by risk score (0 = calm, 100 = on fire). Switch the dropdown to sort by sub-score: Market (price/volume action), Policy (government activity), or Insider (congressional trades + executive moves). Click any row to see what's driving the number. ⓘ
All Company Rankings
| # | Ticker | Name | Sector | Market | Policy | Insider | Composite |
|---|---|---|---|---|---|---|---|
Browse every company we track
The full universe of public companies MRDN monitors. Filter by sector to narrow it down, then click a card to see that company's score history, recent events, and political connections.
Companies
Everything MRDN knows about this company: current risk score and how it broke down (Market / Policy / Insider), score history over time, recent events that moved the number, and the political figures connected to it. Use this to understand why a company is hot — not just that it is.
What's driving the score
Top 5 contributors in each category within the current scoring window.
Insider trades
Government contracts
Sanctions
Political donations
Market moves
Score History
Timeline
Entity Connections
Who's moving markets from inside government?
A curated watchlist of politicians whose votes, committee seats, and personal stock trades move markets. Once trade disclosures are ingested, the cards below will show trade counts and the companies each person has been touching — and the order will reflect real activity, not seniority.
go run ./cmd/mrdn ingest-efds
| # | Name | Party | b.score-a.score)" @keydown.enter="scoreboardSortCol='score'; scoreboard.sort((a,b)=>b.score-a.score)" @keydown.space.prevent="scoreboardSortCol='score'; scoreboard.sort((a,b)=>b.score-a.score)">Score▼ | b.trade_count-a.trade_count)" @keydown.enter="scoreboardSortCol='trade_count'; scoreboard.sort((a,b)=>b.trade_count-a.trade_count)" @keydown.space.prevent="scoreboardSortCol='trade_count'; scoreboard.sort((a,b)=>b.trade_count-a.trade_count)">Trades▼ | b.median_latency_days-a.median_latency_days)" @keydown.enter="scoreboardSortCol='median_latency_days'; scoreboard.sort((a,b)=>b.median_latency_days-a.median_latency_days)" @keydown.space.prevent="scoreboardSortCol='median_latency_days'; scoreboard.sort((a,b)=>b.median_latency_days-a.median_latency_days)">Filing Lag▼ | b.committee_trades-a.committee_trades)" @keydown.enter="scoreboardSortCol='committee_trades'; scoreboard.sort((a,b)=>b.committee_trades-a.committee_trades)" @keydown.space.prevent="scoreboardSortCol='committee_trades'; scoreboard.sort((a,b)=>b.committee_trades-a.committee_trades)">Committee▼ | b.round_trips-a.round_trips)" @keydown.enter="scoreboardSortCol='round_trips'; scoreboard.sort((a,b)=>b.round_trips-a.round_trips)" @keydown.space.prevent="scoreboardSortCol='round_trips'; scoreboard.sort((a,b)=>b.round_trips-a.round_trips)">Round-trips▼ | b.pre_event_trades-a.pre_event_trades)" @keydown.enter="scoreboardSortCol='pre_event_trades'; scoreboard.sort((a,b)=>b.pre_event_trades-a.pre_event_trades)" @keydown.space.prevent="scoreboardSortCol='pre_event_trades'; scoreboard.sort((a,b)=>b.pre_event_trades-a.pre_event_trades)">Pre-event▼ |
|---|---|---|---|---|---|---|---|---|
Political Figures
What does the data actually say?
Three signals derived directly from real House Clerk PTR filings — no inference, no prediction, no fabrication. Pick a tab: who's breaking the law on disclosure timing, when reps cluster on the same ticker in the same week, and which stocks split or unite the parties.
Worst offenders
go run ./cmd/mrdn ingest-house-trades
| # | Representative | Trades | Median | P90 | % late | Worst | Worst ticker |
|---|---|---|---|---|---|---|---|
|
|
Swarm clusters
| Week of | Ticker | Reps | Trades | Buys | Sells | R / D | Who |
|---|---|---|---|---|---|---|---|
| / |
First in
Fast flips
| Representative | Ticker | Held | Bought | Sold | Buy $ | Sell $ |
|---|---|---|---|---|---|---|
| d |
| Ticker | Total reps | R buy | R sell | D buy | D sell | Score |
|---|---|---|---|---|---|---|
Trading neighbors
Other representatives whose trades landed on the same ticker within 14 days of this rep's. Pure time proximity — no inference of coordination.
| Rep | Party | State | Shared | Overlaps | Sample |
|---|---|---|---|---|---|
Co-Trader Network
Representatives connected by shared trading activity within 14-day windows. Thicker lines = more tickers traded in common.
Drag nodes to reposition. Scroll to zoom.
Which stocks does Congress actually trade?
Every public company touched by a House Clerk PTR filing, ranked by how many distinct representatives have bought or sold it. Click any ticker to see who, when, and how much. Bipartisan crowd-favorites at the top.
Top Tickers
| Ticker | Sector | Reps | Trades | Buy $ | Sell $ | R buyers | D buyers | Last trade |
|---|---|---|---|---|---|---|---|---|
| Representative | Trades | Buys | Sells | $ Volume | First → Last |
|---|---|---|---|---|---|
Is the data fresh, stale, or broken?
Every ingestion source MRDN runs — recency, latency, HTTP error codes, and last-error details. Down or degraded sources show in red; stale sources in yellow. Individual dashboard cards also reflect their own freshness.
Ingestion Sources
| Traded | Rep | Ticker | Side | Amount | Filed |
|---|---|---|---|---|---|
| — |
| Ticker | Name | Subsector |
|---|---|---|