# Avellaneda-Stoikov empirical estimation verification

The solution of the model contains constant: $$k = \alpha K$$, it relates to: (i) probability of getting a fill ($$\alpha$$) and (ii) market impact ($$K$$).

Estimating (i). The author proposes that the market order sizes follow a power law distribution:

$$f(x)^Q \propto x^{-1-\alpha}$$

So no problem estimating this.

Estimating (ii). There are two equations of interest here:

$$\Delta p \propto \ln Q \tag{11}$$

\begin{align} \lambda (\delta) &= \Lambda \mathbb{P} [\Delta p > \delta] \\ &= \Lambda \mathbb{P}[\ln Q > K \delta] \\ &= \Lambda \mathbb{P} [Q > \exp \left( K \delta \right)] \\ &= \Lambda \int_{\exp (K \delta)}^{\infty} x^{-1-\alpha} dx \\ &= A \exp \left( -k \delta \right) \end{align} \tag{12}

According to the above two:

Line 1 in (12) says $$\Delta p > \delta$$, but we know that $$\Delta p = c \ln Q$$, therefore we can re-write:

\begin{align} \mathbb{P} [\Delta p > \delta] &= \mathbb{P} [c \ln Q > \delta] \\ &= \mathbb{P} [\ln Q > \frac{1}{c} \delta] \end{align}

Therefore, $$K = \frac{1}{c}$$, the inverse of the proportionality constant that we find in relation $$\Delta p \propto \ln Q$$.

Is this correct? (The estimation of $$K$$).

Note: I am aware of Sophie Laruelle's paper. But, unfortunately, I do not know French.

Super Note: My understanding of this answer relating to Sophie's paper:

Definitions:

• $$t_0$$ - start time (this is the start time point in the interarrival time slots in a Poisson Process). Simply put, if you get hit, that is a new time: $$t_1$$, which becomes your new start time.

• $$\delta P$$ - distance of your order from the mid price. If the mid price is \$100, and your bid is at \$85, then this quantity is \$15. Same for asks, obviously. • $$P^m (t)$$ - is your mid price at time $$t$$. Procedure: • Record start time: $$t_0$$ and corresponding mid price: $$P^m(t_0)$$ at this time. • Record the time $$t_1$$ when the bid/ask is hit and the $$\delta P$$s. The reason I have added plural "s" ending in there is because you might get hit at a number of levels. An example is asked for here. This is your order book (OB): |--- qty ---| --- size --- | asks$105        10
$104 5 bids$100         6
$99 5  Imagine a market order comes in that eats 8 units on the bid size (so it was a market sell). You record the change in price, $$\delta P = \102 - \100 = \2$$ at first level and the corresponding time of this trade, $$t_1$$. You also record $$\delta P = \102 - \99 = \3$$ at the same time, $$t_1$$ (in this case). If there was a market order that only took portion of the best ask/bid, or full best ask/bid and did not go deeper, we would only collect a single $$\delta P$$ with its corresponding $$t$$. Note that you can define the point at which the order is hit differently, this is up to you. - You now have time lengths and corresponding sizes. Interarrival times in a Poisson Process are exponential: $$\mathbb{P}[X_1 > t] = \mathbb{P}\left[ \texttt{no arrival in time (0, t]} \right]= e^{-\lambda t}$$ • So now for each bucket of price changes like: $$[\1, \1.5]$$ i.e. all of the $$\delta P$$ that are between 1 and 1.5 bucks, you have a list of interarrival times: $$[0.3, 0.2, 0.5, 0.7, 1.1]$$ in seconds. Fit the above exponential distribution to each data bucket to obtain some empirical estimate of $$\lambda$$. • You now have figure 1 from Sophie's paper. Well done. Problems ahead: • What now? So the question is, if you fit the regression to this, what is your $$k$$, what is your $$A$$? • Not so important. What is this equation referring to, what is $$P_1$$, what is $$P_2$$, what is $$P$$: $$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)$$ • This post might help you make sense of her paper: quant.stackexchange.com/questions/36073/… – wildbunny Apr 1 '19 at 18:14 • I have seen it, but I can't make much of it. For example, what is$P_1$and$P_2$quoted in the expectation of$k$, what is$P$quoted in the expectation of$A\$. – Naz Apr 1 '19 at 18:50
• ok, I think I understand what he is saying there. But not fully. So I will write my understanding in my question above. Hopefully, someone can have a look at it. – Naz Apr 1 '19 at 19:41
• Full disclosure: I haven't used this yet, but my understanding of the process on a very high level, is that you're recording the amount of time it takes for the market to hit a given price level, some number of ticks away from the current price. You then turn that into a probability of being filled at that many ticks away. Then you do many such samples, at different number of ticks, then you plot them in a graph and do a regression to find A and k. – wildbunny Apr 2 '19 at 8:07
• Shall I add the full thing as an answer? – wildbunny Apr 20 '19 at 17:51

The key is producing a graph like the one in Sophie's paper, once you have that you can do a regression to find $$A$$ and $$k$$ in

$$\lambda(δ) = Ae^{(-kδ)}\,$$

Intuitively, what you are graphing is a realisation of the above equation, so all you need to do is determine the coefficients.

edit: I started with a log-linear regression and although it seemed ok at first, it was very poor for small tick sizes, it might actually be better to use the other method, which is

$$k = \left(\frac{\log(\lambda(δ2) / \lambda(δ1))}{δ2 - δ1}\right),\quad A=\lambda(δ1) e^{(kδ1)}$$

Where δ1 and λ(δ1) are tick value 1 and rate value 1, so you're essentially just building an exponential curve guaranteed to pass through the values corresponding to the two ticks you arbitrarily pick.

Some things to watch out for:

1) If you record a fill when the next price level gets hit, you're not recording fill rates, but jump rates

2) The fill rates must be decreasing with $$δ$$ otherwise the regression wont make any sense and you'll get bad values out.

3) $$k$$ must be positive, so you'll need to negate it if you do a log level regression

4) What you're recording here is essentially historical alpha, which may or may not be useful in any way for predicting what the market is going to do, rather than what it has done.