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. Where disclosures exist, cards show trade counts, tickers touched, and estimated volume — ordered by real activity, not seniority.
| # | 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 |
|---|---|---|