Morning 9:30 AM to 9:40 Missing Data Points

I have noticed intermittent issues where 1-minute bar data is missing from approximately 9:30 AM to 9:40 AM ET. This doesn’t happen every day, but when it does, the bars simply aren’t returned for that window.

To verify, I set up a parallel connection to IBKR. At 9:40 AM, IBKR returned the expected data while Alpaca did not.

Is this a known issue with market open data? The first 10 minutes of the trading day are critical for many strategies.

@Angelo_Mendonca There are no known issues with bar data. Which market data subscription do you have and which feed are you specifying (eg sip or iex). How are you fetching one minute bars? Are you streaming them with web sockets or using a REST end point? If using a REST endpoint, could you provide the endpoint and parameters you are using? Also, could you provide an example symbol along with the bars that appear to be missing. I may be able to check the Alpaca logs and help troubleshoot.

2026-02-06 09:46:00 ET - AMZN . Data was missing for this

I will keep an eye on this and update this post if and when I find missing data.

@Angelo_Mendonca There is definitely bar data for AMZN on 2026-02-06 at 9:46 ET.

Thank you @Dan_Whitnable_Alpaca ….I appreciate your help. I will keep and eye on this going forward and if I hit any issue I will let you know.

During live testing on 2026-02-25, we observed that Alpaca’s historical bars API does not return the most recent 1-minute bars in real-time. When querying for MSFT bars at 09:35 ET, the API returned 243 bars but none covered the 09:30-09:35 window — the most recent bars were from pre-market (04:00-04:12 ET range). This appears to be a 5-15 minute aggregation delay on Alpaca’s backend between when trades occur and when they’re available as historical bars via the REST API. This delay makes Alpaca’s historical bars unsuitable for time-critical intraday strategies that require price data immediately after market open. Workaround: We implemented a fallback to IBKR real-time quote streaming to capture price action during the formation window, which successfully tracked prices using 5 live samples when Alpaca bars were unavailable. @Dan_Whitnable_Alpaca

That is bar data that u have gotten later. BUt right at say 9:36 if you want the previos 5 - 1 minutes bars you dont happen to get them always.

@Angelo_Mendonca Thank you for providing that level of detail. It greatly helps when checking the logs to see what may be going on. You stated you queried 1-minute bars for MSFT at 09:35 on 2026-02-25, but didn’t get the most recent five minutes of bars. Am I interpreting this correctly because you then went on to say “if you want the previous 5 1-minutes bars you don’t happen to get them always

The issue in this specific case is that the end time was specified as 09:19:02.205361. You only received bars up to 09:19.

Below is the log entry. Note the timestamp is 14:35:02 UTC, but the end is specified as 16 minutes earlier, as 14:19:02.205361 UTC.

{timestamp:“2026-02-25T14:35:02.443Z”,
path:“/v2/stocks/bars”,
query:
start=2026-02-23T05:00:00+00:00&
end=2026-02-25T14:19:02.205361+00:00&

timeframe=1Min&adjustment=all&symbols=MSFT&limit=10000”,
user_agent”:“APCA-PY/0.43.2”}

Not sure if this is always the case, but it appears your code is setting the time incorrectly. If you simply want the most recent bar, the best approach is to omit the end parameter. The API will then default to the current time. This avoids any issues with synchronizing your machine time with Alpaca time.

Bars are calculated and available about 20ms after the end of each minute. If you query for bars at 09:35:02, and omit the end parameter, the latest bar you will receive is the 09:34 bar which aggregates trades 9:34 <= t < 9:35.

@Angelo_Mendonca good to hear that you may have found the issue. The log entry I posted above was from a /bars query authenticated using API keys from the paper account beginning with PA3MRM. That is your account correct?

1 Like

Yes. @Dan_Whitnable_Alpaca Thanks again.