Skip to main content
Version: Staging

Flash Auctions

SpiderRock's Flash Auction mechanism allows ATS initiators to interact with a network of electronic liquidity providers in an open competitive process. Flash Auctions are designed in an attempt to allow SpiderRock clients (hereafter "Subscribers") to find competitive price improvement ahead of routing to an exchange order book. These auctions can also be used to support attempts to find liquidity at the NBBO price level as an alternative to paying a high exchange taker fee and to potentially identify additional size above what is offered at present NBBO price levels.

Flash Auctions can be initiated either from SpiderRock or third party algos or via the SpiderRock Connect Trade app. The handling of the order before and after a Flash Auction typically depends on the configuration of the SpiderRock or third party algo that initiated the order. In some cases, the order will be returned to the originating party unfilled or partially filled. In other instances, the order will be forwarded to an exchange for handling within an exchange order book. Finally, Subscribers can use Flash Auctions as part of a progression style algo (e.g. a TWAP algo) that works through a sequence of order handling steps over time.

Flash Auction Initiator Parameters

ParameterDescription
Series or SpreadThe auction initiator must choose to initiate an equity option series or spread. This can be either a listed option series, an exchange eligible listed option spread, or a valid FLEX option series or spread. Spreads can contain up to six (6) option legs and may contain and equity leg.
Order SideThe auction initiator must identify a series side (BUY or SELL) or a spread side (BUY/REG, SELL/INV). Note that the initiator can choose the spread leg package including the leg sides. As a result, if an initiator is starting an auction with their side visible they would typically chose to start with their side as BUY/REG. However, they are not required to do so.
Limit PriceThe auction initiator must choose either a static or formula based limit price that is at least mid market or better relative to either exact OPRA NBBO levels or SpiderRock fair price (surface price) levels that exist at the start of the auction process.
Side/Price
Visibility
The auction initiator can elect to reveal their side and price, their side only, or neither.
CounterpartiesThe initiator can choose which counterparties will receive its auction notices. This is done by specifying a list of named counterparties (either to include or exclude), by electing to send notices to the entire SpiderConnect network, or some combination of the two.
Identity DisclosureThe initiator can choose to identify themselves to some or all of their notice counterparties. If an initiator chooses to identify themselves to a counterparty, then that counterparty will be identified to the initiator if/when they respond. Similarly, if an initiator does NOT identify themselves to a responder, then the identity of that responder will NOT be revealed to the initiator if/when they respond. Note: In some cases, initiators who are broker dealers and that identify themselves to a responder may also choose to receive a commission (specified on the Flash Auction notice) from the responder should the initiator and responder trade with each other.
Transfer CommissionBroker dealers who are initiating on behalf of a client and who chose to reveal their (the broker dealer's) identity can specify a commission amount that successful responders must pay at the conclusion of the auction. This amount (if any) will be disclosed to all responders at the start of the auction and transferred to the initiating broker dealer upon the successful conclusion of the auction. This transfer commission is in addition to any commissions that either the initiator or responder would normally pay to SpiderRock ATS for operating the auction.

Flash Auction Responder Parameters

ParameterDescription
AuctionNoticeIDAuction responders must respond with the specific (unique) ID from the associated auction notice that identifies the individual auction to which they are responding.
Series or Spread(Optional) If this parameter is supplied, this must be compatible with the initiator's leg(s) associated with a given AuctionNoticeID. If the response notice does not specify an option series or spread, then it will be deemed a response to the notice's option series or option spread package. In addition, if the initiator notice is for a spread, then it will be oriented with the legs as they were in the auction notice. When responding to spreads, it is possible for the responder to use the same order side as the initiator (eg. BUY/REG vs BUY/REG) but the opposite leg sides and limit price sign. This type of response will be accepted as valid and automatically inverted within SpiderRock ATS to align with other responses.
Order SideAuction responders must supply a series side (BUY or SELL) or a spread side (BUY/REG, SELL/INV). If the initiator has revealed a side, the responder must submit a response on the opposite side of the initiator. If no side is elected by the initiator, the responder can respond on either side (or both). If the initiator subsequently reveals a side, then all incompatible (same direction) responses will be immediately cancelled.
Limit PriceAuction responders must supply either a static or formula based limit price. This limit price can be changed at any time during the live auction and, if changed, will become effective in the next trial match.
Best Price OffsetResponders may enter a Best Price Offset and, if elected, this Best Price Offset will only be used to join other responders. In addition, if a presumptive match occurs within SpiderRock ATS and is subject to a price improvement auction on an exchange, then any remaining Best Price Offset room will be forwarded to the exchange for consideration in the on-exchange secondary auction. If more than one responder is part of the presumptive match then the least common remaining Best Price Offset value will be forwarded to the exchange for consideration.

Initiator and Responder Limit Types

Limit TypesDescription
StaticMatchPrice=StaticPriceMatchPrice = Static Price
This limit type maintains an unadjusted price for the life of the order. This is also known as “Package” for spreads than contain more than one leg.
Delta
(2-way)
MatchPrice=Delta2WayPrice+refDelta×dUPrc+0.05×refGamma×dUPrc×dUPrcMatchPrice = Delta2WayPrice + refDelta \times dUPrc + 0.05 \times refGamma \times dUPrc \times dUPrc
WHERE:
dUPrc = uPrcNbboMid - URefPrice (URefType=Mid) OR
dUPrc = uPrcNbboCross - URefPrice (URefType=Cross)
This limit type is used to dynamically adjust the limit price on outright option series as well as option spreads with and without stock legs. For spreads, this includes a stock leg Delta (2-way), this will allow the user to adjust on a delta that is different from the stock ratio used on the package. refDelta, refGamma, uRefType and uRefPrice can be selected by the party entering the order or they can default to SpiderRock suggested values. Note that uPrcNbboCross is interpreted as relative to the underlier direction that would be necessary to hedge the series or spread refDelta. (ie. BID for positive refDelta, and ASK for negative refDelta). In addition, the initiator and responder(s) do NOT need to agree on the refDelta, refGamma, uRefType, or uRefPrice.
Delta
(1-way)
MatchPrice=Delta1WayPriceMatchPrice = Delta1WayPrice* OR Delta1WayPrice+refDelta×dUPrc+0.5×refGamma×dUPrc×dUPrcDelta1WayPrice + refDelta \times dUPrc + 0.5 \times refGamma \times dUPrc \times dUPrc (whichever is less aggressive) where:
dUPrc = uPrcNbboMid - URefPrice (URefType=Mid) OR
dUPrc = uPrcNbboCross - URefPrice (URefType=Cross)
This limit type differs from Delta (2-way) in that the adjustment is bounded by the original (starting) limit. This limit type is particularly useful for Subscribers that wish to take advantage of a dynamic limit, but have a level above or below which they do not want to trade.
NeutralMatchPrice=NeutralPrice+StockDir×0.01×StockShares×URefPriceMatchPrice = NeutralPrice + StockDir \times 0.01 \times StockShares \times URefPrice
This limit type is available as a convenience for option spreads that contain a stock leg. NeutralPrice can be interpreted as the price for the option legs of the spread by themselves. The resulting MatchPrice is static for the life of the order (it does not change as all parts are also static).
RC PremiumMatchPrice=NeutralPriceStockDir×StrikePriceMatchPrice = NeutralPrice - StockDir \times StrikePrice
This Limit Type is available as a convenience and only for reversal/conversion strategies. The resulting MatchPrice remains static for the life of the order.

Flash Auction Notices

At the start of each Flash Auction, an AuctionNotice message will be sent to all eligible responders. An AuctionState message will then be sent at the conclusion of the Flash Auction's trial match.

SpiderRock AuctionNotice messages typically contain a significant amount of markup detail such as OPRA and Stock NBBO levels, surface volatilities, prices, and associated greeks. This information is provided on a best effort basis and is believed to be accurate enough to allow auction responding without reference to other systems. However, Subscribers are always encouraged to use whatever information is available in order to make the most accurate decisions possible.

These AuctionNotice and AuctionState notice messages are the primary mechanism through which information about an auction is communicated to responders.

Both AuctionNotice and AuctionState messages are available via the SpiderRock MLink/WebSocket API. To obtain access, a potential responder must secure an MLink API Key, connect to an MLink/WebSocket server, and make a subscription to both AuctionNotice and AuctionState messages.

Once subscribed, relevant AuctionNotice messages will be delivered to Subscribers associated with the Mlink API Key via the MLink/WebSocket API, and will contain as much information as the initiator has chosen to reveal. For example, if the initiator has chosen to reveal their identity, then their identity will be contained in the AuctionNotice message a Subscriber receives.

NoticeResponse messages can be sent through MLink/WebSocket connections to respond directly to AuctionNotices, whether the notice is from a SpiderRock ATS auction or an on-exchange auction, Responders are expected to process the associated NoticeExecReport messages to receive confirmation of, and updates to, their notice responses. This is a simplified (relative to FIX) method of responding to auction notices, particularly for Subscribers that do not currently operate production quality live FIX infrastructure.

Alternatively, Subscribers can respond to MLink auction notices by sending a FIX NewOrderSingle or NewOrderMultileg message to a SpiderRock Order Entry Gateway and processing the resulting ExecReport messages for that order.

FIX Subscriptions

As a convenience, it is possible to subscribe to Flash Auction notices via a FIX session, which is the equivalent to the receipt of the notices via the AuctionNotice messages sent by the MLink/WebSocket API. However, there is no FIX equivalent for the corresponding AuctionState messages at the end of a Flash Auction trial auction.

Auto-Responders

It is possible to pre-register auction auto-responders for single option series and option spreads in which all leg sides are the same (all BUY or all SELL). These auto-responders are configured by pre-staging AutoResponder records in SpiderRock systems before compatible auction notices are sent. These AutoResponder records can be loaded via SRSE or MLink APIs.

For more information see the Auto Responder Guide.

Latency Considerations

Flash Auctions typically run for their entire 100ms allotted time and do not feature a hyper time sensitive (first in wins) component. However, responses must be received prior to the running of the flash trial match for those responses to be considered. As a result, Subscribers are advised to place their responding gear relatively close to the Equinix NY5 datacenter in Secaucus, New Jersey, as this is the datacenter from which SpiderRock ATS operates. This will help ensure that a Subscriber's response decision tree code will run as quickly as possible.

Both cross connect and VPN style network connections are available and either can be competitive. In addition, it is possible to respond from high performance servers (C++ or C#) as well as simpler script style languages (python) and remain equally competitive. SpiderRock's MLink/WebSocket API as well as our FIX OrderEntry Gateway will both, on average, add about 1 ms both directions to a Subscriber's notices and responses, and they are advised to plan accordingly.

Flash Auction Mechanics

Flash Trial Match

A Flash Auction trial match will be run for 100ms after the start of the auction. At the start of this trial match, SpiderRock ATS will determine a set of valid auction responses that are able to fully execute at that time.

SpiderRock ATS will then resolve all formula based limits (if any) and round initiator and responder limits to an appropriate potential match price level. Individual orders can either round exact (99/1) or round fuzzy (90/10) in the direction of making the order more conservative. This choice is established by preference at the trading account level.

In most cases, all potential match price levels will be 2 decimal places. In the special case of a spread that contains a stock leg with a leg size not equal to 100, the initiator's limit price will be rounded (50/50) to 4 decimal places and all potential match price levels will be to 4 decimal places spaced $0.01 apart with the 3rd and 4th decimal place being the 3rd and 4th decimal place of the initiator's rounded limit price.

During the process of forming price levels some specific rules apply.

  • No responder price level can be equal to or through the opposing OPRA NBBO level. For example: if NBBO is 1.12 - 1.17 for a single series and a responder attempts to SELL at 1.08, that response limit will be adjusted to 1.13 (one penny inside the NBBO BID). For a spread order, the bounding NBBO will be the NBBO level from the individual leg markets (options and stock).
  • No initiator price level can be more than 0.25 through OPRA NBBO levels. For example: if NBBO is 2.54 - 2.75 for a single series and an initiator attempts to BUY at 3.10, their limit price will be adjusted to 3.00. For a spread order the bounding NBBO will be the NBBO level from the individual leg markets (options and stock).
  • If an initiator has already advertised their limit price, then all responder limit prices will be stopped at the initiator's public price level. For example: if the initiator is advertising a willingness to BUY at 3.42 and a responder sends an order to SELL with a limit of 3.40, then the responders limit will be adjusted to 3.42 to match the initiator's already public price. However, if a presumptive match occurs at the 3.42 level, then the initiator that offered through the initiator level will be deemed to have a best price of 3.40 less any best price offset for the purpose of notifying an exchange of the responder's willingness to trade at a better level.
  • If a responder has an active best price increment, then that increment can be activated (used) only if a better competitive response is available in the trial match. A response must be for at least 100 cn or 1/4 of the initiator's size in order to be deemed competitive.

After establishing price levels, SpiderRock ATS will form all responses into a response book. This book will be one-sided if the initiator has revealed a price and two-sided if they have not. In addition, the response book price levels may be in either 2 or 4 decimal places (depending on the item being auctioned) but in all cases, will be spaced at least $0.01 apart.

Finally, all responder size conditions will be considered and an available size (to the initiator) at each response book price level will be determined.

If it is possible for the initiator to cross (trade with) one or more responders at one or more price levels, subject to all initiator and responder conditions, the best such price level (from the initiator's perspective) will become the presumptive match price. Otherwise, the auction will conclude and all non-matching initiating and responding orders will be cancelled.

Presumptive Match Process

At the start of presumptive match process, a provisional responder side allocation will be determined on a size pro-rata basis and a crossing order will be forwarded to an exchange selected by SpiderRock ATS. This crossing order may include a least common residual Best Price Offset value for competitive purposes on the selected exchange. If some or all of a presumptive match is broken up on exchange, then the responder side balance (if any) will be re-allocated in a pro-rata fashion among the participating responders.

When allocating among responders, SpiderRock ATS will cap all individual responder quantities at the presumptive match quantity and apply any responder size conditions to determine an available responder quantity. If a responder has more than one order participating in a presumptive match, then the total quantity of all of the participating Subscriber firm orders will be capped at presumptive match quantity with that responder's orders reduced pro-rata to ensure that its total does not exceed the presumptive match quantity.

Responder pro-rata allocation will then be:

Allocated Quantity=Match Quantity×Responder QuantitySUM(Responder Quantities)Allocated \space Quantity = \frac{Match \space Quantity \times Responder \space Quantity}{SUM(Responder \space Quantities)}

Any required rounding will be conducted to favor larger responses.

If necessary, to satisfy exchange or reg NMS requirements for single option series, SpiderRock ATS will sweep away NBBO markets prior to beginning an ISO cross on the selected exchange.

If an exchange rejects a cross attempt, then SpiderRock ATS may attempt to immediately cross on another exchange. If all exchange crossing possibilities have been exhausted, SpiderRock ATS will declare the presumptive match broken and all initiating and responding orders will be cancelled.

Flash Auction Notification

At the conclusion of a flash auction (whether it trades or not), a final AuctionState message will be made available to all SpiderRock ATS Subscribers via either MLink Servers and/or SpiderRock Connect Trade (if the Flash Auction was initiated from the tool). This final AuctionNotice contains the resulting responder auction book but does not contain the original initiator side, size, or limit price.

Fees

SpiderRock ATS will pay all exchange fees associated with the selected exchange and will arrange for all resulting executions to be delivered via CMTA to the appropriate initiator and responder accounts. Responders and/or initiators will pay commissions to or receive commissions from SpiderRock ATS as per their individual initiator and responder agreements. SpiderRock will collect the transfer commission (if any) from the successful responder(s) and remit this commission to the associated initiator.

Disclosures and Additional Information

The information above provides a brief summary of certain technical aspects of SpiderRock ATS and is compiled for concise reference purposes only. While it encapsulates key points and provides an overview of certain content found in the SpiderRock ATS Subscriber Manual, it may not capture every detail found in the manual. For comprehensive understanding and complete context, please refer to the SpiderRock ATS Subscriber Manual.