XTX Markets Online Assessment

The XTX Markets online assessment is a timed, auto-graded screen, widely reported as one of the hardest single filters in quant hiring.
It splits by role: researchers get a machine-learning and probability test; engineers get algorithmic coding.

Last updated 29 Jun 2026 · compiled from XTX candidate write-ups across levels.fyi, Glassdoor and community threads (recent cycles) — aggregated self-reports, not employer-verified; no individual author is named in our source data.

Format
Timed, auto-graded; 2 role tracks
Length
~60–120 min, role-dependent
Platform
TestGorilla / HackerRank-style (reported)
Difficulty
Very hard — per the reported pass rate (FAQ)

Where the OA sits: it is the first and biggest gate in XTX's ~4–5 round funnel. See the full XTX hiring funnel ›

What the XTX Markets online assessment is

XTX Markets is a London-headquartered, machine-learning-driven market maker, and reportedly the largest FX spot liquidity provider in the world (a widely cited claim, not company-confirmed here). Most candidates who land an offer spend the bulk of their preparation on the OA, simply because it screens out the most people.

Because XTX forecasts price moves in extremely low signal-to-noise conditions, the assessment rewards genuine fluency in the statistical and linear-algebra machinery — not memorized tricks. The format splits by role, covered in the two cards below.

Warning: Two time-pressure traps candidates flag

Tight per-question budget. The reported researcher counts and timing (in the role cards below) work out to roughly 3 minutes per question — too little to re-derive fundamentals on the spot, so make them reflexive. No going back. You reportedly cannot return to a question once you move past it: read each one fully, commit, then move on.

What's confirmed vs. what varies: that the OA is timed and role-split is consistent across reports. The exact platform, question count and timing vary by role and year and are candidate-reported — so the figures below are directional. The wider ~120-minute upper bound reflects researcher sittings that bundle a small data / take-home component onto the timed core.

XTX OA role tracks compared

The funnel you face depends on your role, not a business unit. Here are the two tracks side by side — topics, tooling depth, and what to expect.

Researcher track

Topics
ML, statistics, probability and linear algebra, often with a small data-analysis component.
Tooling
Reported TestGorilla, or a take-home for the data piece (varies).
Shape
~20 questions, ~60 min core (a mixed multiple-area screen); up to ~120 min when a data piece is bundled in.
Expect
Speed on fundamentals weighs as much as depth — derivations must be automatic.

Engineering track

Topics
Algorithmic coding with a numerical or data-structure twist over pure puzzles.
Tooling
Reported HackerRank-style timed environment under a hard clock.
Shape
~2–3 medium-to-hard problems (reported) across ~60–90 min — near 30 min each.
Expect
Graded on correctness, edge cases and complexity — stability and off-by-one count.

What's tested on the XTX OA

The mix shifts by role and year, but the topic surface is consistent across write-ups. Each row pairs a topic with a representative one-line stem so you can calibrate the real difficulty, not just the label.

What the XTX Markets online assessment tests, by topic area, with a representative reported question stem for each.
Topic areaRepresentative stem (reported flavor)
Probability“In a fair-coin game, what's the chance you ever return to break-even?” — the depth probe is the first-passage / recurrence argument, not the setup.
Statistics“Derive the MLE of a Bernoulli parameter, then explain why sample variance divides by n−1.” — tests whether you can derive an estimator, not recall its formula.
Machine learning“Compare OLS, ridge and lasso — which penalty induces sparsity, and why?” — the ‘why L1 is sparse’ geometry is the differentiator.
Linear algebra“What do the leading eigenvectors of a stock-return covariance matrix represent?” — PCA / SVD and low-rank structure, including equicorrelated matrices.
Calculus & optimization“Set up gradient descent on a convex objective and reason about step size and convergence.”
Algorithmic coding“Implement a numerically stable softmax / log-sum-exp without overflow.” — engineers, graded on correctness, edge cases and complexity.

Worked examples: the reasoning cadence each track rewards

One full derivation plus a second key-insight per track. Each shows the exact set-up-then-sanity-check rhythm the OA scores on — practice making them this fast.

Researcher track — why an L1 penalty induces sparsity

Takeaway: lasso's penalty has a constant slope at zero, so it keeps a fixed dead-zone that snaps small coefficients to exactly 0; ridge's slope fades to nothing there, so it only shrinks.

Q. In lasso you minimize the squared error plus \(\lambda\lVert\beta\rVert_1\); in ridge you add \(\lambda\lVert\beta\rVert_2^2\). Why does lasso drive coefficients to exactly zero while ridge only shrinks them?

1. Read the subgradient at zero. For one coordinate the penalty's slope is \(\lambda\cdot\mathrm{sign}(\beta_j)\), a constant \(\pm\lambda\) that does not vanish as \(\beta_j\to0\). Ridge's penalty slope is \(2\lambda\beta_j\), which itself \(\to 0\) at the origin.

2. Compare with the data pull. A coefficient sits at exactly zero whenever the data's gradient there is smaller than the penalty's. Lasso keeps a fixed \(\lambda\)-wide “dead zone” around 0 (the closed-form soft-thresholding \(\hat\beta_j=\mathrm{sign}(z)\,(|z|-\lambda)_+\) holds exactly when features are orthonormal); ridge's threshold shrinks to nothing, so it never quite zeroes out.

