Units and Inventory Scaling in the Avellaneda–Stoikov Model
Summary
This document examines how units and parameter choices affect the Avellaneda–Stoikov market-making model. It gives the reservation-price skew and optimal spread equations, then asks how price variance, order-arrival intensity, inventory, and remaining trading time should be measured consistently. The author considers estimating variance from squared log returns, converting it to dollar variance, and fitting arrival intensities per tick with an exponentially decaying curve. These are questions and proposals rather than resolved recommendations.
The discussion also proposes normalizing inventory by its bound so the inventory variable stays between minus one and one, and illustrates how this would make an exponential order-size adjustment parameter easier to interpret. It asks whether inventory should instead be scaled in relation to dollar volatility, and how the horizon used for variance and intensity relates to the model's remaining time. The document supplies equations and implementation concerns, but no empirical comparison, calibrated example, or definitive answer. Its usefulness is therefore mainly in identifying unit-consistency and parameter-scaling issues practitioners need to investigate when applying the model.
Key ideas
- The reservation price shifts from the midprice according to an inventory skew.
- The model's spread equations combine a volatility term with liquidity terms based on order-arrival intensity.
- The author questions how variance and arrival intensity should be aligned across time and price units.
- Normalizing inventory by its limit is proposed to make inventory effects and order-size controls easier to interpret.
- The document raises calibration questions but does not provide definitive answers or empirical evidence.
Tags
Full text
# Units in the Avellaneda and Stoikov Model
# Units in the Avellaneda and Stoikov Model
The Avellaneda-Stoikov model calculates the optimal bid and ask prices. The reservation prices are given by:
$$s(q_t, t, T, \sigma_{(t+p)}^2, \gamma) = q_t \gamma \sigma_{(t+p)}^2 (T - t)$$
Where $I_{skew} = s(q_t, t, T, \sigma_{(t+p)}^2, \gamma)$ is the inventory skew.
$$r(S_t, I_{skew}) = S_t - I_{skew}$$
where:
- $r(S_t, S_i)$ outputs the reservation price $r$
- $S_t$ is the indifference price
- $q_t$ is the current inventory
- $\gamma$ is the risk aversion parameter
- $\sigma^2$ is the variance of the price process
- $T - t$ is the remaining time until the end of the trading period
The optimal bid and ask spreads are given by:
$$\delta^{-} = \frac{1}{2} \gamma \sigma_{(t+p)}^2 (T - t) + \frac{1}{\gamma} \ln(1 + \frac{\gamma}{\kappa^{-}})$$
$$\delta^{+} = \frac{1}{2} \gamma \sigma_{(t+p)}^2(T - t) + \frac{1}{\gamma} \ln(1 + \frac{\gamma}{\kappa^{+}})$$
where:
- $\kappa^{-}$ is the liquidity bid side modeled by order arrival intensity
- $\kappa^{+}$ is the liquidity ask side modeled by order arrival intensity
- $\delta^{-}$ is the optimal bid spread
- $\delta^{+}$ is the optimal ask spread
Thus, we can calculate the bid price and ask price as:
$$P_b = r - \delta^{-}$$
$$P_a = r + \delta^{+}$$
where:
- $P_b$ is the optimal bid price
- $P_a$ is the optimal ask price
This question is a few follow on questions to: What are the parameters’ units in the Avellaneda and Stoikov model?
With respect to units in the Avellaneda and Stoikov and related models, I have been curious particularly around $\sigma^2$ as it relates to the price process. Obviously it makes sense to calculate $\sigma^2$ a function of squared log returns over a time window if you don't have access to implied volatility data for a market (i.e. there are no options traded on that market) and make a volatility projection. Scaling it to dollars variance makes sense as well. What isn't intuitive is the period to measure for dollars variance. The answer to the question above elucidates that as likely the same as the offset for the intensity $\lambda(\delta_p)$ of the ticks over the exposure.
The question, then, is how that relates to the unit of dollars in variance, i.e. should the variance also be scaled to ticks, and then respectively the entire $\delta^{-}$ $\delta^{+}$ scaled back up to dollars? It seems intuitive that we want to keep the temporal and spatial units in the model the same.
Additionally, given a set of $\lambda(\delta_p)$ arrival intensities per tick, where we can then project the probability of a hit on a given tick from the midprice over a given time why we use the formula with coefficients $Ae^{-k\delta_p}$ to fit a curve across the intensities, particularly. Is it strictly because of the fact that it's an exponentially decaying curve?
I've seen the other answers pointing at How does one calibrate lambda in a Avellaneda-Stoikov market making problem? and the paper linked there.
However, given that we now have a set of point processes representing arrival intensities (and we could speak more there about how they should likely be self-exciting point processes) why particularly the formula $Ae^{-k\delta_p}$ versus, say a maximum likelihood estimation of a spatial quasi-poisson over the temporal data we calculated?
Additionally, more broadly, if the unit on dollars variance per time are not dialed in, the quote width get pretty odd, and either that unit or the gradient of $k$ being out of whack can mess things up.
The other point to touch upon, the unit of $q$ - if $q$ is very different in dollars value, say a q worth \$3000 vs \$0.16, say you may have an inventory of $10$ versus an inventory of $187500$. While you can scale this unit by dollars, it will still have an outsize impact on width from the mid-price as a multiplier as it relates to the midprice itself. Given that the skew is meant to control inventory, I have taken to normalize the inventory $q$ and the inventory bounds $\bar{q}$
The normalized inventory $q_{norm}$ and inventory bounds $\bar{q}_{norm}$ are given by:
$$q_{norm} = \frac{q}{\bar{q}}$$
where:
- $q$ is the current inventory
- $\bar{q}$ is the inventory bound
Such that $q \in (-1, 1)$ which makes it easier to reason about the impact of $q$ as a whole. But, I'm wondering if I'm missing anything there with the relation to dollars volatility i.e. was that scaling of $q$ to dollars by dollars volatility intended there? Basically, if you don't normalize $q$, the meaning of $\gamma$ changes from market to market.
Additionally, if you wish to implement order shaping such as:
$$ \phi_t^{bid} = \begin{cases} 0 & \text{if } q_{norm} \geq \bar{q}_{norm} \\ \phi_t^{max} & \text{if } q_{norm} \lt 0 \\ \phi_t^{max} \cdot e^{-\eta q_{norm}} & \text{if } q_{norm} \geq 0 \end{cases} \quad \phi_t^{ask} = \begin{cases} 0 & \text{if } q_{norm} \leq -\bar{q}_{norm} \\ \phi_t^{max} & \text{if } q_{norm} \gt 0 \\ \phi_t^{max} \cdot e^{-\eta q_{norm}} & \text{if } q_{norm} \leq 0 \end{cases} $$
without $q$ normalization the parameter $\eta$ would have an unpredictable function.
Coming to the last term, how does $T-t$ relate to the time over which we are considering $\sigma^2$ and $\kappa$ (in terms of it's exposure)?Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.