Last week’s trading outage at the Chicago Board Options Exchange (CBOE) was caused by a software bug that emerged as it made systems changes, which it thought was resolved before the open.

In a letter to the industry today, the CBOE says that its internal review of the software bug that disrupted trading on Thursday morning is now complete. “We have determined that the catalyst was preliminary staging work related to the planned reconfiguration of our systems in preparation for extended trading hours on CBOE Futures Exchange (CFE) and eventually CBOE options,” it says. “It was this staging work, and not a systems upgrade or new systems load, that exposed and triggered a design flaw in the existing messaging infrastructure configuration.”

The exchange says that its team identified and addressed a potential software issue early Thursday morning, and “believed we were on track for a normal open.”

“Unfortunately, the nature of a software bug is sometimes only identifiable once the system is operationally ready,” it notes, adding that this was the case last week at the CBOE. “As we approached the open, it became apparent that the software issue was not fully resolved, and the decision was made to delay the opening.”

The bug has since been corrected, and the CBOE says that it conducted extensive testing of its systems over the weekend. “Fully confident that Thursday’s systems issue has been completely resolved, we have turned our attention to the next phase of our review, which includes a detailed ‘post mortem’ on our operational response and procedures amidst the disruption,” it says.

Indeed, it now aims to full understand the event, and to look at how it might minimize the time needed to resume trading in the event of any potential disruption in the future. It notes that much of the delay in opening on Thursday was due to efforts to thoroughly preserve the integrity of the orders already received that morning. “We will continue to review other options and solutions to avoid future disruptions and to minimize down time in the event of an outage of any type,” it says.