Calibrating Order Arrival Intensity in Avellaneda–Stoikov Models
Summary
The document describes a practical way to estimate the order-arrival intensity used in Avellaneda–Stoikov-style market-making models, including parameters such as A and k in the Guéant–Lehalle–Tapia formulation. The proposed procedure samples starting times, records the mid-price, and measures how long it takes for the market to reach price levels at different distances from that mid-price. The procedure is repeated for both buy and sell sides.
Under a Poisson arrival assumption, those observations provide intensity estimates for each quote distance. The resulting distance-intensity relationship can then be fit to an exponential form, for example by regressing log intensity on distance or using an estimator described in the referenced research report. The method depends on implementation choices: how to treat a level already beyond the best bid or ask, what qualifies as reaching a level, and how to represent queue position. Those choices affect the measured arrival times and therefore the fitted parameters; the document does not provide a worked dataset or empirical fit.
Key ideas
- Estimate intensity by measuring the time for the market to reach levels at varying distances from the mid-price.
- Repeat the observations across starting times and on both sides of the market.
- A Poisson assumption turns the observations into arrival-intensity estimates by quote distance.
- Fit an exponential intensity curve using a regression on log intensity or another estimator.
- Level-touch definitions and queue-position assumptions influence the calibration results.
Tags
Full text
# How does one calibrate lambda in a Avellaneda-Stoikov market making problem?
# How does one calibrate lambda in a Avellaneda-Stoikov market making problem?
In market making models derived originally from Avellaneda-Stoikov, there is a function lambda that represents the arrival rate of orders. In its prodigy, there are different representations of lambda, some linear, exponential, etc. But, all of these are functions of the difference between the maker's quote and the reference price. How do you calibrate it on initialization?
Also, in a Gueant-Lehalle-Tapia model, how are A and K practically calibrated?
## Answer by lehalle (score 8, accepted)
https://quant.stackexchange.com/a/40462
(First of all, sorry to have taken so much time to see this question...)
For the paper you refer to (Guéant-L-Tapia), there is a report (in French) by Sophie Laruelle about how to do it in practice: Faisabilité de l’apprentissage des paramètres d’un algorithme de trading sur des données réelles, this title translates into "Feasibility of learning parameters of automated trading systems on real data". There are a lot of formulas and charts in her report, so hopefully you should be able to understand what she does.
In short:
- you want to estimate the intensity of to be "hit" by a market orders when you have a limit order at a distance $\delta P$ to the mid-price
- for any starting time $t_0$ record the mid-price $P^m(t_0)$
- check the time $\delta T$ when the price reach $P^m(t_0)-\delta P$ (you have to do the same for $P^m(t_0)+\delta P$ too, but here I will describe it for a buy order).
- you need to make some assumptions on: what to do if $P^m(t_0)-\delta P$ is higher than the best bid what does "the price reach a given level" means: first trade at this price, or first hit at the next price level? you can take your position in the queue to be in between.
- once it is done: for every pair of $\delta P$ and $t_0$, you have a corresponding $\delta T$, it means that under a Poisson assumption you have a lambda for each $\delta P$. This is Figure 1 of Sophie's report:
- than you have to fit the lambdas with $k\exp( -A \Delta P)$. You have several methods. One of the methods proposed in the report is $$k = \mathbb{E}_{P1,P2}\left(\frac{\log\lambda(\Delta P1) - \log(\lambda(\Delta P2)}{\Delta P1 - \Delta P2}\right),\quad A=\mathbb{E}_{P}(\lambda(\Delta P) \exp k \Delta P)$$ But you can use a linear regression, by considering $log(\lambda(\Delta P))$, if you prefer. This is Figure 4 of the report: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.