A free tool to build a clean macro-event CSV for your research pipeline

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. Turning them into something usable takes more time than it should.

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 and others), pick a date range, and download a CSV you can plug straight into your workflow. No API tutorial. Same process we use whenever we want to study a strategy around scheduled macro events.

CONCRETUM | GROUP
Macro Event Calendar
Open Calendar
Historical Macroeconomic Release Dates
Filter major U.S. macroeconomic releases, select any historical date range, preview the results, and download a clean CSV for quantitative research, event studies, trading strategies, and backtests.
FOMC
CPI
Non-Farm Payrolls
Unemployment Rate
GDP
Retail Sales
Since 1927
Historical coverage
14
Economic releases
CSV
Instant export

Below: what is in the file, where to be careful with release times, and one 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:

The long file includes stable identifiers and a few research-friendly flags:

ColumnMeaning
event_dateRelease date
event_codeStable code (cpi, nfp, fomc, …) so downstream code does not break when labels change
event_nameDisplay name
assumed_time_etOptional conventional ET time (off unless you enable it)
time_verifiedWhether that assumed time passed our cross-check
needs_reviewFlag when the time looks wrong or unverified
is_scheduledFuture release dates, not only history

One detail that matters more than it sounds: the calendar includes future scheduled dates, not only the past. That is the difference between an archive dump and something 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:

  1. 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.
  2. 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. The dashed line in the first chart is 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. 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 suggestive of higher average returns on denser information days. It is a starting point for research, 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 rule looks different 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:

What this is not (yet)

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.

CONCRETUM | GROUP
Macro Event Calendar
Open Calendar
Historical Macroeconomic Release Dates
Filter major U.S. macroeconomic releases, select any historical date range, preview the results, and download a clean CSV for quantitative research, event studies, trading strategies, and backtests.
FOMC
CPI
Non-Farm Payrolls
Unemployment Rate
GDP
Retail Sales
Since 1927
Historical coverage
14
Economic releases
CSV
Instant export

Verify assumed times before you use them intraday. If you find something cleaner than average return on event days, send it our way.

Get research like this before it’s public.

Enter your email to receive our next data-driven analysis.

Live Experiment

Can You Beat a Systematic Strategy?

We’re running a research experiment to test whether day trading skill can improve the performance of a fully systematic intraday strategy.

No trade generation. No guessing.
Just managing exposure using price action — and we are measuring the result.

Join the Experiment →