Filing Types: 13D, 13G, and 13F
| Filing | Trigger | Filer | Key Signal |
|---|---|---|---|
| Schedule 13D | >5% ownership WITH intent to influence | Any investor | Activist alert 🚨 |
| Schedule 13G | >5% ownership, passive | Institutions only | Large accumulation |
| Form 13F | Quarterly holdings report | Institutions >$100M AUM | Broad position tracking |
13D vs 13G: The Critical Distinction
This is the key insight. Both are triggered at 5% ownership. But 13D filers declare intent to influence the company — board seats, strategic direction, breakup, sale. When a known activist (Elliott, Starboard, Icahn, ValueAct) files a 13D, price impact is typically immediate. OpenClaw monitors EDGAR for new 13D filings and cross-references filer names against a known activist list.
Architecture
The ownership monitor detects new large ownership filings, checks filers against an activist watchlist, extracts ownership metadata, and sends notifications:
EDGAR submissions API → scan for new Schedule 13D/13G/13F → check filer against activist watchlist → extract ownership percentage + target company → notify
HEARTBEAT Configuration
name: ownership_monitor
schedule: "0 */4 * * 1-5"
steps:
- fetch_filings:
types: ["SC 13D", "SC 13G", "13F-HR"]
since: "{{ last_run_date }}"
- check_activist_list:
filers: "{{ known_activists }}"
alert_priority: high
- extract_ownership:
fields:
- beneficial_owner
- shares_owned
- percent_of_class
- purpose_of_transaction
- notify:
channel: email
subject: "🏛️ Ownership Change: {{ target_company }} — {{ filer }} filed {{ form_type }}"
Known Activist Seed List
Start with this list and expand based on your focus. Many of these investors have consistent playbooks:
known_activists: - "Elliott Investment Management" - "Starboard Value" - "Carl Icahn" - "ValueAct Capital" - "Third Point" - "Pershing Square" - "Jana Partners" - "Trian Fund Management"
13F Quarterly Holdings Extraction
13F filings are 45 days after quarter end — the data is stale by definition. But they're useful for tracking long-term conviction positions and institutional ownership concentration:
import httpx
def get_13f_holdings(cik: str):
"""Get latest 13F institutional holdings filing."""
padded = cik.zfill(10)
url = f"https://data.sec.gov/submissions/CIK{padded}.json"
headers = {"User-Agent": "YourName your@email.com"}
r = httpx.get(url, headers=headers)
data = r.json()
filings = data["filings"]["recent"]
for i, form in enumerate(filings["form"]):
if form == "13F-HR":
return {
"date": filings["filingDate"][i],
"accession": filings["accessionNumber"][i].replace("-", ""),
"url": f"https://www.sec.gov/Archives/edgar/full-index/"
}
return None
13F Data Quality Note
FAQ
Q: How quickly do 13D filers have to disclose?
A: Within 10 days of crossing 5%. Short-sellers and activists sometimes accumulate to just under 5% to avoid early disclosure. Once they cross 5%, the clock starts and they have 10 calendar days to file.
Q: Can I track every 13F filing?
A: There are thousands per quarter. Better to build a watchlist of institutions whose judgment you track and monitor their changes quarter-over-quarter. Focus on mega-cap managers (Berkshire, Vanguard) or thematic investors.
Q: What's a "wolf pack"?
A: Multiple hedge funds coordinating accumulation without formal disclosure. They each stay below 5% individually. Not detectable from EDGAR alone, but cross-referencing 13Fs across known coordinated funds can surface patterns.