Why the Fed matters
The Federal Reserve publishes everything for free. Every speech by every Fed governor, every FOMC meeting minutes document, every press conference transcript — all at federalreserve.gov. Most of it is never systematically read. OpenClaw monitors the Fed's RSS feed and processes every new publication.
Fed content calendar
| Content | Source | Timing | Key signal |
|---|---|---|---|
| FOMC Minutes | federalreserve.gov | 3 weeks after meeting | Policy direction shift |
| Press conference transcript | federalreserve.gov | Same day as meeting | Powell tone |
| Fed governor speeches | federalreserve.gov | Ongoing, ~3-5/week | Dissent signals |
| Beige Book | federalreserve.gov | 2 weeks before each FOMC | Regional economic tone |
| FOMC meeting transcripts | federalreserve.gov | 5-year lag | Historical record |
Hawkish vs dovish classifier
Hawkish language: "inflation," "price stability," "restrictive," "above target," "further increases," "not yet confident"
Dovish language: "labor market," "cooling," "progress," "appropriate to begin," "balance of risks," "gradual"
Neutral: procedural language, economic data citations without directional framing
HEARTBEAT configuration
name: fed_monitor
schedule: "0 */2 * * 1-5"
steps:
- fetch_rss:
url: "https://www.federalreserve.gov/feeds/speeches.xml"
type: fed_speeches
- fetch_rss:
url: "https://www.federalreserve.gov/feeds/press_all.xml"
type: fed_press
- check_seen:
dedup_key: item_url
store: seen_fed.json
- llm:
prompt: |
Analyze this Federal Reserve publication:
1. HAWK/DOVE: Classify as hawkish, dovish, or neutral. Quote the key sentence.
2. RATE SIGNAL: Any explicit or implicit signal about future rate moves?
3. KEY LANGUAGE: List any new or changed phrasing vs recent communications.
4. SPEAKER: Note who spoke and their known position on the policy spectrum.
5. ONE-LINE SUMMARY: For quick-scan alerts.
Content: {{ content }}
- notify:
channel: email
subject: "🏛️ Fed Alert: {{ speaker }} — {{ one_line_summary }}"
priority: "{{ 'high' if fomc_minutes else 'normal' }}"
Fed RSS fetch + parse — Python snippet
import feedparser
import httpx
from bs4 import BeautifulSoup
def fetch_fed_speeches(limit: int = 10) -> list:
"""Fetch latest Fed speeches from official RSS feed."""
feed = feedparser.parse("https://www.federalreserve.gov/feeds/speeches.xml")
speeches = []
for entry in feed.entries[:limit]:
speeches.append({
"title": entry.title,
"url": entry.link,
"date": entry.get("published", ""),
"summary": entry.get("summary", ""),
})
return speeches
def fetch_speech_text(url: str) -> str:
"""Fetch full text of a Fed speech page."""
r = httpx.get(url, headers={"User-Agent": "FedMonitor/1.0 contact@youremail.com"},
timeout=10, follow_redirects=True)
soup = BeautifulSoup(r.text, "html.parser")
# Fed pages use div#article or div.col-xs-12.col-sm-8.col-md-8
content = soup.find("div", {"id": "article"}) or soup.find("div", class_="col-xs-12")
return content.get_text(separator=" ", strip=True) if content else ""
Hawkish/dovish scorer
HAWKISH_TERMS = ["inflation", "price stability", "restrictive", "above target",
"further increases", "not yet confident", "premature", "persistent"]
DOVISH_TERMS = ["cooling", "progress", "appropriate to begin", "labor market",
"balance of risks", "gradual", "easing", "below target", "sustainable"]
def score_fed_tone(text: str) -> dict:
text_lower = text.lower()
hawk_count = sum(text_lower.count(term) for term in HAWKISH_TERMS)
dove_count = sum(text_lower.count(term) for term in DOVISH_TERMS)
total = hawk_count + dove_count
if total == 0:
return {"tone": "neutral", "hawk_score": 0, "dove_score": 0}
tone = "hawkish" if hawk_count > dove_count * 1.2 else "dovish" if dove_count > hawk_count * 1.2 else "neutral"
return {"tone": tone, "hawk_score": hawk_count, "dove_score": dove_count,
"hawk_pct": round(hawk_count / total * 100)}
Frequently asked questions
Q: How often does the Fed publish new content?
A: Fed governors give 3–5 speeches per week collectively. FOMC meetings are 8 times per year. The Beige Book drops 2 weeks before each meeting.
Q: Are FOMC meeting transcripts available?
A: Yes, but with a 5-year lag. The 2020 FOMC transcripts became available in 2025. Minutes (summary) come 3 weeks after each meeting.
Q: What's the difference between minutes and a transcript?
A: Minutes are an edited summary produced by staff. Full transcripts are verbatim records released 5 years later.