3. Sanity-check & picture. The L1 ball is a diamond with corners on the axes, so the loss contour first touches it at a corner → sparse solution. As \(\lambda\to0\) both recover OLS; as \(\lambda\to\infty\) both go to the zero vector. That's the move: inspect the penalty's slope at the origin, then check the limits.

Second researcher high-signal item — equicorrelated eigenvalues. A covariance with unit diagonal and every off-diagonal \(\rho\) has just two distinct eigenvalues: \(1+(n-1)\rho\) once (the all-ones “market” direction) and \(1-\rho\) with multiplicity \(n-1\). Positive-semidefiniteness then forces \(\rho \ge -\tfrac{1}{n-1}\) — a one-line result XTX likes to probe.

Engineering track — numerically stable log-sum-exp

Takeaway: subtract the largest value before exponentiating, so every term lands in (0, 1] and nothing overflows; add the max back outside the log. Same trick stabilizes softmax.

Q. Computing \(\log\sum_i e^{x_i}\) directly overflows for large \(x_i\) and underflows to \(-\infty\) for very negative ones. Make it stable in one pass.

1. Factor out the max. Let \(m=\max_i x_i\). Then \(\log\sum_i e^{x_i} = m + \log\sum_i e^{x_i - m}\). Every exponent \(x_i-m\le 0\), so each \(e^{x_i-m}\in(0,1]\) — no overflow, and the largest term is exactly 1, so the sum can't underflow to zero.

2. Reuse for softmax. The stable softmax is \(\mathrm{softmax}(x)_i = e^{x_i-m}\big/\sum_j e^{x_j-m}\); subtracting \(m\) cancels in the ratio, so the values are unchanged but the intermediates stay bounded.

3. Sanity-check & cost. Outputs sum to 1 and are shift-invariant in \(x\); a constant offset leaves the result identical, which is the property you assert in review. One pass for the max, one to accumulate: \(O(n)\) time, \(O(1)\) extra space. The move: subtract the max, then exponentiate.

Second engineering high-signal item — edit distance space. The Levenshtein DP fills an \((m{+}1)\times(n{+}1)\) table in \(O(mn)\) time, but each cell only reads the row above and the cell to its left — so you can keep just two rows (or one with a saved diagonal) and cut memory to \(O(\min(m,n))\). Stating that space optimization unprompted is the kind of detail XTX coding graders reward.

How to prepare for the XTX online assessment

Five steps, weighted toward the core machinery rather than exotic topics. Spend most of your time on steps 1–2; the practice sets and timed simulation lock it in.

  1. Make the fundamentals reflexive. Drill MLE, the OLS normal equations, ridge / lasso, PCA / the SVD, and numerically stable softmax until you produce each without re-deriving it.
  2. Practice mixed sets under time. The real difficulty is breadth-under-pressure — probability, linear algebra and ML back to back. Train fast context-switching, not single-topic depth.
  3. Work the free researcher problems. The free researcher problem set mirrors what XTX probes; check your reasoning against the solution, not just the final answer.
  4. Engineers: rehearse clean, stable code. Work the free engineering problem set: state complexity up front, confirm constraints before typing, and prioritize correct, explainable code.
  5. Simulate the conditions. Take the interactive XTX OA practice on QuantVault on a clock, committing to each answer before moving on — just like the real screen.

Free researcher OA practice — probability, statistics, ML & linear algebra

Researcher track. A free set spanning every topic in the table above, each with a full worked solution. Grouped by difficulty — the hard tier reaches the OA's real ceiling; the timed mediums approximate its bar.

Free engineering OA practice — algorithmic & numerical coding

Engineering track. A free set covering the algorithmic-coding row — stable numerical routines, dynamic programming, big-integer arithmetic and core data structures — each with a full worked solution. The hard tier matches the OA's medium-to-hard bar.

XTX Markets OA — FAQ

What is the XTX Markets online assessment?

A timed, auto-graded screen that opens XTX's hiring funnel. It tests fluency in the ML, statistics and linear-algebra machinery the firm trades on. Researchers get an ML-and-probability test; engineers get coding.

What is the XTX OA pass rate?

Around 5–10% by community estimate, OA stage only, unofficial — treat it as a difficulty signal, not a precise number. It would make this one of the most selective OA-stage filters in quant. The figure is aggregated from public candidate write-ups across recent cycles, not an XTX disclosure.

What is the format of the XTX Markets OA?

Two timed, auto-graded role tracks — a researcher screen and an engineering coding test. The per-track question counts, timing and tooling are laid out in the XTX OA role-tracks comparison above.

What platform does the XTX OA use?

Candidate reports differ, and it varies by year — so let the topics drive your prep, not the tool. The reported per-track platforms appear in the XTX OA role-tracks comparison.

How do I practice for the XTX Markets online assessment?

Drill MLE, OLS, ridge/lasso, PCA/SVD and stable softmax until fast, then practice mixed sets under a clock. Work the free researcher problems and free engineering problems, each with a full worked solution. Then take the interactive XTX OA practice, or browse the wider XTX Markets interview questions.