← Graham Capital Interview Insights

Graham Capital·Software Engineer·Technical Phone Screen·Senior

Senior
Jun 2026

Summary

Interviewed for a software engineering role at Graham Capital and got hit with a deep question on transaction cost modeling for event-driven strategies. Pretty technical for what I expected from the process.

Questions Asked (1)

Q1

In an event-driven trading strategy, how would you model and incorporate transaction costs into your system? Walk through commissions, spread, slippage, and market impact, and explain how you'd estimate these before and after execution, adjust your backtests and position sizing, and stress-test across different liquidity and latency conditions.

System DesignTechnical Trade-offsProduct Analytics & Metrics
Author's notes

This was a lot to unpack.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by framing transaction costs as a critical component of strategy realism, then systematically break down each cost type (commissions, spread, slippage, market impact) with estimation methods. Explain how to integrate these into backtests and position sizing, and finish with stress-testing across liquidity and latency scenarios to demonstrate robustness.

Pro tip: Emphasize that transaction cost modeling is iterative: pre-trade estimates should be validated and refined with post-trade analytics, and the system should dynamically adjust to changing market conditions.

1. Define and decompose costs

Clearly define each cost component: commissions (fixed/fee-based), spread (bid-ask), slippage (difference between expected and execution price), and market impact (price movement caused by your order).

2. Estimate costs pre- and post-trade

Pre-trade: use historical data, order book snapshots, and models (e.g., Almgren-Chriss for impact) to estimate. Post-trade: analyze execution reports to measure actual costs and refine models.

3. Incorporate into backtests and position sizing

Adjust backtest fills to include spread and slippage, subtract commissions, and apply impact models. Use cost-aware position sizing (e.g., reduce size when expected impact is high).

4. Stress-test across conditions

Simulate scenarios with varying liquidity (tight vs. wide spreads), latency (delayed market data/execution), and volatility to assess strategy performance and cost sensitivity.

5. Monitor and adapt

Implement real-time cost monitoring and feedback loops to adjust models and execution tactics dynamically as market conditions change.

Key Points to Mention

  • Commission structures (per-share, tiered, etc.) and how they scale with volume.
  • Bid-ask spread dynamics and its variation with liquidity and volatility.
  • Slippage sources: latency, order type, and market depth.
  • Market impact models (linear, square-root, Almgren-Chriss) and their assumptions.
  • Backtesting adjustments: using conservative fills, incorporating delay, and avoiding look-ahead bias.
  • Position sizing techniques: Kelly criterion with cost adjustments, risk parity, or impact-aware sizing.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.