OO already has an "ignore wide bid/ask" feature for entries, but I think the protection could be expanded and made more flexible for both entries and exits.
This becomes especially important on complex or longer-DTE trades. A multi-leg position can have one leg briefly develop a very wide bid/ask spread, especially on strikes with little or no volume. Because OO uses midpoint pricing, that one leg can distort the value of the entire position enough to create an unrealistic entry price, profit target, stop loss, or delta-based exit.
For entries, the existing wide bid/ask filter is helpful, but there may be cases where more control is needed over how the rule is applied. For exits, there currently does not appear to be equivalent protection, even though the same wide-spread problem can distort PT, stop, and delta-based closes.
Requiring multiple consecutive hits can help with a one-minute data blip, but it does not fully solve the problem. A wide spread can persist for several minutes, so multiple consecutive observations can all still be distorted.
I don't think a fixed trailing median or average is a good universal solution. If the market genuinely reprices, the new price may be far from the previous few minutes even though the quote is valid. On the other hand, if a bad or wide quote persists for several minutes, the median or average can begin incorporating the bad pricing rather than filtering it out.
The difficult part is that there probably should not be one hard-coded definition of "wide" for every trade. A spread that is abnormal for a liquid 0DTE IC may be completely normal for a longer-DTE butterfly, ratio, or cheap far-OTM leg. A cheap option can also have a very large percentage spread without materially affecting the position, while a smaller spread on a larger or more heavily weighted leg can distort the combo significantly.
My suggestion would be to expand the existing wide bid/ask protection so users can define acceptable spread limits for both entries and exits.
Possible options:
  • Apply configurable wide-spread protection to entries
  • Apply the same protection to PT, stop-loss, and delta-based exits
  • Let the user set the acceptable bid/ask threshold
  • Allow the rule to be evaluated per leg
  • Optionally combine it with consecutive-hit logic
  • Reject mechanically impossible fills automatically, such as a debit spread filling for a credit or a credit exceeding the maximum possible spread width
The goal would not be to remove every unusual price move. It would be to prevent obviously unreliable quotes from creating unrealistic entries or exits while still allowing each strategy to define what "too wide" means for that structure.