Skip to content

Trading involves substantial risk. Past performance is not a guarantee of future results.

Read the full risk disclosure →
AlphaLab-AIAlphaLab-AI
Back to Academy

Prop firms

News-event filters for prop firm accounts

A practical guide to the news rule — which events count, how to read the window, calendar feeds that actually work, and the EA plumbing that keeps you compliant.

AlphaLab-AI team7 min read

Most prop firms forbid trading through high-impact news. The rule sounds simple — do not be in the market when the number drops. The fine print is anything but: which events count, how wide the window is, whether the rule applies to open positions or only new entries, and how your EA finds out about events in the first place.

This article walks through the mechanics of the news rule and the EA-side plumbing that keeps a strategy on the right side of it.

Which events count

"High-impact" is a calendar classification, not a market-impact prediction. The major calendar providers all use the same convention: red / orange / yellow icons, with red flagged as high-impact. Most prop firms reference "red folder" or "high-impact" events directly:

  • US: Non-Farm Payrolls (first Friday), CPI, FOMC decision, FOMC minutes, Core PCE, GDP advance, ISM Manufacturing, Retail Sales.
  • Eurozone: ECB rate decision, Eurozone CPI flash, German IFO, German CPI.
  • UK: BoE rate decision, UK CPI, UK GDP.
  • Japan: BoJ rate decision (and increasingly meaningful — used to be a non-event).
  • Switzerland / Canada / Australia: SNB, BoC, RBA rate decisions.

A handful of additional events get flagged sporadically: surprise central bank speeches, geopolitical announcements, OPEC+ production decisions. These will show up on the calendar when the schedule is known, but unscheduled remarks (Powell at Jackson Hole, ECB officials at conferences) often produce news-quality moves without a red icon. Your filter cannot catch what was never on the calendar.

The window

Firms vary, but the most common windows are:

WindowTypical firm policy
±2 minutesMost lenient. Common at FTMO-style firms.
±5 minutesCommon middle ground. The Funded Trader, MyFundedFX.
±15 minutesStricter — common at smaller firms.
T−5 / T+30 minutesAsymmetric: less time before, more time after. Reflects the actual price-discovery duration.
Full hourRare. Effectively bans the morning trade on event days.

The window is on the firm's server clock, not your wall clock. If the firm is on EST and you are on CET, the 8:30am NFP is your 2:30pm — and your EA had better know which one to filter on.

Open positions vs new entries

Two distinct rules that firms apply differently:

  • No open positions through the window. The strictest. Any position open at T−window or T+window is a breach. An EA must close existing positions before the window opens.
  • No new entries inside the window. Softer. Existing positions can ride through; only new orders are blocked.

Some firms apply rule A to certain events (FOMC, NFP) and rule B to the rest. Read the policy per-firm — it changes the EA configuration completely. A position-blocking EA that runs on a new-entries-only firm leaves money on the table. A new-entries-only EA on a position-blocking firm gets you breached.

Where the calendar comes from

Three sources of news calendar data:

1. ForexFactory CSV feed

The traditional choice. Free, weekly CSV at a stable URL. Most EAs fetch it once a day and parse the file. Reliable for the major events; sometimes drops minor ones or misclassifies them.

2. Investing.com / Myfxbook scraping

Richer event metadata (forecast vs prior vs actual) but no official API. EAs that scrape HTML break when the layout changes. Avoid for production.

3. Vendor APIs (TradingView, Trading Economics, FXStreet)

Paid, structured, generally accurate. The right answer if your EA is running on funded accounts where one missed event can wipe weeks of profit. The cost is typically $20–50/month — modest against a $100k account.

EA plumbing: how the filter actually runs

A practical pattern, in MQL5 pseudocode:

// Every tick, before considering a new entry:
datetime now = TimeCurrent();
for(int i = 0; i < ArraySize(CalendarEvents); i++) {
   if(CalendarEvents[i].impact != IMPACT_HIGH) continue;
   if(!IsRelevantCurrency(CalendarEvents[i].currency, _Symbol)) continue;
   datetime eventTime = CalendarEvents[i].time;
   if(now >= eventTime - WindowBefore && now <= eventTime + WindowAfter) {
      return;  // inside the window — no new entries
   }
}

// Every minute, regardless of entry logic:
if(CloseOpenPositionsBeforeNews) {
   for(int i = 0; i < ArraySize(CalendarEvents); i++) {
      datetime eventTime = CalendarEvents[i].time;
      datetime closeBy = eventTime - WindowBefore - 30;   // 30s buffer
      if(now >= closeBy && now < eventTime) {
         CloseAllPositionsForSymbol(_Symbol);
      }
   }
}

Two things to notice. First, the filter checks currency relevance — an ECB decision affects EURUSD and EURGBP, not USDJPY. Second, the close-out runs ahead of the window with a buffer so slippage on the close does not push the fill into the window.

The Sunday gap problem

Weekend gaps are a separate-but-related problem. Some firms book the Sunday open against the previous trading day's daily-loss limit; some book it against Monday. If you hold positions over the weekend (rare on prop, but allowed on some firms), the gap risk is significant — and the news calendar does not cover it.

Most well-designed EAs flatten on Friday afternoon by default specifically to avoid this. If your strategy needs weekend exposure, the prop account is not the right home for it.

Common mistakes

  1. Server-clock confusion. The EA filters on the wrong timezone, misses the window by an hour, and breaches.
  2. Stale calendar. The CSV download silently fails for a week. The EA assumes no events. NFP arrives unfiltered.
  3. Currency-relevance over-inclusion. Every event blocks every symbol. The strategy gets crippled and never trades.
  4. Currency-relevance under-inclusion. A central bank speech is not in the calendar; the EA does not pause.
  5. Close-out timing too tight. The close-out runs at T−window, but slippage takes 5 seconds and the fill lands inside the window. Breach by inches.

The bottom line

A news filter is not a feature — it is a structural requirement of trading on a prop account. The events to watch are well known, the windows are documented, and the EA plumbing is mechanical. The breach modes come from sloppy timezone handling, stale calendar data, and edge cases the filter never considered. Pay attention to those, and the news rule becomes background noise rather than a recurring source of failed evaluations.

R2 · From AlphaLab-AI

AlphaLab Prop Guard

Calendar feed refreshed daily, configurable ±window, currency-relevance check, close-out buffer — running in front of any EA on the account.

See Prop Guard's news filter

Related products

Keep reading