Optimal Tick Improvement for a Market Maker

Optimization · Medium · Free problem

A market maker can improve their quote by $k \in \{0, 1, 2, \ldots\}$ ticks (each tick has size $\tau$). Improving by $k$ ticks multiplies the conditional-on-queue fill intensity by $e^{\lambda k}$ for some $\lambda > 0$, but reduces the per-fill spread capture from $s$ to $s - k\tau$.

Ignoring adverse selection differences across $k$, choose the optimal tick improvement $k^{*}$ that maximizes expected profit per unit time. Under what condition on $s$, $\lambda$, and $\tau$ is it optimal to improve by at least one tick?

Hints

  1. Write down the profit-per-unit-time function: it is the product of the fill intensity $e^{\lambda k}$ and the spread capture $s - k\tau$.
  2. Treat $k$ as continuous and differentiate $\Pi(k) = e^{\lambda k}(s - k\tau)$ to find the critical point.
  3. The continuous optimum is $k^{*} = s/\tau - 1/\lambda$. For the discrete answer, compare $\Pi$ at the two nearest integers. For the one-tick condition, check when $\Pi(1) > \Pi(0)$.

Worked Solution

How to Think About It: This is a classic rate-times-margin optimization. Improving your quote makes you more likely to get filled (higher intensity), but each fill is worth less (smaller spread capture). The expected profit per unit time is the product of the fill rate and the per-fill profit. You want to find the sweet spot where the marginal gain in fill rate exactly offsets the marginal loss in spread. This is the same tradeoff a retailer faces between price and volume.

Quick Estimate: The profit function is $\Pi(k) = e^{\lambda k}(s - k\tau)$. At $k = 0$, profit is $s$ (times the base intensity, which we can normalize to $1$). At $k = 1$, profit is $e^{\lambda}(s - \tau)$. Improving by one tick is worthwhile if $e^{\lambda}(s - \tau) > s$, i.e., $e^{\lambda} > s/(s - \tau)$. For small $\lambda$ and $\tau$, this approximates to $\lambda > \tau/s$ -- the fill-rate elasticity must exceed the fractional spread loss.

Approach: Treat $k$ as continuous, optimize with calculus, then round to the nearest integer.

Formal Solution:

The expected profit per unit time (up to the base intensity constant) is:

$$\Pi(k) = e^{\lambda k}(s - k\tau)$$

where $k \geq 0$ and $s - k\tau > 0$ (i.e., $k < s/\tau$).

*Continuous relaxation:* Taking the derivative and setting it to zero:

$$\Pi'(k) = \lambda e^{\lambda k}(s - k\tau) + e^{\lambda k}(-\tau) = e^{\lambda k}[\lambda(s - k\tau) - \tau] = 0$$

Since $e^{\lambda k} > 0$, we need:

$$\lambda(s - k\tau) - \tau = 0$$

$$k^{*} = \frac{s}{\tau} - \frac{1}{\lambda}$$

Since $k$ must be a non-negative integer, the optimal discrete solution is:

$$k^{*} = \max\left(0, \left\lfloor \frac{s}{\tau} - \frac{1}{\lambda} + 1 \right\rfloor \text{ or } \left\lceil \frac{s}{\tau} - \frac{1}{\lambda} \right\rceil\right)$$

In practice, evaluate $\Pi$ at $\lfloor k^{*}_{\text{cont}} \rfloor$ and $\lceil k^{*}_{\text{cont}} \rceil$ and pick the better one.

*Second-order check:*

$$\Pi''(k) = e^{\lambda k}[\lambda^2(s - k\tau) - 2\lambda\tau]$$

At the optimum $s - k^{*}\tau = \tau/\lambda$, so $\Pi''(k^{*}) = e^{\lambda k^{*}}[\lambda^2 \cdot \tau/\lambda - 2\lambda\tau] = e^{\lambda k^{*}}[-\lambda\tau] < 0$. This confirms a maximum.

*Condition for improving at least one tick ($k^{*} \geq 1$):*

From $k^{*}_{\text{cont}} = s/\tau - 1/\lambda \geq 1$:

$$\frac{s}{\tau} - \frac{1}{\lambda} \geq 1 \implies \lambda \geq \frac{\tau}{s - \tau}$$

Equivalently, $\lambda(s - \tau) \geq \tau$, or $\lambda s \geq \tau(1 + \lambda)$.

For the exact discrete condition, it is optimal to improve by at least one tick when $\Pi(1) > \Pi(0)$:

$$e^{\lambda}(s - \tau) > s \implies e^{\lambda} > \frac{s}{s - \tau}$$

Answer: The continuous optimum is $k^{*} = s/\tau - 1/\lambda$. It is optimal to improve by at least one tick when $e^{\lambda} > s/(s - \tau)$, i.e., the exponential boost in fill rate from one tick improvement exceeds the ratio of current spread to reduced spread. Equivalently, for small $\lambda$ and $\tau/s$, the condition is approximately $\lambda > \tau/(s - \tau)$.

Intuition

This problem captures the fundamental market-making tradeoff between fill probability and edge per fill. Every market maker faces this daily: quoting tighter gets you more fills but less profit per fill. The exponential fill-rate model is stylized but captures the empirical observation that queue priority matters enormously -- being one tick better can dramatically increase your fill rate.

The optimal solution $k^{*} = s/\tau - 1/\lambda$ has a clean interpretation: you should improve until your remaining spread capture ($s - k\tau$) equals $\tau/\lambda$. When $\lambda$ is large (fill rate is very sensitive to price), you should be aggressive and quote tight. When $\lambda$ is small, the extra fills from improving are not worth the lost spread. This same rate-times-margin optimization shows up in pricing decisions across all of quantitative trading.

Open the full interactive solver →