TCA Metrics
TCA Overview
Transaction Cost Analysis (TCA) quantifies how effectively portfolio orders are executed. In the derivatives space, standard equity-style arrival-time TCA metrics are not directly applicable. Because a derivative's value is tied to an underlying asset — and underlying prices move faster than derivative prices — price improvement at the moment of execution is an incomplete measure of execution quality. It does not account for what the market as a whole extracts from a trade.
A more complete approach estimates the likely profitability of the counterparty on each trade. By modeling what the counterparty made (or lost), it is possible to derive the mirror image: what the order originator paid (or collected) for market access. This forms the basis of the SpiderRock Connect TCA methodology.
SpiderRock Connect TCA metrics are built on a counterparty market-maker model with the following assumptions:
- The counterparty hedges their side of each trade in the underlying market immediately upon execution, at mid-market, at any size, with no transaction fees.
- The counterparty exits both the option and stock positions at mid-market in the derivatives market 10 minutes after the trade.
Under these assumptions, the counterparty's realized PnL on each trade can be calculated precisely, and the equal and opposite value represents the order originator's true cost of — or edge from — accessing market liquidity.
TCA for Derivatives: The Core Challenge
Because underlying asset prices move faster than derivative prices, the timing of a derivative execution relative to underlying price movement is the primary driver of execution quality. Price improvement at the moment of execution does not capture this dynamic, making it an insufficient standalone metric for derivatives TCA.
The cost of crossing the market is equivalent to paying the market maker half the bid/ask spread. Bid/ask spreads in the options market are mean-reverting: they widen and contract around an average width. A trade timed to coincide with a spread contraction will tend to show a fill price at or near mid-market when measured 10 minutes post-execution, after prices have reverted to a normal state. A trade crossed without regard to spread dynamics will typically pay the full half-spread cost to market makers.
This is why execution performance is measured on a 10-minute forward delta neutral PnL basis rather than by point-in-time price improvement. In the listed equity options market, exchange fees are typically ±$0.25-$0.50 per contract, but total market access cost — when factoring in market maker profitability — can exceed $3.00 per contract on unoptimized executions.
The PRE-CA Benchmark
The Pre-Cost Analysis (PRE-CA) model constructs a performance benchmark for listed options by modeling the expected profitability of the market maker on each trade. It operates by:
- Archiving every marketplace print and identifying whether it executed on the bid or offer
- Characterizing each trade across variables including delta, volatility, volume, stock price, and penny/non-penny status
The customer’s cost of market access is the inverse of the modeled market maker profitability. PRE-CA provides a trade-level benchmark against which execution performance can be compared.
Improving on the Benchmark
SpiderRock Connect algorithmic execution strategies are calibrated on the 10-minute forward delta neutral PnL metric. The algo engines continuously score each market tick for the probability of a positive 10-minute delta neutral PnL outcome. Orders are submitted only when configured user limits are not violated and the probability score exceeds a defined threshold.
Two complementary strategy types interact with the PRE-CA benchmark:
- αAlgos TAKER — crosses the market when the probability of a positive 10-minute delta neutral PnL outcome is sufficiently high
- αAlgos MAKER — posts liquidity dynamically to improve fill quality and capture maker rebates, reducing net exchange fees
The SpiderRock Connect platform also computes execution PnL in real time throughout the life of a strategy. These calculations feed back into strategy behavior, enabling continuous adjustment as market conditions change.
TCA Metrics Glossary
Parent Order Summary
| Variable/Measure | Definition |
|---|---|
| FIX | Orders sent via FIX |
| SRSE | Orders sent via SRSE |
| GUI Tools | Orders sent via the GUI |
| Other | Orders sent via OM, Legger orders, MLegResponse, Auction Strategy orders, etc. |
Child Order Summary
| Variable/Measure | Definition |
|---|---|
| Child Orders | Average number of child orders sent per day |
| Avg. Child Order Size | Average contract size of child orders sent to exchanges |
| Filled Contracts | Average number of filled contracts per day |
| Contract Fill (%) | Average daily fill rate (filled contracts / total number of contracts sent) |
| Order Fill (%) | Average daily fill rate (filled orders / number of orders sent) |
| Price Improve / Cn | Fill price vs. Bid or Ask price If Buy: Ask price - Fill price If Sell: Fill price - Bid price |
| Near-Touch PnL | Fill price vs. Fill Bid or Ask price If Buy: Fill Ask Prc - Fill Price If Sell: Fill Price - Fill Bid Price |
| Far-Touch PnL | Fill price vs. Arrival (Parent) Bid or Ask price If Buy: Arrival Ask Prc - Fill Price If Sell: Fill Price - Arrival Bid Price |
| Surf Edge / Cn | Fill price vs. Surface price If Buy: Surface price - Fill price If Sell: Fill price - Surface price |
| Avg. Fill Prob | Average fill probability per contract |
| Short-Term Dn PnL / Cn | Fill price vs. Surface price T + 10min (delta neutral) |
| Day Dn PnL / Cn | Fill price vs. SpiderRock closing mark (delta neutral; delta at time of fill) |
| Arrival Dn PnL / Cn | Fill price vs. Parent order arrival time mid-mark (delta neutral) |
| 1/2-Width Cost / Cn | (Ask price - Bid Price) / 2 |
| Exchange fees / Cn | Average exchange fees associated with fills (Negative = fee; Positive = rebate) |
Quote Benchmark PnL Summary
| Variable/Measure | Definition |
|---|---|
| High Liquidity | Less than $0.05 spread - relative to $100 underlier Example: A $300 name will end up in this bucket if spread is less than $0.15 |
| Mid Liquidity | Less than $0.25 spread - relative to $100 underlier |
| Low Liquidity | $0.25 and above - relative to $100 underlier |
| <5 sec | Average order working time of 5 seconds |
| <5 min | Average order working time of 5 minutes |
| > 5 mins | Average order working time of more than 5 minutes |
| Qwap PnL | Fill price vs. average quoted market (mid-mark) over the life of an order |
| Qwap Dn PnL | Fill price vs. average quoted market (mid-mark) over the life of an order (delta neutral) |
| uDrift Qwap PnL | Underlying price drift over the life of an order |
| Qwap Fill Cns | Average daily number of filled contracts considered for the Qwap analysis |
| With Time (%) | |
| Alone Time (%) |
Active Maker Details
| Variable/Measure | Definition |
|---|---|
| High Liquidity | Less than $0.05 spread - relative to $100 underlier Example: A $300 name will end up in this bucket if spread is less than $0.15 |
| Mid Liquidity | Less than $0.25 spread - relative to $100 underlier |
| Low Liquidity | $0.25 and above - relative to $100 underlier |
| Symbols | Represents the three most active (by contract) |
| Avg. Market Width | Average market width (not relative) |
| Num. of Child Orders | Number of active maker child orders sent to exchanges |
| Num. of BBO Joining Orders | Number of child orders joining the current BBO at send time |
| Num. of BBO Improving Orders | Number of child orders improving exchange BBO at send time |
| Num. of NBBO Joining Orders | Number of child orders joining the current NBBO at send time |
| Num. of NBBO Improving Orders | Number of child orders improving the current NBBO at send time |
| Avg. Child Order Size | Average contract size of child orders sent to exchanges |
| Avg. Child Duration(s) | Average lifespan of child orders in seconds |
| Num. of Child Fills | Number of child orders that resulted in a fill or partial fill |
| Filled Contracts | Average number of filled contracts per day |
| Filled Abs Vega | Total absolute filled Vega (100 multiplier applies) |
| Filled Abs Wt Vega | Total absolute filled Vega normalized by volatility and time-to-expiration Cn × iVol × (0.25/years) |
| Half-Width Cost / Cn | (AskPrice - BidPrice) / 2 |
| Short-Term Dn PnL / Cn | Fill price vs. Surface price T + 10min (delta neutral) |
| Day Dn PnL / Cn | Fill price vs. SpiderRock closing mark (delta neutral; delta at time of fill) |
| Arrival Dn PnL / Cn | Fill price vs. Parent order arrival time mid-mark (delta neutral) |
| Cross Impr / Cn | Price improvement weighted by fill size If Buy: Order Ask - Fill Price If Sell: Fill Price - Order Bid Expressed in dollar terms |
| Cross Impr (%) | Percentage-based price improvement relative to the spread Calculated as total price improvement / potential improvement (Order Ask - Order Bid) |
| Surf Edge / Cn | Fill price vs. Surface price If Buy: Surface price - Fill price If Sell: Fill price - Surface price |
| Avg. Fill Prob | Average fill probability per contract |
| Exchange fees / Cn | Average exchange fees associated with fills (Negative = fee; Positive = rebate) |
| Num. (+) Limit Variations | Number of orders where child order fills were better than the limit price (computed at fill time) |
| (+) Slippage Contracts | Total number of contracts filled better than the limit price (computed at fill time) |
| (+) Limit Slippage / Cn | Average positive edge per contract when filled better than the limit price (computed at fill time) |
| Num. (-) Limit Variations | Number of orders where child order fills were worse than the limit price (computed at fill time) |
| (-) Slippage Contracts | Total number of contracts filled worse than the limit price (computed at fill time) |
| (-) Limit Slippage / Cn | Average negative edge per contract when filled worse than the limit price (computed at fill time) |
| Num. of Low Priority Cxl | Any cancel not associated with an underlier change or a risk threshold violation |
| Num. of High Priority Cxl | Cancels associated with an underlier quote change or a risk threshold violation |
| Num. of Fast Cancels | Underlier print contingent cancels Takes place on street side gateways Lowest latency pathway |
| Num. Fills After Cancel | Number of orders filled after a cancel is attempted |
| Fill/Cancel Slippage / Cn | Average $ slippage per contract after a cancel is attempted |
| Num. Cxl Attempted Contracts | Number of contracts filled after a cancel is attempted |
| Low Priority Cxl Latency (ms) | Average latency of low priority cancel in milliseconds |
| High Priority Cxl Latency (ms) | Average latency of a high priority cancel in milliseconds |
Active Taker Details
| Variable/Measure | Definition |
|---|---|
| High Liquidity | Less than $0.05 spread - relative to $100 underlier Example: A $300 name will end up in this bucket if spread is less than $0.15 |
| Mid Liquidity | Less than $0.25 spread - relative to $100 underlier |
| Low Liquidity | $0.25 and above - relative to $100 underlier |
| Symbols | Represent the three most active (by contract) |
| Avg. Market Width | Average market width (not relative) |
| Num. of Child Orders | Number of active taker child orders sent to exchanges |
| Avg. Child Order Size | Average contract size of child orders sent to exchanges |
| Num. of Child Fills | Number of child orders that resulted in a fill or partial fill |
| Filled Contracts | Average number of filled contracts per day |
| Contract Fill % | Average daily fill rate Filled contracts / contracts sent |
| Order Fill % | Average daily fill rate Filled orders / orders sent |
| Filled Abs Vega | Total absolute filled Vega (100 multiplier applies) |
| Filled Abs Wt Vega | Total absolute filled Vega normalized by volatility and time-to-expiration Cn × iVol × (0.25/years) |
| Half-Width Cost / Cn | (AskPrice - BidPrice) / 2 |
| Short-Term Dn PnL / Cn | Fill price vs. Surface price T + 10min (delta neutral) |
| Day Dn PnL / Cn | Fill price vs. SpiderRock closing mark (delta neutral; delta at time of fill) |
| Arrival Dn PnL / Cn | Fill price vs. Parent order arrival time mid-mark (delta neutral) |
| Surf Edge / Cn | Fill price vs. Surface price If Buy: Surface price - Fill price If Sell: Fill price - Surface price |
| Avg. Fill Prob | Average fill probability per contract |
| Exchange fees / Cn | Average exchange fees associated with fills (Negative = fee; Positive = rebate) |
Sweeper Details
| Variable/Measure | Definition |
|---|---|
| Single-Line | One strike per order |
| Multi-Line | Anything greater than one strike per order |
| Avg. NBBO Size | Average NBBO size at time of order |
| Num. of Child Orders | Number of child orders sent to exchanges |
| Avg. Child Order Size | Average contract size of child orders sent to exchanges |
| Num. of Child Order Fills | Number of child orders that resulted in a fill or partial fill |
| Filled Contracts | Average number of filled contracts per day |
| Contract Fill % | Average daily fill rate Filled contracts / contracts sent |
| Order Fill % | Average daily fill rate Filled orders / orders sent |
Spread Details
| Variable/Measure | Definition |
|---|---|
| COBs | Performance metrics associated to Spread orders sent to the Complex Order Books |
| Marketable Leggers | Spread orders that will interact with the Central Limit Order books and are marketable at time of submission |
| Non-Marketable Leggers | Spread orders that will interact with the Central Limit Order books and are non-marketable at time of submisison |
| Avg. Market Width | Average market width (not relative) |
| Num. of Child Orders | Number of child orders sent to exchanges |
| Avg. Child Order Size | Average contract size of child orders sent to exchanges |
| Num. of Child Fills | Number of child orders that resulted in a fill or partial fill |
| Filled Contracts | Average number of filled contracts per day |
| Contract Fill % | Average daily fill rate Filled contracts / contracts sent |
| Filled Abs Vega | Total absolute filled Vega (100 multiplier applies) |
| Filled Abs Wt Vega | Total absolute filled Vega normalized by volatility and time-to-expiration Cn × iVol × (0.25/years) |
| Surf Edge / Cn | Fill price vs. Surface price If Buy: Surface price - Fill price If Sell: Fill price - Surface price |
| Avg. Fill Prob | Average fill probability per contract |
| Short-Term Dn PnL / Cn | Fill price vs. Surface price T + 10min (delta neutral) |
| Day Dn PnL / Cn | Fill price vs. SpiderRock closing mark (delta neutral; delta at time of fill) |
| Arrival Dn PnL / Cn | Fill price vs. Parent order arrival time mid-mark (delta neutral) |
| Half-Width Cost / Cn | (AskPrice - BidPrice) / 2 |
| Exchange fees / Cn | Average exchange fees associated with fills (Negative = fee; Positive = rebate) |
Auction Details
Note:
In a TCA Report, the client receives two separate Auction Detail tables: one titled "SPX" and one titled "Except SPX".
| Variable/Measure | Definition |
|---|---|
| Single Exposure | Single strike exposure auction detail (Step up to NBBO / fast auction) |
| Single Improve | Single strike price improvement auction detail |
| MLeg Exposure | Multi-leg order exposure auction detail (Step up to NBBO / fast auction) |
| MLeg Improve | Multi-leg order price improvement auction detail |
| Avg. Market Width | Average market width (not relative) |
| Num. of Auc Responses | Total number of auction responses |
| Num. of Child Fills | Number of child orders that resulted in a fill or partial fill |
| Filled Contracts | Average number of filled contracts per day |
| Avg. Resp. Size | Average number of contracts in auction response child orders |
| Order Fill % | Average daily fill rate Filled orders / orders sent |
| Filled Abs Vega | Total absolute filled Vega (100 multiplier applies) |
| Filled Abs Wt Vega | Total absolute filled Vega normalized by volatility and time-to-expiration Cn × iVol × (0.25/years) |
| Surf Edge / Cn | Fill price vs. Surface price If Buy: Surface price - Fill price If Sell: Fill price - Surface price |
| Avg. Fill Prob | Average fill probability per contract |
| Short-Term Dn PnL / Cn | Fill price vs. Surface price T + 10min (delta neutral) |
| Day Dn PnL / Cn | Fill price vs. SpiderRock closing mark (delta neutral; delta at time of fill) |
| Arrival Dn PnL / Cn | Fill price vs. Parent order arrival time mid-mark (delta neutral) |
| Half-Width Cost / Cn | (AskPrice - BidPrice) / 2 |
| Exchange fees / Cn | Average exchange fees associated with fills (Negative = fee; Positive = rebate) |