Research Topics
On this page, you can find friendly introductions to my research topics. Learn more about limit order books, marked point processes and Hawkes processes. Watch animations of real market data.
This page is not compatible with mobile browsers.
LIMIT ORDER BOOKS
Available quantity
90
60
90
120
100
130
110
100
Price levels
50
50
$17.33
$17.35
THE LIMIT ORDER BOOK MECHANISM
Most of trading now happens on computers through a limit order book mechanism. Traders and trading algorithms submit orders to the electronic exchange (e.g. the Nasdaq) to express their buy and sell wishes. Orders that are waiting to be filled are called limit orders. For each stock (e.g. Apple), the limit orders that target that stock are aggregated in what is called the limit order book. The picture above is a typical way to represent the limit order book. In blue (respectively red), one can see the buy (respectively sell) limit orders. Each block corresponds to an awaiting order. The size of the block (indicated by the number at the centre) shows the size of the order (e.g. the number of shares that one wishes to trade). The position of the block on the horizontal axis indicates the price of the order (e.g. the price at which one is willing to trade). In this current state of the limit order book, if one wishes to sell right now, the best price that one can get is $17.33. This price is called the bid price. Similarly, the best price at which one can instantly buy is $17.35 and this is called the ask price. The average of these two prices is called the mid price. This is the price that one can consult on Google, but as you can see, the limit order book carries much more information.
Suppose now that we want to buy 200 shares. To achieve this goal, we send the following succession of orders:

buy order of size 80 at $17.35 (results in an instant trade);

buy order of size 120 at $17.34 (becomes a limit order, no instant trade happens);

cancellation of the previous buy order;

buy order of size 120 at $17.37 (results in an instant trade).
Assuming that no other orders are submitted in the meantime, the following pictures show the evolution of the limit order book after each order. Click on each picture to zoom. The first picture shows the initial state before the submission of our first order.
ANIMATIONS OF REAL MARKET DATA
In the video below, watch the limit order book of the stock Apple on the Nasdaq stock exchange on June 21, 2012. The clock at the top indicates the current time. The video starts exactly at 11am and shows one minute of activity. We only display the first ten levels on each side of the limit order book. The secondary plot in the lower part records the evolution of the bid and ask prices. Each time a trade occurs, a vertical bar is drawn at the corresponding time. The height of these bars (to be read on the secondary axis) indicates the trade size (i.e. number of shares exchanged) while the colour indicates which side initiated the trade. For example, a blue bar means that the trade was triggered by a buy order. The data used to generate this video was provided by LOBSTER. Note that free data samples are available on their website.
More videos are available on my youtube channel. In particular, you can watch the flash crash of May 2010!
I suggest to enable the 1080p60 HD quality if your internet connection allows it.
SOME REFERENCES

Gould, M. D., Porter, M. A., Williams, S., McDonald, M., Fenn, D. J., and Howison, S. D. (2013). Limit order books. Quantitative Finance, 13(11):1709–1742.

Cont, R. (2011). Statistical modeling of highfrequency financial data. Signal Processing Magazine, IEEE, 28(5):16–25.
MARKED POINT PROCESSES
RANDOM TIMES AND MARKS
A marked point process is an increasing sequence of random times T , T , ... to which one associates a sequence of random marks M , M , ... In applications, each random time T usually represents the time when the n event occurs while the associated random mark M describes that event. For example, T will indicate the date and time of a crime while M = 3 will mean that it occurred in the third district of Paris. In the context of limit order book modelling, one can think of the random times as the arrival times of future orders and of the random marks as the characteristics of these orders (e.g. price, quantity, buy or sell). The figure below illustrates a realisation of a marked point process (i.e. a possible scenario).
1
2
1
2
n
th
n
n
n
Mark
1
M
2
M
N(t) = 2
Time
1
T
2
T
t
THE INTENSITY
We now introduce a key concept that characterises the dynamics of marked point processes, that is, the intensity. For simplicity, first assume that there are no marks (i.e. we only model when events happen but not what events happen). One can associate to the increasing sequence of random times given above a counting process N(t) that counts the number of events that have happened up to time t. In other words, N(t) is equal to the number of times T that are smaller or equal to t. For any random variable X, we denote by its average conditional on all the available information at time t. The intensity at time t is then the quantity such that
n
,
where dt is any small time increment. The above equation simply means that, at time t, given everything that happened so far, there will be on average a number of events in the next dt seconds. That is why one can think of the intensity as an arrival rate. The bigger the intensity, the higher the probability that an event is about to occur. To go back to the case where we also have marks that describe the events, one can associate a separate counting process to each possible mark. Then, in a very similar fashion as above, one can define a separate intensity for each possible mark. If the intensity of a given mark is big, this means that many events with that mark can potentially happen in the near future. What is meant in this more general context by the intensity process is the collection of all these markspecific intensities.
SOME REFERENCES

