economic-calendar-fetcher
Fetch upcoming economic events and data releases using FMP API. Retrieve scheduled central bank decisions, employment reports, inflation data, GDP releases, and other market-moving economic indicators for specified date ranges (default: next 7 days). The script outputs raw JSON or text; the assistan
By tradermonty · 2,247 installs
npx skills add tradermonty/claude-trading-skills --skill economic-calendar-fetcher
Source repository · Upstream listing
Economic Calendar Fetcher
Overview
Retrieve upcoming economic events and data releases from the Financial Modeling Prep (FMP) Economic Calendar API. This skill fetches scheduled economic indicators including central bank monetary policy decisions, employment reports, inflation data (CPI/PPI), GDP releases, retail sales, manufacturing data, and other market moving events that impact financial markets.
The skill uses a Python script to query the FMP API and returns raw JSON or text output. The assistant then filters events, assesses market impact, and generates a chronological Markdown report for each scheduled event. No files are generated automatically.
Key Capabilities:
Fetch economic events for specified date ranges (max 90 days)
Support flexible API key provision (environment variable or CLI argument)
Filter by impact level, country, or event type (filtering performed by the assistant)
Present filtered results as structured Markdown reports with impact analysis (assistant generated, not script generated)
Default to next 7 days for quick market outlook
Data Source:
FMP Economic Calendar API: https://financialmodelingprep.com/stable/economic calendar (singular "economic")
Covers major economies: US, EU, UK, Japan, China, Canada, Australia
Event types: Central bank decisions, employment, inflation, GDP, trade, housing, surveys
Note: the legacy api/v3/economic calendar endpoint was fully retired by FMP on 2025 08 31 and now returns 403 Legacy Endpoint — do not use it, including as a fallback.
When to Use This Skill
Use this skill when the user requests:
1. Economic Calendar Queries:
"What economic events are coming up this week?"
"Show me the economic calendar for the next two weeks"
"When is the next FOMC meeting?"
"What major economic data is being released next month?"
2. Market Event Planning:
"What should I watch for in the markets this week?"
"Are there any high impact economic releases coming?"
"When is the next jobs report / CPI release / GDP report?"
3. Specific Date Range Requests:
"Get economic events from January 1 to January 31"
"What's on the economic calendar for Q1 2025?"
4. Country Specific Queries:
"Show me US economic data releases next week"
"What ECB events are scheduled?"
"When is Japan releasing their inflation data?"
DO NOT use this skill for:
Past economic events (use market news analyst for historical analysis)
Corporate earnings calendars (this skill excludes earnings)
Real time market data or live quotes
Technical analysis or chart interpretation
Prerequisites
FMP API Key (required): Sign up at https://financialmodelingprep.com for a free key (250 requests/day). Set via FMP API KEY environment variable or pass api key to the script.
Python 3.10+ : Required to run skills/economic calendar fetcher/scripts/get economic calendar.py .
No third party packages : The script uses only the Python standard library.
Workflow
Follow these steps to fetch and analyze the economic calendar:
Step 1: Obtain FMP API Key
Check for API key availability (in priority order):
1. Recommended: Check if FMP API KEY environment variable is set — this keeps the key out of session logs
2. Acceptable: Use api key CLI argument for one off runs
3. Not recommended: Asking the user to paste the key into chat — session logs may retain it
4. If user doesn't have an API key, provide instructions:
Visit https://financialmodelingprep.com
Sign up for free account (250 requests/day limit)
Navigate to API dashboard to obtain key
Example user interaction:
Step 2: Determine Date Range
Set appropriate date range based on user request:
Default (no specific dates): Today + 7 days
User specifies period: Use exact dates (validate format: YYYY MM DD)
Maximum range: 90 days (FMP API limitation)
Examples:
"Next week" → Today to +7 days
"Next two weeks" → Today to +14 days
"January 2025" → 2025 01 01 to 2025 01 31
"Q1 2025" → 2025 01 01 to 2025 03 31
Validate date range:
Ensure start date ≤ end date
Ensure range ≤ 90 days
Warn if querying past dates
Step 3: Execute API Fetch Script
Run the get economic calendar.py script with appropriate parameters:
Basic usage (default 7 days):
With specific date range:
Using environment variable (no api key needed):
Script parameters:
from : Start date (YYYY MM DD) default: today
to : End date (YYYY MM DD) default: today + 7 days
api key : FMP API key (optional if FMP API KEY env var set)
format : Output format (json or text) default: json
output : Output file path (optional, default: stdout)
Handle errors and empty results:
Invalid API key → Ask user to verify key
Rate limit exceeded (429) → Suggest waiting or upgrading FMP tier
Restricted endpoint (402 Payment Required) → The script raises a clear error stating the current FMP subscription tier does not include the Economic Calendar endpoint. Tell the user they need to upgrade their FMP plan at https://financialmodelingprep.com/ — do not treat this as "zero events" and do not fall back to the legacy v3 endpoint (it was retired 2025 08 31 and returns 403 Legacy Endpoint ).
Network errors → Check your connection and re run the script
Invalid date format → Provide correct format example
Empty list [] for a plausible current/future range: As of the current script version, an empty list from the API is a genuine "no events" response — a 404 or restricted endpoint response now raises an explicit error instead of being silently converted to [] . If you still suspect missing data, re verify the date range and API key rather than assuming a broken endpoint.
Step 4: Parse and Filter Events
Process the JSON response from the script:
1. Parse event data: Extract all events from API response
2. Apply user filters if specified:
Impact level: "High", "Medium", "Low"
Country: "US", "EU", "JP", "CN", etc.
Event type: FOMC, CPI, Employment, GDP, etc.
Currency: USD, EUR, JPY, etc.
Filter examples:
"Show only high impact events" → Filter impact == "High"
"US events only" → Filter country == "US"
"Central bank decisions" → Search event name for "Rate", "Policy", "FOMC", "ECB", "BOJ"
Event data structure:
Step 5: Assess Market Impact
Evaluate the market significance of each event:
Impact Level Classification (from FMP):
High Impact: Major market moving events
FOMC rate decisions, ECB/BOJ policy meetings
Non Farm Payrolls (NFP), CPI, GDP
Market typically shows 0.5 2%+ intraday volatility
Medium Impact: Significant but less volatile
Retail Sales, Industrial Production
PMI surveys, Consumer Confidence
Housing data, Durable Goods Orders
Low Impact: Minor indicators
Weekly jobless claims (unless extreme)
Regional manufacturing surveys
Minor auction results
Additional Context Factors:
1. Current Market Sensitivity:
High inflation environment → CPI/PPI elevated importance
Recession fears → Employment data more critical
Rate cut speculation → Central bank meetings crucial
2. Surprise Potential:
Compare estimate vs. previous reading
Large expected changes = higher attention
Consensus uncertainty = higher impact potential
3. Event Clustering:
Multiple related events same day = amplified impact
Example: CPI + Retail Sales + Fed speech = Very High impact day
4. Forward Significance:
Does this event influence upcoming central bank decisions?
Is this a preliminary or final reading?
Will this data be revised?
Step 6: Generate Output Report
Responsibility: The script outputs raw JSON or text. This step is performed by the assistant using the script's output. No Markdown files are generated automatically; results are displayed in chat and can be saved to reports/ on request.
Create structured markdown report with the following sections:
Report Header:
Event Listing (Chronological):
For each event, provide:
Example Event Entry:
Summary Section:
Add analytical summary at the end:
Filtering Notes:
If user requested specific filters, note at top:
Output:
Results are displayed in chat. No files are generated automatically.
To save raw JSON/text data : use output reports/economic calendar [START] to [END].json when running the script.
To save the Markdown report : ask the assistant to write it to reports/ after generating it in chat.
Assistant Generated Report Format
Markdown structure requirements:
1. Chronological ordering: Events sorted by date and time (earliest first)
2. Impact level indicators: Use (High Impact), (Medium Impact), (Low Impact) labels
3. Time zone clarity: Always specify UTC; ET/PT conversions are performed by the assistant based on US DST calendar
4. Data completeness: Include all available fields (previous, estimate, actual if past)
5. Null handling: Display "N/A" or "No estimate" for null values
6. Impact assessment: Every high/medium impact event must have market implications analysis
Table format option (for dense listings):
Language: All reports in English
Resources
Python Script:
skills/economic calendar fetcher/scripts/get economic calendar.py : Main API fetch script with CLI interface
Reference Documentation:
references/fmp api documentation.md : Complete FMP Economic Calendar API reference
Authentication and API key management
Request parameters and date formats
Response field definitions
Rate limits and error handling
Best practices for caching and efficiency
API Details:
Primary endpoint: https://financialmodelingprep.com/stable/economic calendar (singular "economic" — the plural economics calendar is a dead URL that 404s)
Legacy endpoint retired: https://financialmodelingprep.com/api/v3/economic calendar was shut down by FMP on 2025 08 31 and now returns 403 Legacy Endpoint . Do not use it or fall back to it.
Restricted endpoint caveat: the stable Economic Calendar endpoint may require a paid FMP subscription tier. If the API key lacks entitlement, it returns 402 Payment Required , which the script surfaces as a clear error rather than an empty list.
Date range caveat: responses can include rows just outside the requested from / to window; after fetching, filter events locally by parsed date so only the requested date range is reported.
Authentication: API key required (free tier: 250 requests/day)
Max date range: 90 days per request
Response format: JSON array of event objects
Rate limits: 5 requests/second (free tier)
Event Coverage:
Major economies: US, EU, UK, Japan, China, Canada, Australia, Switzerland
Event categories: Monetary policy, Employment, Inflation, GDP, Trade, Housing, Surveys
Update frequency: Real time (events added/updated as scheduled)
Historical data: Available for past events with actual values
Usage Tips:
1. Cache results to minimize API calls (events rarely change once scheduled)
2. Query 7 30 day ranges for optimal request efficiency
3. Don't query 6 months in future (sparse data, speculative dates)
4. Refresh cache daily for upcoming week to catch time changes
5. Use smaller ranges (1 7 days) for real time event monitoring
Error Handling:
API key errors: Clear user guidance for obtaining free key
Rate limits (429): Suggest waiting or upgrading FMP tier; re run the script after the wait
Restricted endpoint (402): Script raises a clear error — the FMP subscription tier lacks access to this endpoint; direct the user to upgrade at https://financialmodelingprep.com/. Do not fall back to the legacy v3 endpoint (retired 2025 08 31, returns 403).
Network failures: Check connection and re run; no automatic retry or cache in the script
Genuine 404: The script now raises an er