A Database of Historical Macroeconomic Events
A free tool to download clean macroeconomic event datasets for quantitative research and backtesting.
Most quantitative backtests start with prices: a clean historical database, ideally free of survivorship bias and the usual data traps. We have written a lot about that already, and shared practical ways for independent researchers to build more reliable datasets.
At some point, though, research usually asks for more than prices.
How does a strategy behave around major macro announcements? Does performance weaken into FOMC? Does volatility jump after CPI? Is the edge concentrated around Non-Farm Payrolls or other scheduled releases?
Finding a historical macro calendar is rarely the hard part. Finding one that is clean, consistent, easy to customize, and ready to merge into a backtest is. A lot of sources are built for looking at a webpage, not for dropping a file into a research pipeline, and turning them into something usable is quite time-consuming.
So, we opened up a small free tool we originally built for our own internal work. Select the events you care about (CPI, PPI, NFP, FOMC, GDP, Retail Sales, ISM, and others), pick a date range, and download a CSV you can plug straight into your workflow, no APIs needed. Same process we use whenever we want to study a strategy around scheduled macro events.
Below, we’ll walk through what’s in the file, where to be careful with release times, and a simple use case on S&P 500 returns around macro days.
What’s Included in the Historical Economic Calendar
Pick any combination of:
FOMC, CPI, Non-Farm Payrolls, Unemployment, PCE, GDP, University of Michigan sentiment, Industrial Production, Initial Jobless Claims, Retail Sales, PPI, ISM Manufacturing, ISM Services, and Conference Board Consumer Confidence.
Then export in one of two layouts:
Long: one row per event occurrence. Easy to filter and join.
Wide: one row per trading day, with a 0/1 column per event. This is usually what you merge into a backtest.
The long file layout includes stable identifiers and a few research-friendly flags:
One small but important detail: the calendar includes future scheduled dates, not just past ones. That’s the difference between an archive and a tool you can actually plan around.
Assumed times: useful, but handle with care
Release dates are the core of the file. Intraday times are harder, and we do not want to pretend otherwise.
The tool can optionally fill assumed_time_et from the conventional U.S. publication schedule. That option is off by default. The column is named assumed_time_et on purpose, not time_et. Treat those stamps as reconstructed estimates, and verify them before you rely on them for anything intraday.
Two reasons for the caution:
The convention is not stable. The FOMC statement moved from 14:15 to 14:00 ET in 2013. Shutdowns and schedule changes have also shifted prints historically.
One timestamp is often incomplete. An FOMC day can include the statement, a press conference later, and projections at some meetings. Michigan has a preliminary and a final. The assumed time is for the primary release only.
If you only need dates for a daily or overnight study, leave assumed times off. The date spine alone is already useful.
Using the Historical Economic Calendar for Event Studies
One simple use case for this calendar is to ask how U.S. equity returns behaved on days associated with different scheduled macro releases.
We join the wide CSV to the S&P 500 total return index and compute the average daily return, in basis points, conditional on each event being scheduled. The sample runs from 1990 to today, and the dashed line in the first chart represents the unconditional full-period average, about 4.8 bps.
FOMC days stand out with the highest average return, followed by Consumer Confidence, ISM Manufacturing, and ISM Services. GDP and Industrial Production also sit above the unconditional benchmark. Events such as PCE, PPI, and jobless claims are closer to the full-sample average.
A second cut moves from individual events to event density: how many macro releases from our list fall on the same trading day.
Days with no scheduled macro events delivered only a few basis points on average, whereas days with at least one or two events showed higher average returns. The increase becomes more visible from three events upward, and the top bucket (five or more) printed above 30 bps, though that group has only 15 observations.
This is indicative of higher average returns on denser information days: it is a starting point for research, but not a causal conclusion and not a trading rule.
Beyond daily index returns, the same file can be used to study how intraday strategies behave around key releases. For example, whether an intraday trend signal behaves differently on FOMC, CPI, NFP, ISM, or GDP days, when information shocks and order-flow imbalances are more likely.
That connects to our earlier article on an intraday trend strategy, where the rules are fully disclosed and results are broken out around selected macro dates.
Future Improvements
The CSV is a calendar, not a “surprise” database. It tells you when the release was scheduled. It does not attach the first print, the revised value, or the consensus miss.
That is the natural next layer: values on those dates, ideally first print next to the revised figure, and eventually surprise versus consensus. The date spine comes first.
If you already keep a hand-built event list for backtests, this is meant to replace that chore. Select the releases, export long or wide, merge it into your returns, and run the cut you actually care about.
Verify assumed times before you use them intraday, and if you find something cleaner than average return on event days, send it our way.
Research Transparency Statement
Every research idea, hypothesis, methodology, dataset, code, backtest, analysis, and conclusion presented in this article was independently developed by the Concretum Group research team. Artificial intelligence tools were used as productivity assistants to support the preparation of the final manuscript, including language refinement, grammatical review, and, where appropriate, the creation of tables, figures, and other visual elements. All research decisions, analyses, interpretations, and conclusions remain entirely those of the authors.
Disclaimer
This publication is provided by Concretum Group for informational, educational, and research purposes only. It does not constitute investment, financial, legal, or tax advice, nor a recommendation to buy or sell any security, instrument, strategy, or investment product. All investments involve risk, including possible loss of principal. Past performance, backtested performance, and historical analysis are not reliable indicators of future results. Readers should conduct their own research and consult qualified professionals before making investment decisions.
Full disclaimer: https://concretumgroup.com/disclaimer/








What a great product! Thank you for sharing it 🙏