Brémaud, P. (1981). Point Processes and Queues: Martingale Dynamics. SpringerVerlag, New York.

Daley, D. J. and VereJones, D. (2003). An introduction to the theory of point processes. Vol. I. Probability and its Applications (New York). SpringerVerlag, New York, second edition. Elementary theory and methods.
HAWKES PROCESSES
GENERATING MARKED POINT PROCESSES USING THE INTENSITY
We have defined the concepts of intensity and marked point process but we still have not given an actual example of marked point process. How can one generate these random times and marks? Well, since the intensity of a marked point process gives a us a good intuition about its dynamics, one common approach is to specify the intensity first. Instead of giving explicitly the probability distribution of the random times and marks, we say that we work with the marked point process such that its intensity satisfies a certain equation. For example, an intensity such that for all times t, where C is any positive number (i.e. a constant intensity), corresponds to a Poisson process (the most famous point process).
SELFEXCITING EQUATION
Intuitively, if the intensity is constant as in the above example (Poisson point process), this means that the future is independent of the past. No matter what happened in the past, the future intensity will always be the same and the probability distribution of future events remains unchanged. However, there are many phenomena for which past events tend to precipitate future events. Think for example of:

earthquakes (a seismic wave tends to be followed by another seismic wave);

crimes (one crime tends to trigger another crime);

social networks (people post messages in response to past messages);

and, of course, limit order books (traders and algorithms submit orders in response to past orders).
The idea behind Hawkes processes is to make the intensity dependent on past events, allowing one to model such selfexciting behaviours and clustering effects. For simplicity, let us go back to the case where we have no marks (or equivalently just one possible mark) and, thus, only one intensity. A Hawkes process is defined as marked point process such that its intensity satisfies
,
where c is a constant number, called base rate, and k is function, called kernel, that maps positive numbers to positive numbers. If no event happened before time t, then the intensity is simply equal to the base rate c. If one event happened before time t, then the intensity at time t is equal to the base rate plus k(t  T ). If two events happened before time t, then the intensity at time t is equal to the base rate plus k(t  T ) plus k(t  T ); and so forth. The number k(h) is the amount by which an event increases the intensity h seconds later. Hence, the kernel k defines how past events precipitate future events. The more the kernel k takes high values, the more the selfexcitation effect is pronounced.
1
1
2
GENERALISING TO MORE THAN ONE POSSIBLE MARK
Hawkes processes as defined above can be generalised to the case where there is a multitude of possible marks. If for example there are two possible marks (A or B), we will have two selfexciting equations (one for each intensity of each mark) and, in each of these equations, two kernels will appear. For instance, regarding the intensity of events with mark A, one kernel will define how past events of type A precipitate future events of type A, while a second kernel will define how past events of type B precipitate future events of type A. Hence, such a Hawkes process will be described in total by four kernels. On top of selfexcitation effects (A precipitates A), we now have crossexcitation effects (B precipitates A).
AN EXAMPLE OF APPLICATION TO LIMIT ORDER BOOKS
Rambaldi, Bacry and Lillo (2016) use a Hawkes process with 24 different possible marks (thus with 24 x 24 = 576 kernels!) to model the order flow in a limit order book. The event type of each order is determined by its direction (buy or sell), its size (four size groups are defined) and its effect in the limit order book (instant trade, limit order or cancellation), giving indeed 2 x 4 x 3 = 24 possibilities. Note that only orders with prices equal to the bid and ask prices or inbetween are considered. Using data from the Eurex Exchange for the DAX Future (the studied asset), they are able to estimate the 576 kernels (their time window is July 2013 to November 2014). The picture below represents 12 of these 576 kernels. Let us just comment on the most pronounced one, that is the one represented by upwards triangle (the first in the legend) and, for convenience, let us call the event "a small sell order (the first size group) that does not result in an instant trade (i.e. a limit order)" an event of type A. This kernel describes how past events of type A precipitate future events of type A. In particular, we see that an event of type A causes 0.3 milliseconds later an increase of almost 1,000 events per second in the intensity of events of type A! However, 10 milliseconds later, the direct influence of that event on the intensity looks negligible. More generally, by studying the estimated kernels, one can learn to what extent events precipitate each other and the typical timescales at which these interactions happen.
Source: Rambaldi, Bacry and Lillo (2016)
SOME REFERENCES

Laub, P. J., Taimre, T., and Pollett, P. K. (2015). Hawkes Processes. ArXiv eprints.

Bacry, E., Mastromatteo, I., and Muzy, J.F. (2015). Hawkes processes in finance. ArXiv eprints.

Rambaldi, M., Bacry, E., and Lillo, F. (2016). The role of volume in order book dynamics: a multivariate Hawkes process analysis. ArXiv eprints.