Options Chain Issues - NAs in most close_price

Was anyone else getting bogus returns when you pulled down the options chain for QQQ expiring today from the indicative feed? My algo steps over issues with the options chain but they were so persistent today that only 1 trade was executed when there are usually 8 to 15 buyable signals. Today actually looked like one of those days where the number might have been higher than 15 based on the console outputs of my algo in RStudio.

@DougFish how are you calculating returns and/or your signals from the options chain endpoint?

Hi Dan,

My trade signals are modeled underlying (QQQ) moves with regime filters. Once the signal fires the option chain is pulled down with the “https://paper-api.alpaca.markets/v2/options/contracts” endpoint. Direction/type (call or put) and expiration = format(Sys.Date(), “%Y-%m-%d”). This pulls down a large dataframe which I then check the close_price of the chosen strike (based on my algo’s calculations). I have a check to see if the value is NA because this has happened in the past periodically but not the majority like today. I use the close_price for position sizing. Additionally, the alpaca dashboard was also devoid of most fields for from 10AM to 12:30PM. There definitely seemed like there was an issue with the options indicative feed today for QQQ.

Best,

Doug

While the dashboard has values now, the close price is far off

@DougFish There were no issues with the option data feed for QQQ on 2026-07-16. A couple of things to note. There will not be a close price if there are no trades. Of the 292 QQQ option contracts that expired that day, 80 of them, or roughly 27%, did not trade at all. Halfway through the day only about 50% of the contracts had any trades. If there are no trades, then there will be no close price. You also stated you are using the indicative feed. Be aware that the prices returned in the indicative feed are not actual prices but randomized approximations of actual prices. The primary use case for the indicative feed is for algo debugging and not for live trading. You didn’t state what you were comparing to, but that may be a reason why you see the close prices as being ‘far off’.

Hi Dan,

I trade at-the-money to in-the-money. What you are saying is that between 10AM and 12PM there were no contracts traded with strikes around the price of QQQ? I don’t see that as a plausible explanation because the entire reason for trading QQQ 0DTE options if because they are extremely liquid. Can you please look into how there would be no trades logged on your end?

Best,

Doug