Crypto Transaction Cost Analysis (TCA): A Canadian Trader’s Guide to Measuring Slippage, Spread, and Execution Quality
Winning in crypto trading isn’t just about predicting price direction—it’s about getting paid on fills. Transaction Cost Analysis (TCA) is the discipline of measuring everything that happens between the moment you decide to trade and the moment your order is fully executed. In a 24/7 market where spreads, liquidity, and fees vary by venue, TCA turns vague “execution feel” into hard data. This guide explains how Canadian and global traders can use TCA to quantify slippage, compare exchanges (including Canadian platforms like Bitbuy and Wealthsimple Crypto), choose better order types, and reduce hidden costs—while staying mindful of Canadian compliance considerations such as FINTRAC registration and CRA record‑keeping.
What Is TCA and Why It Matters in Crypto
Transaction Cost Analysis (TCA) is a structured way to measure the difference between the theoretical price you wanted and the actual price you got—plus the explicit fees you paid along the way. In equities, TCA has been standard for decades. Crypto’s around‑the‑clock markets, fragmented liquidity, and dynamic fee tiers make TCA even more critical. For active traders, a consistent TCA routine can turn small edge leaks into measurable savings that compound over hundreds of trades.
Core TCA Goals
- Quantify implicit costs: spread, slippage, and market impact.
- Track explicit costs: maker/taker fees, funding, and withdrawal costs.
- Benchmark execution quality against arrival price, VWAP, or TWAP.
- Compare venues and order types to find reliable, repeatable savings.
- Create clean records to support CRA tax calculations and audits.
The Building Blocks of Crypto Trading Costs
1) Explicit Costs
These are the costs you can see on the fee schedule—maker/taker commissions, funding for perpetual futures, and occasionally withdrawal or network fees if you move assets between venues. Canadian platforms like Bitbuy and Wealthsimple Crypto typically publish transparent fee tiers, sometimes with reduced rates for higher monthly volume. On global venues, fee tiers may depend on VIP status or platform token holdings. Always record your fee rate per trade; it’s the fastest “win” in TCA.
2) Implicit Costs
Implicit costs arise from market mechanics:
- Spread: The distance between best bid and best ask. Wider spreads increase the cost of crossing the book with market orders.
- Slippage: The difference between your benchmark price (e.g., arrival mid) and your average execution price. Partial fills and thin order books increase slippage.
- Market impact: The price movement caused by your own order consumption.
- Opportunity cost: The loss from delayed or unfilled orders when the market runs away from you.
3) Benchmarks
A benchmark is the price you use to judge execution quality. Common choices include:
- Decision Price: The price when you decided to trade.
- Arrival Price: The mid‑price (best bid+ask/2) at the moment your order hits the venue.
- VWAP: Volume‑Weighted Average Price over your trading window.
- TWAP: Time‑Weighted Average Price over your trading window.
Each benchmark tells a different story. Arrival price is best for measuring immediate execution quality. VWAP/TWAP are useful for comparing schedule‑based execution, such as slicing an order over time.
Implementation Shortfall: Your One‑Number Scorecard
Implementation Shortfall (IS) measures the total cost of executing your trading decision. Think of it as the performance drag between the decision price and your actual filled outcome, including fees and opportunity cost.
IS (simplified)
IS = (Executed Price − Decision Price) × Direction + Fees + Opportunity Cost
Direction is +1 for buys and −1 for sells. Express in currency (e.g., CAD) or as a percentage of notional.
Worked Example (BTC/CAD)
Suppose you decide to buy 0.5 BTC when BTC/CAD mid is 90,000. The top‑of‑book is 89,950/90,050 (spread = 100). You place a market order and get fully filled at an average price of 90,080. Your taker fee is 0.20%.
- Decision Price = 90,000
- Executed Price = 90,080
- Direction = +1 (buy)
- Slippage component = (90,080 − 90,000) × +1 = 80 CAD per BTC
- On 0.5 BTC, slippage cost = 40 CAD
- Fees = 90,080 × 0.5 × 0.20% = 90.08 CAD
- Total IS (excluding opportunity cost) = 40 + 90.08 = 130.08 CAD
Repeat this math across all trades to compare execution methods, venues, and times of day. If a maker‑style limit strategy improves IS by even 5–10 bps on average, the annual impact can be substantial.
A Canadian Lens: Venues, Pairs, and Compliance
Canadian traders face a unique mix of local and global choices. Domestic platforms like Bitbuy and Wealthsimple Crypto offer CAD pairs, familiar funding rails, and Canadian regulatory oversight. Global exchanges may offer deeper books and more derivatives, but they vary in terms of access, KYC/AML requirements, and product availability for Canadian residents. Your TCA should measure execution on the venues you can legally use, factoring in both trading quality and compliance risk.
Practical Canadian Considerations
- FINTRAC & KYC/AML: Prefer exchanges that are FINTRAC‑registered and align with Canadian AML requirements.
- Securities oversight: Use platforms that are registered or otherwise authorized by Canadian securities regulators for your province/territory.
- CAD pairs vs. USD pairs: CAD pairs simplify CRA reporting and reduce FX friction. If you trade BTC/USD but fund in CAD, include FX conversion in TCA.
- Record‑keeping for CRA: Retain timestamps, trade IDs, fees, and FX rates on every fill; this supports accurate adjusted cost base (ACB) and gain/loss calculations.
CAD vs. USD: Don’t Forget FX in Your TCA
If you fund in CAD but trade on a USD‑quoted venue, your true execution cost includes the FX spread and any conversion fees. For a clean apples‑to‑apples comparison of Canadian vs. global venues, convert all numbers to your base currency (often CAD) and include the FX cost in your IS calculation.
Data You Need to Capture for Crypto TCA
Good TCA starts with disciplined data capture. Most exchanges let you export fills; advanced users can capture quotes via websockets. Start simple and scale up.
Minimum Trade‑Level Fields
- Order ID, trade (fill) ID, and timestamp (UTC and local).
- Symbol and pair (e.g., BTC/CAD), side (buy/sell), order type (market/limit).
- Quantity filled and average execution price.
- Fee amount, fee currency, and effective fee rate.
- Benchmark price: arrival mid at order submission time.
- Venue identifier (e.g., Bitbuy, Wealthsimple Crypto, NDAX, Coinsquare).
Nice‑to‑Have Quote/Book Fields
- Best bid/ask, spread, depth at top 1–5 levels.
- 1‑minute and 5‑minute VWAP around your order time.
- Realized volatility, funding rate (for perps), and open interest where relevant.
A Step‑by‑Step: Quick TCA in a Spreadsheet
You don’t need a quant lab to get started. A simple spreadsheet delivers 80% of the value.
- Import fills: Include timestamp, side, qty, price, fees, pair, venue.
- Add arrival price: If your exchange export lacks it, approximate with the mid‑price at the nearest timestamp from a quote snapshot.
- Compute slippage per trade:
Slippage = (AvgExec − ArrivalMid) × Direction
. - Add fees: Convert fee currency to your base currency (e.g., CAD) using spot rate at execution time.
- Compute IS %:
IS% = (Slippage + Fees) / Notional
. - Group by strategy/venue/time: Compare market vs. limit, morning vs. evening, and Canadian vs. global venues.
- Track cancel/rejects: Note missed trades to estimate opportunity cost when prices ran away before fill.
Benchmarks to Add Later
- VWAP slippage:
(AvgExec − PeriodVWAP) × Direction
- TWAP slippage:
(AvgExec − PeriodTWAP) × Direction
- Implementation Shortfall vs. Decision Price: captures delays between signal and execution.
Order Types, Routing, and Market Impact
Your order type is a cost lever. Market orders maximize certainty of fill but cross the spread and potentially trigger impact in thin books. Limit orders earn maker fees (or rebates) and reduce impact but may not fill. TCA helps you tune these choices to your pair and venue.
Order Type Playbook
- Market: Use when spread is tight and depth is adequate relative to your size; avoid on illiquid altcoins.
- Post‑Only Limit: Favor when you can wait; compare maker rebate vs. potential adverse selection if price moves away.
- IOC/FOK: Good for controlling partial fills; can reduce lingering impact.
- Iceberg/Hidden (if supported): Reduce signaling risk; verify fees for hidden liquidity.
- Reduce‑Only (derivatives): Avoids accidental position flips when managing exits.
Venue and Routing
Canadian exchanges can be excellent for BTC/CAD and ETH/CAD, while global venues may dominate liquidity for alt pairs and derivatives. If you route orders across venues, compare the all‑in cost: spread + slippage + fees + FX (if applicable). Smart Order Routing (SOR) tools and aggregators can help, but your TCA must still validate whether routing actually improves your fills.
When to Trade: Liquidity, Volatility, and Overlaps
Crypto trades 24/7, but spreads and depth are not constant. Liquidity often improves during North American business hours and during overlaps with Europe, while weekends can bring thinner books and bigger gaps. Your TCA should include a time‑of‑day dimension so you can see when your strategy’s net costs are lowest. Many traders discover that a 0.5–1.0 bp average slippage improvement at certain hours translates into meaningful yearly savings.
From PnL to Risk‑Adjusted Execution
TCA lives next to risk metrics. After you compute trade‑level IS, evaluate how execution cost correlates with volatility regimes. You may accept higher slippage during breakouts if win rate and average profit expand more than the added cost. Over time, connect your TCA with risk‑adjusted performance metrics like Sharpe or Sortino so you can answer: “Does cheaper execution improve my net edge after considering variance and drawdown?”
Putting It Together: A Simple TCA Workflow
Daily Routine
- Export fills from each venue used (e.g., Bitbuy, Wealthsimple Crypto, NDAX, Coinsquare, or global exchanges).
- Normalize to a single base currency (CAD recommended for Canadian reporting).
- Calculate arrival mid and slippage per trade; append fees and funding.
- Tag trades by strategy, order type, and time window.
- Review top 10 worst trades by IS; identify preventable causes (e.g., crossed wide spread).
Weekly Deep Dive
- Venue scorecard: average IS%, median slippage, and fee rate by exchange and pair.
- Order type efficacy: compare market vs. limit vs. post‑only in similar conditions.
- Time‑of‑day grid: identify your cheapest and most expensive hours.
- Size scaling: map slippage vs. order size as a percent of average top‑of‑book depth.
- Risk overlay: tie execution cost to volatility quartiles or ATR bands.
Estimating Impact Before You Trade
A powerful use of TCA is pre‑trade impact modeling. Even a simple heuristic can help you avoid poor fills.
Quick Pre‑Trade Heuristic
- Compute current spread in bps:
(Ask − Bid) / Mid × 10,000
. - Estimate depth you’ll consume: compare your size to cumulative size within 5 bps.
- Project market impact: assume 0.3–0.7× of the depth‑weighted move as a first pass (adjust with your TCA results over time).
- Add fees; decide whether to slice the order or post a limit.
Over time, replace the heuristic with a model informed by your own fills. Your history is more predictive than generic rules.
Security, Compliance, and Record‑Keeping for Canadians
Execution quality is hollow if operational risks aren’t controlled. Use strong 2FA, API key restrictions, IP allow‑listing, and withdrawal whitelists where available. From a compliance standpoint, Canadian traders should ensure their platform is FINTRAC‑registered (for AML) and appropriately registered or authorized by Canadian securities regulators. For taxes, the CRA expects accurate records of transactions, fees, and fair market values at the time of disposition. TCA’s granular logs naturally support this, making year‑end reporting smoother.
Nothing here is tax or legal advice. When in doubt, consult a qualified professional familiar with cryptocurrency Canada rules and your province’s requirements.
Common TCA Pitfalls (and How to Fix Them)
- Ignoring partial fills: Always use volume‑weighted average execution price; include all child fills.
- Mixing currencies: Convert all fees and prices to your base currency before computing IS.
- Using stale benchmarks: Arrival price must be as close as possible to order submission time.
- Comparing different market regimes: Don’t judge a limit strategy during calm hours against a market strategy during a breakout. Group by volatility.
- Forgetting opportunity cost: Track how often waiting for maker rebates caused missed fills and worse follow‑through.
An Actionable 30‑Day TCA Plan
- Week 1: Build the spreadsheet; import fills; compute basic IS% per trade in CAD; tag by venue and order type.
- Week 2: Add time‑of‑day and volatility buckets; compare market vs. post‑only on your top two pairs (e.g., BTC/CAD, ETH/CAD).
- Week 3: Layer in VWAP/TWAP benchmarks; test a simple slicing schedule for larger orders.
- Week 4: Decide on policy changes: preferred hours, target venues, and default order type rules; document them in your trading plan.
Turning TCA Into a Live Edge
The goal isn’t a pretty dashboard—it’s policy. Once your TCA reveals where you consistently leak bps, encode fixes into rules. Examples: “BTC/CAD during North American mornings: post‑only limit first; flip to IOC if spread widens beyond 2 bps or if price momentum exceeds threshold.” Or: “Altcoin market orders limited to 10% of displayed top‑of‑book depth; otherwise, slice across 3–5 minutes.” TCA gives you the evidence to defend and refine those rules.