Benchmark Dataset for Mid-Price Prediction of Limit
Order Book data

arXiv:1705.03233v3 [] 30 May 2017

∗

†

Adamantios Ntakaris, † Martin Magris, † Juho Kanniainen, ∗ Moncef
Gabbouj, ∗ Alexandros Iosifidis
*Department of Signal Processing, Tampere University of Technology
Laboratory of Industrial and Information Management, Tampere University of
Technology

Abstract
Presently, managing prediction of metrics in high frequency financial markets
is a challenging task. An efficient way to do it is by monitoring the dynamics
of a limit order book and try to identify the information edge. This paper
describes a new benchmark dataset of high-frequency limit order markets for
mid-price prediction. We make publicly available normalized representations
of high frequency data for five stocks extracted from the NASDAQ Nordic
stock market. Furthermore, we define an experimental protocol that can be
used in order to evaluate the performance of related research methods. Baseline results based on linear and nonlinear regression models are also provided
and show the potential that these methods have for mid-price prediction.
Keywords: high-frequency trading, limit order book, mid-price, prediction,
machine learning, ridge regression, single hidden feedforward neural network
1. Introduction
Automated trading became a reality when the majority of exchanges incorporated it globally. This environment is ideal for high frequency traders.
High frequency trading (HFT) and a centralized matching engine, named
limit order book (LOB), are the main drivers for generating big data [45]. In
this paper, we describe a new order book dataset consisting of approximately
four million events for ten consecutive days trading of five stocks. The data is
derived from ITCH feed provided by NASDAQ OMX Nordic and consists of
the time ordered sequences of messages that track and record all the events
Preprint submitted to Journal Name

June 1, 2017

occurred in the specific market. It provides a complete market-wide history
of ten trading days. Additionally, we define an experimental protocol to
evaluate the performance of research methods in mid-price prediction1 .
Datasets, like ours, come with challenges, including the selection of appropriate data transformation, normalization, description and classification
models. This type of massive datasets require very good understanding of
the available information that can be extracted for further processing. We
follow the information edge as has been recently presented by Kercheval and
Zhang [28]. The authors present a detailed description of representations
that can be used for predicted the movement of mid-price. Based on this
data representation, they apply non-linear classification based on Support
Vector Machines (SVM), in order to predict the movement of mid-price.
Such a supervised learning model exploits class labels2 for short and long
term prediction. However, they train their model based on a very small,
when compared to the size of the data that can be potentially available for
such applications, datasets of 4000 samples. This is due to the limitations of
many nonlinear kernel-based classification models related to their time and
space complexity with respect to the training data size. On the other side,
Sirignano [49] uses large amounts of data for nonlinear classification based on
feedforward network. The author takes advantage of the local spatial structure3 of the data for modelling the joint distribution of LOB’s state based
on the current state of it.
Despite the major importance of publicly available datasets for advancing
research in HFT field, there is not any detailed public available benchmark
dataset for methods evaluation purposes. In this paper, we describe the first
publicly available dataset for LOB-based HFT that has been collected in
a hope of facilitating future research in the field. We provide time series
representations based on [28] of ≈ 4, 000, 00 trading events and annotations
for 5 classification problems. Baseline results of two widely used methods,
i.e. linear and nonlinear regression models, are also provided.
The rest of the paper is organized as follows. We provide a comprehensive literature review of the field in Section 2. Dataset and experimental
1

Mid-price is the average of the best bid and best ask price. 2 Labels extracted based
on annotations provided by experts and represent the direction of the mid-price. Three
different states are defined, i.e. upward, downward and stationary movement. 3 By local
movement, the author means that the conditional movement of the future price (e.g best
ask price movement) depends, locally, on the current LOB state.

2

protocols description is provided in Section 3. Quantitative and qualitative
comparisons of the new dataset with related data sources are provided in
Section 4. In Section 5 we describe the engineering of our baselines. Section
6 displays our empirical results and Section 7 is the conclusion.
2. Machine Learning for HFT and LOB
The complex nature of HFT and LOB space is suitable for interdisciplinary
research. In this section provide a comprehensive review of recent methods
exploiting machine learning approaches. Regression models, neural networks
and several other methods have been proposed for inference of the stock
market. Literature varies from metric prediction to optimal trading strategies
identification. Research community tries to tackle the challenges of prediction
and data inference from different angles. While mid-price prediction can be
considered as a traditional time-series prediction problem, there are several
challenges that justify HFT as a unique problem.
2.0.1. Regression Analysis
Regression models have been widely used for HFT and LOB prediction.
Zheng et al. [57] utilize logistic regression in order to predict the inter-trade
price jump. Alvim et al. [3] use Support Vector Regression (SVR) and Partial
Least Squares (PLS) for trading volume forecasting for ten stocks of Bovespa.
Pai and Lin [39] use a hybrid model for stock price prediction. They combine an Auto-Regressive Integrated Moving Average (ARIMA) model and
an SVM classifier in order to model non linearities of class structure in regression estimation models. Liu and Park [32] develop a multivariate linear
model to explain short term stock price movement where bid-ask spread is
used for classification purposes. Detollenaere and D’ Hondt [16] apply adaptive Least Absolute Shrinkage and Selection Operator (LASSO)1 for variable
selection which best explains transaction cost of the split order. They apply
an adjusted ordinal logistic method for classifying ex ante transaction costs
into groups. Cenesizoglu et al. [11] work on a similar problem where they
try, based on an autoregressive model, to test through empirical evidences
the theoretical approach that the state of the limit order can be informative
for future prices direction.
1

Adaptive weights are used for penalizing different coefficients in the l1 penalty term

3

Panayi et al. [41] use Generalized Linear Models (GLM) and Generalised
Additive Models for Location, Shape and Scale (GAMLSS) models in order
to relate the Threshold Exceedance Duration (TED), which measures the
length of time required for liquidity replenishment, with the state of the
LOB. Yu [55] tries to extract information from order information and order
submission based on the ordered probit model1 . The author shows, for the
case of Shanghai stock market, that LOB’s information is affected by the
traders strategy with different impact on the bid and ask side of LOB. Amaya
et al. [4], by using panel regression2 for order imbalances and liquidity costs
in LOB, want to identify the resilience in the market and they find that such
order imbalances cause liquidity issues that last up to ten minutes. Malik
and Ng [35] analyse the asymmetric intra-day patterns of LOBs. They apply
regression with a power transformation on the Notional Volume Weighted
Average Price (NVWAP) curves in order to conclude that both sides in the
market behave asymmetrically to market conditions3 . In the same direction,
Ranaldo [42] examines and shows the relationship between trading activity
and the order flow dynamics in LOBs where the empirical investigation is
based on a probit model. Cao et al. [9] examine, by using an Auto-Regressive
(AR) model of order 5 (the AR(5) framework) the depth of different levels
of an order book where they find that levels beyond the best bid and best
ask prices can provide moderate knowledge regarding the true value of an
asset. Creamer [15] suggests that the Logitboost is ideal for selecting the
right combination of technical indicators4 .
2.0.2. Neural Networks
HFT is mainly a scalping5 strategy where the chaotic nature of the data
creates the proper framework for the application of neural networks. Levendovszky and Kia [30] propose a multi-layer feedforward neural network
1

The method is the generalisation of a linear regression model when dependent variable
is discrete. 2 Panel regression models provide information on data characteristics individually but also across both individuals over time. 3 Market conditions refer to the
characteristics of an industry sector which can have impact on sellers and buyers who
are related to it. Factors to consider include, for example, the number of competitors
in the sector, if there is a surplus then new companies may find it difficult to enter the
market and remain in business. 4 Technical indicators are mainly used for short term
price movement predictions. They are formulas based on historical data. 5 Scalping is
the type of trading strategy where the trader tries to make profit for small changes of a
stock.

4

topology, trained using the backprogation algorithm, for predicting the price
of EURUSD pair. Sirignano [49] proposes a new method for training deep
neural networks which tries to model the joint distribution of the bid and ask
depth, where focal point is the spatial nature1 of the limit order book levels.
Bogoev and Karam [7] propose the use of a Single-hidden Layer Feedforward
Neural (SLFN) network for the detection of quote stuffing and momentum
ignition. Dixon [17] uses a Recurrent Neural Network (RNN) for mid-price
prediction on T-bond2 and ES futures3 ultra-high frequency data. Rehman
et al. [43] apply Recurrent Cartesian Genetic Programming Evolved Artificial Neural Network (RCGPANN) for predicting five currency rates against
the Australian dollar. Galeshchuk [20] suggests that a Multi-Layer Perceptron (MLP) architecture having three hidden layers is suitable for exchange
rate prediction. Majhi et al. [34] use the Functional Link Artificial Neural
Network (FLANN) in order to predict price movements in the DJIA4 and
S&P5005 stock indices.
Deep belief networks were employed in [46] to design a medium frequency
portfolio trading strategy. Hallgren and Koskik [22] use Continuous Time
Bayesian Networks (CTBNs) for causality detection. They apply their model
on tick-by-tick high frequency foreign exchange data EURUSD by using and
extending the Skellam process6 . Sandoval and Hernandez [44] create a profitable trading strategy by combining Hierarchical Hidden Markov Models
(HHMM) where they considered wavelet based LOB information filtering.
In their work, they consider also a two-layer feed-forward neural network in
order to classify the upcoming states but they report limitation in the neural
network in terms of the volume of the input data.
1

The spatial nature of this type of neural network and its gradient can be evaluated at
far fewer grid points. This makes the model less computational expensive. Furthermore,
the suggested architecture can model the entire distribution in the Rd space. 2 Treasury bond (T-bond) is a long-term fixed interest rate debt security issued by the federal
government. 3 E-mini S&P 500 (ES futures) are electronically traded futures contract
where there value is one fifth the size of standard S&P futures. 4 The Dow Jones Industrial Average (DJIA) is the price-weighted average of the 30 larger, publicly-owned
U.S. companies. 5 S&P500 is the index which provides a summary of the overall market by tracking some of 500 top stocks in U.S. stock market 6 A Skellam process is
defined as S(t) = N (1) (t) − N (2 (t), t > 0 where N (1) (t) and N (2) (t) are two independent
homogeneous Poisson processes.

5

2.0.3. Maximum Margin and Reinforcement Learning
Palguna and Pollak [40] use nonparametric methods on features derived from
LOB which are incorporated into order execution strategies for mid-price
prediction. In the same direction, Kercheval and Zhang [28] employ a multiclass SVM for mid-price and price spread crossing prediction. Han et al.
[23] base their research on Kercheval’s and Zhang’s [28] multi-class SVM for
mid-price movement prediction. More precisely, they compare multi-class
SVM (exploring linear and RBF kernels) to decision trees using bagging for
variance reduction.
Kim et al. [29] use Input/Output Hidden Markov Models (IOHMMs)
and Reinforcement Learning (RL) in order to identify the order flow distribution and market-making strategies, respectively. Yang et al. [54] apply
apprenticeship learning1 methods like Linear Inverse Reinforcement Learning
(LIRL) and Gaussian Process IRL (GPIRL) for recognizing traders or algorithmic trades based on the observed limit orders. Chan and Shelton [12] use
RL as well for market-making strategies, where experiments based on MonteCarlo simulation and State-Action-Reward-State-Action (SARSA) algorithm
test the efficacy of their policy. In the same direction, Kearns and Nevmyvaka
[27] use RL for trade execution optimization in lit and dark pools. Especially,
in the case of dark pools, they apply censored exploration algorithm for the
problem of Smart Order Routing (SOR). Yang et al. [53] implement an IRL
algorithm for separation of HFT strategies from other algorithmic trading
activities. They also apply the same algorithm for identification of manipulative HFT strategies (i.e. spoofing). Felker et al. [18] predict changes
in the price of quotes from several exchanges. They apply feature-weighted
Euclidean distance to the centroid of a training cluster. They calculate this
type of distance to the centroid of a training cluster where feature selection
is taken into consideration since several exchanges included to their model.
2.1. Additional Methods for HFT and LOB
HFT and LOB research activity also covers topics like optimal submission
strategies of bid and ask orders with focus on the inventory risk which stems
from asset’s value uncertainty as in the work of Avellaneda et al. in [6].
Chang [13] models the dynamics of LOB by using Bayesian inference of the
1

Motivation for apprenticeship learning is to use IRL techniques to learn the reward
function and then use that function in order to define a Markov decision problem (MDP).

6

Markov chain model class and tested on high frequency data. Talebi et al.
[51] try to predict trends in FX market by employing multivariate Gaussian classifier (MGC) combined with Bayesian voting. Fletcher et al. [19]
examine trading opportunities for the EURUSD where the price movement
is based on Multiple Kernel Learning (MKL). More specifically, the authors
utilize SimpleMKL and the more recent LPBoostMKL methods for training
a multi-class SVM. Christensen and Woodmansey [14] develop a classification method based on Gaussian kernel in order to identify iceberg1 orders for
GLOBEX.
Maglaras et al. [33] consider the LOB as a multi-class queueing system in
order to solve the problem placement of limit and market order placement.
Mankad et al. [36] apply a static plaid clustering technique to synthetic data
in order to classify the different types of trades (they identify five types of
traders). Huh [5] shows that the information asymmetry in a high frequency
environment is crucial. Vince and Ng [52] use higher order fuzzy systems
(i.e. an adaptive neuro-fuzzy inference system) by introducing T2 fuzzy sets
where the goal is to reduce microstructure noise in the HFT sphere. Abernethy and Kale [1] apply market maker strategies based on low regret algorithms for stock market. Almgren and Lorenz [2] explain price momentum
by modelling Brownian motion with a drift whose distribution is updated
based on Bayesian inference. Næs and Skjeltorp [37] show that the order
book slope measures the elasticity of supplied quantity as a function of asset
prices related to volatility, trading activity and asset’s dispersion beliefs.
3. The LOB Dataset
In this Section, we describe in detail our dataset collected in order to facilitate future research in LOB based HFT. We start by providing a detailed
description of the data in subsection 3.1. Data processing steps followed in
order to extract Message Books and LOBs from this data are described in
subsection 3.2.
3.1. Data description
Extracting information from the ITCH flow and without relying on thirdparty data providers, we analyze stocks from different industry sectors for ten
1

Iceberg order is the conditional request made to the broker to sell or buy a larger quantity
of the stock, but in smaller predefined quantity.

7

full days of ultra-high-frequency intra-day data. The data provides information regarding trades against hidden orders. Coherently, the non-displayable
hidden portions of the total volume of a so-called iceberg order is not accessible from data. Our ITCH feed data is day-specific and market-wide
which means that we deal with one file per day with data over all the securities. Information (block A in Figure 1) regarding (i) messages for order
submissions, (ii) trades and (iii) cancellations is included. For each order,
its type (buy/sell), price, quantity, and exact time stamp on millisecond basis is available. In addition, (iv) administrative messages (i.e. trading halts
or basic security data), (v) event controls (i.e. start and ending of trading
days, states of market segments) and (vi) net order imbalance indicator are
included.
Next step is the development and implementation of a C++ converter
to extract all the information relevant to a given security. We perform the
same process for five stocks traded in NASDAQ OMX Nordic at the Helsinki
exchange from 1-June-2010 to 14-June-20101 . This data is stored in a Linux
cluster. Information related to the five stocks is illustrated in Table 1. The
selected stocks2 are traded in one exchange (Helsinki) only. By choosing only
one stock market exchange has the advantage of avoiding issues associated
with fragmented markets. In the case of fragmented markets, the limit orders
for a given asset are spread between several exchanges, posing problems on
empirical data analysis [38].
Id
ISIN Code
Company
Sector
KESBV FI0009000202 Kesko Oyj
Consumer Defensive
OUT1V FI0009002422 Outokumpu Oyj Basic Materials
SAMPO FI0009003305 Sampo Oyj
Financial Services
RTRKS FI0009003552 Rautaruukki Oyj Basic Materials
WRT1V FI0009000727 Wärtsilä Oyj
Industrials

Industry
Grocery Stores
Steel
Insurance
Steel
Diversified Industrials

Table 1: Stocks used in the analysis. RTRKS was suspended of trading and
delisted from Helsinki exchange on 20-Nov-2014.
Helsinki Stock Exchange, operated by NASDAQ Nordic, is a pure elec1

There have been about 23.000 active order books, the vast majority of them is very
illiquid and shows sporadic activity which corresponds to little and noisy data 2 The
choice is driven by the necessity of having a sufficient amount of data for training (this
excludes illiquid stocks) while covering different industry sectors. These five selected stocks
(see table 1), which aggregate input message list and order book data for feature extraction,
is about 4Gb.

8

NASDAQW ITCH FLOW DATA

A






Information in structured strings
Information about the events
Market-wide and day-specific files
I’s a flow of messages, not handy for
analyses

C++ conversion

.h5 FILES

B





Day-by-day and stock-specific files
Data grouped in tables by message type
Order book information is easy to access

Matlab scripts

Reconstructed Message list

C

Reconstructed Order book

Additional features

Machine
Learning

Results

Figure 1: Data processing flow

tronic limit order market. The ITCH feed keeps a record of all the events,
including those outside the active trading hours. At the Helsinki exchange the
trading period goes from 10:00 to 18:25 (local time, UTC/GMT +2 hours).
However, in the ITCH feed we observe several records outside the trading
hours. In particular, we consider the regulated auction period before 10:00,
which is used to settle the opening price of the day (the so-called pre-opening
period) before trading begins. This is a structurally different mechanism following different rules with respect to the order book flow during the trading
hours. Similarly, another structural break in order book’s dynamics is due to
the different regulations that are in force between 18:25 to 18:30 (the so-called
post-opening period). As a result, we retain exclusively the events occurring
9

between 10:30 and 18:00. More information related to the above mentioned
issues can be found in [48] and [47]. Here the order book is expected to have
comparable dynamics with no biases or exceptions caused by its proximity
to the market opening and closing times.
3.2. Limit Order and Message Books
Message and limit order books are processed for each of the 10 days of the
five stocks. More specifically, there are two types of messages particularly
relevant for us: (i) “add order messages”, corresponding to order submissions
and (ii) “modify order messages”, corresponding to updates on the status of
existing orders through order cancellations and order executions. Example
message and limit order books are illustrated in Tables 2 and 3, respectively.
Timestamp
1275386347944
1275386347981
1275386347981
1275386348070
1275386348070
1275386348101

Id
6505727
6505741
6505741
6511439
6511439
6511469

Price
126200
126500
126500
126100
126100
126600

Quantity
400
300
300
17
17
300

Event
Cancellation
Submission
Cancellation
Execution
Submission
Cancellation

Side
Ask
Ask
Ask
Bid
Bid
Ask

Table 2: Message list example. A sample from FI0009002422 on 01-June2010.
Particularly, LOB is a centralized trading method which is incorporated by
the majority of exchanges globally. It aggregates limit orders of both sides
(i.e. ask and bid side) of the stock market (e.g. Nordic stock market). LOB
matches every new event type according to several characteristics. Event
types and LOB characteristics describe the current state of this matching
engine. Event types can be executions, order submissions and order cancellations. Characteristics of LOB are the resolution parameters [21] which are
the tick size π (i.e. the smallest permissible price between different orders),
and the lot size σ (i.e. the smallest amount of a stock that can be traded
and is defined as {kσ|k = 1, 2, ...}). Order inflow and resolution parameters
will formulate the dynamics of LOB where the current state of it will be
identified by the state variable of four elements (sbt , qtb , sat , qta ), t ≥ 0, where sbt
(sbt ) is the best bid (ask) price, qtb (qta ) is the size of the best bid (ask) level
at time t.
10

In our data, timestamps are expressed in milliseconds since 1-Jan-1970
and shifted by three hours with respect to Eastern European Time (in the
data the trading day goes from 7:00 to 15:25). ITHC feed prices are recorded
with a 4 decimal digits precision and in our data decimal point is removed by
multiplying the price by 10.000. Currency is in Euro for Helsinki exchange.
The tick size, defined as the smallest possible gap between the ask and bid
prices, is one cent. Similarly, orders’ quantities are constrained to integers
greater than one. An example of our LOB is the following:
Level 1
Ask

Level 2
Bid

Ask

...
Bid

Timestamp

Mid-price

Spread

Price

Quantity

Price

Quantity

Price

Quantity

Price

Quantity

1275386347944
1275386347981
1275386347981
1275386348070
1275386348070
1275386348101

126200
126200
126200
126050
126050
126050

200
200
200
100
100
100

126300
126300
126300
126100
126100
126100

300
300
300
291
291
291

126100
126100
126100
126000
126000
126000

17
17
17
2800
2800
2800

126400
126400
126400
126200
126200
126200

4765
4765
4765
300
300
300

126000
126000
126000
125900
125900
125900

2800
2800
2800
1120
1120
1120

...
...
...
...
...
...

Table 3: Order book example. A sample from FI0009002422 on 01-June2010.
3.3. Data availability and distribution
In compliance with NASDAQ OMX agreements, the normalized feature dataset
is made available for the researcher community.1 The open access version of
our data has been normalized in order to prevent for reconstruction of the
original NASDAQ data.
3.4. Experimental Protocol
In order to make our dataset a benchmark that can be used for the evaluation of HTF methods based on LOB information, the data are accompanied
with the following experimental protocol. We develop a day-based prediction framework following an anchored forward cross-validation format. More
specifically, the training set is increasing by one day in each fold and stops
after n − 1 days (i.e. after 9 days in our case where n = 10). On each fold,
the test set corresponds to one day data which is moving in a rolling window format. The experimental setup is illustrated in Figure 3. Performance
1

We thank Ms. Sonja Salminen at NASDAQ for support and help.

11

is measured by calculating the mean accuracy, recall, precision and F-score
over all folds, as well as the corresponding standard deviation.

Figure 2: Experimental Setup Framework

We follow an event based inflow, as has been used in [31]. This is due to
that events (i.e. orders, executions and cancellations) do not follow a uniform
inflow rate. Time intervals between two consecutive events can vary from
milliseconds to several minutes of difference. Event based data representation
avoids issues related to such big differences in data flow. As a result, each of
our representations is a vector that contains information for 10 consecutive
events. Event based data description leads to a dataset of approximately
half a million representations (i.e. 394337 representations). We represent
these events using the 144-dimensional representation proposed recently by
Kercheval and Zhang [28], formed by three types of features: a) the raw
data of a ten-level limit order containing price and volume values for bid
and ask orders, b) features describing the state of the LOB exploiting past
information and c) features describing the information edge in the raw data
by taking time into account. Derivation of time, stock price and volume are
calculated for short and long term projection. Particularly, types in features
u7 , u8 and u9 are: trades, orders, cancellations, deletion, execution of a visible
limit order and execution of a hidden limit order respectively. Expressions
used for calculating these features are provided in Table 4.
12

We provide three sets of data, each created by following a different data
normalization strategy, i.e. z-score, min-max and decimal precision normalization, for every i datasample. Specifically, z-score is the normalization
process that we subtract the mean from our input data for each feature
seperartely and devide by the standard deviation of the given sample:
N
P
xj
xi − N1
j=1
,
=s
N
P
1
(xj − x̄)2
N

(Zscore )

xi

(1)

j=1

where x̄ denotes the mean vector as this appear in (1). On the other hand,
min-max scaling, as described by:
(M M )

xi

=

xi − xmin
,
xmax − xmin

(2)

is the process of subtracting the minimum value from each feature and dividing by the difference of the maximum and minimum value of that feature
samples. The third scalling set-up is the decimal precision approach. This
normalization method is based on moving the decimal point of each of the
feature values. Calculations are following the absolute value of each feature
sample:
xi
,
(3)
10k
where k is the integer that will give us the maximim value for |xDP | < 1.
(DP )

xi

=

Feature Set Description
Basic u1 = {Piask , Viask , Pibid , Vibid }ni=1

Details
10(=n)-level LOB Data

Time-Insensitive u2 = {(Piask − Pibid ), (Piask + Pibid )/2}ni=1
ask
bid
u3 = {Pnask − P1ask , P1bid − Pnbid , |Pi+1
− Piask |, |Pi+1
− Pibid |}ni+1
n P
o
n
n
n
n
P
P
P
1
ask 1
bid 1
ask 1
bid
u4 = n
Pi , n
Pi , n
Vi , n
Vi
i=1
i=1
i=1
i=1
nP
o
n
n
P
u5 =
(Piask − Pibid ), (Viask − Vibid )
i=1

Spread & Mid-Price
Price differences
Price & Volume means
Accumulated differences

i=1

n
on
Time-Sensitive u6 = dPiask /dt, dPibid /dt, dViask /dt, dVibid /dt
i=1
n
o
u7 = λ1∆t , λ2∆t , λ3∆t , λ4∆t , λ5∆t , λ6∆t
o
n
u8 = 1λ1∆ >λ1∆ , 1λ2∆ >λ2∆ , 1λ3∆ >λ3∆ , 1λ4∆ >λ4∆ , 1λ5∆ >λ5∆ , 1λ6∆ >λ6∆
t
t
t
t
t
t
T
T
T
T
T
T
u9 = {dλ1 /dt, dλ2 /dt, dλ3 /dt, dλ4 /dt, dλ5 /dt, dλ6 /dt}

Table 4: Feature Sets
13

Price & Volume derivation
Average intensity per type
Relative intensity comparison
Limit activity accelaration

Having defined the event representations, we use 5 different projection horizons for our labels. Each of these horizons portrays a different future projection interval of the mid-price movement (i.e. upward, downward, and
stationary mid-price movement). More specifically, we extract labels based
on short-term and long-term, event based, relative change for the next 1, 2,
3, 5 and 10 events for our representations dataset.
Our labels describe the percentage change of the mid-price and is calculated as follows:
i+k
P
1
mj − mi
k
j=i+1
(j)
,
(4)
li =
mi
where mj is the future mid-prices (k = 1, 2, 3, 5 or 10 next events in our
representations) mid-price and mi is the current mid-price. Labels extracted
based on threshold, for the percentage change, of 0.002. For percentage
change equal or bigger than 0.002 we have label 1. For percentage change,
which varies from -0.00199 to 0.00199 we have label 2 and for percentage
change smaller or equal to -0.002 we have label 3.
4. Existing Datasets Described in Literature
In this section, we list existing HFT datasets described in the literature and
provide qualitative and quantitative comparisons with our dataset.
There are mainly three sources of data that a high frequency trader can
choose from. The first option is the use of publicly available data (e.g. Dukascopy and truefx) where no prior agreement is required for data acquisition.
Publicly available data upon request for academic purposes can be found in
[8], [24], [10]. Finally, the most common source of data is through platforms
requiring a subscription fee, like those in [28], [31], [49]. Existing data sources
and characteristics of the data they provide are listed in Table 5.
1
2
3
4
5
6
7

Dataset Public Avl.
Dukascopy
X
truefx
X
NASDAQ
AuR
NASDAQ
AuR
NASDAQ
7
NASDAQ
7
Our - NASDAQ
X

Unit Time
ms
ms
ms
ms
ms
ns
ms

Period
Asset Class / Num. of Stocks
up-to-date
various
up-to-date
15 FX pairs
2008-09
Equity / 120
10/07 & 06/08
Equity / 500
Equity / 5
01/14-08/15
Equity / 489
01-14/06/10
Equity / 5

Table 5: HFT Dataset Examples

14

Size
Annotations
≈ 20000 events/day
7
≈ 300000 events/day
7
7
≈ 55000 events/day
7
2000 data points
7
50 TB
7
4 M samples
X

In particular, the datasets are in milliseconds resolution, except number seven
in the tale. Access to various asset classes including FX, commodities, indices
and stocks is also provided. To the best of our knowledge there is not any
available literature based on this type of dataset for equities. Another source
of free tick-by-tick historical data is truefx.com site, but the site provides
data only for the FX market for several pair of currencies in a millisecond
resolution. The data contains information regarding timestamps, in milliseconds resolution, bid and ask prices. Approximately, each of these csv files
contains 200000 events per day. This type of data used in a mean-reverting
jump-diffusion model as this presented in [50].
What is more, there is the second category of datasets that is available
upon request (AuR), for instance [24]. In this paper, authors use NASDAQ
OMX ITCH for two periods, October 2007 and June 2008. For that period
they run samples of ten-minutes internal for each day where they set a cutoff mechanism for available messages per period1 . The main disadvantage
of sampling HFT data uniformly is that the trader is losing vital information. Events are coming randomly, where inactive periods can vary from
few milliseconds to several minutes or hours. In our work, we overcome this
drawback by considering the information based on events inflow rather than
equal time sampling. One more example of data that is available only for
academic purposes is [8]. The dataset contains information regarding timestamps, price and buy-sell side among others but any no other details related
to daily events and available feature vectors. In [24] authors provide a detailed description of their NASDAQ OMX ITCH data, which is not direct
accessible for testing and comparison with their baselines. They are using
this data for applying low-latency strategies based on measures that captures
links between submissions, cancellations and executions.
The last category of datasets are the ones that are have dissemination
restrictions. An example is the paper [28] where authors are trying to predict
the mid-price movement by using machine learning (i.e. SVM). They train
there model with a very small number of samples (i.e. 4,000 samples). The
HFT activity can produce a huge volume of trading events daily, like our
database for instance with 100,000 daily events only for one stock. Moreover,
datasets in [28] and in [49] are not publicly available which makes comparison
with other methods impossible.
1

Authors provide a threshold which is based on 250 events per 10-min sample interval.

15

5. Baselines
In order to provide performance baselines on our new dataset of HFT with
LOB data, we conducted experiments with two regression models using the
data representations described in Section 3.4. Details on the models used are
provided in subsection 5.1 and 5.2. The baseline performances are provided
in subsection 6.
5.1. Ridge Regression
Ridge Regression defines a linear mapping, expressed by the matrix W ∈
RD×C , that optimally maps a set of vectors xi ∈ RD , i = 1, . . . , N to another
set of vectors (noted as target vectors) ti ∈ RC , i = 1, . . . , N , by optimizing
the following criterion:
∗

W = argmin
W

N
X

kWT xi − ti k22 + λkWk2F ,

(5)

i=1

or using a matrix notation:
W∗ = argmin kWT X − Tk2F + λkWk2F .

(6)

W

In the above, X = [xi , . . . , xN ] and T = [ti , . . . , tN ] are matrices formed by
the samples xi and ti as columns, respectively.
In our case, each sample xi corresponds to an event, represented by a
vector (with D = 144) as described in Section 3.4. For the three class
classification problems in our dataset, the elements of vectors ti ∈ RC (C = 3
in our case) take values equal to tik = 1, if xi belongs to class k and tik = −1,
otherwise. The solution of (6) is given by:
−1 T
T ,
(7)
W = X XT X + λI
or

−1
W = XXT + λI
XTT ,

(8)

where I is the identity matrix of appropriate dimensions. Here we should note
that in our case, where the size of the data is big, W should be computed
using (8), since the calculation of (7) is computationally very expensive.
After the calculation of W, a new (test) sample x ∈ RD is mapped to its
corresponding representation in space RC , i.e. o = WT x, and is classified to
the class corresponding to the maximal value of its projection, i.e.:
lx = arg max ok .
k

16

(9)

5.2. SLFN network-based nonlinear regression
We also test the performance of a nonlinear regression model. Since the
application of kernel-based regression is computationally very intensive for
the size of our data, we use a SLFN network based regression model. Such a
model is formed as follows:

Figure 3: SLFN

For fast network training, we train our network based on the algorithm
proposed in [25], [56] and [26]. This algorithm is formed by two processing
steps. In the first step, the network’s hidden layer weights are determined
either randomly [25] or by applying clustering on the training data []. We
apply K-Means clustering in order to determine K prototype vectors, which
are subsequently used as the network’s hidden layer weights.
Having determined the network’s hidden layer weights V ∈ RD×K , the
input data xi , i = 1, . . . , N are nonlinearly mapped to vectors hi ∈ RK
expressing the data representations in the feature space determined by the
network’s hidden layer outputs RK . We use the Radial Basis Function, i.e.
hi = φRBF (xi ) calculated in an element-wise manner as follows:


hik = exp

kxi −vk k2
2
2σ 2



, k = 1, . . . , K,

(10)

where σ is a hyper-parameter denoting the spread of the RBF neuron and
vk corresponds to the k-th column of V.
17

The network’s output weights W ∈ RK×C are subsequently determined
by solving for:
W∗ = argmin kWT H − Tk2F + λkWk2F ,

(11)

W

where H = [h1 , . . . , hN ] is a matrix formed by the network hidden layer
outputs for the training data and T is a matrix formed by the network’s
target vectors ti , i = 1, . . . , N defined as in section 5.1. The network’s
output weights are given by :
−1
W = HHT + λI
HTT .
(12)
After the calculation of the network’s parameters, V and W, a new (test)
sample x ∈ RD is mapped to its corresponding representations in spaces RK
and RC , i.e. h = φRBF (x) and o = WT h, respectively. It is classified to the
class corresponding to the maximal network output, i.e.:
lx = arg max ok .

(13)

k

6. Results
In our first set of experiments, we have applied two supervised machine learning methods, as described on section in subsections 5.1 and 5.2, on a dataset
that does not include the auction period. Results with auction period will
also be available. Since there is not a widely adopted experimental protocol
for these datasets, we provide information for the ten different label scenarios
under the three normalization set-ups.
Labels
1
2
3
5
10
Labels
1
2
3
5
10

RCCAccuracy
RCCP recision
0,637 ± 0,055 0,505 ± 0,145
0,555 ± 0,064 0,504 ± 0,131
0,489 ± 0,061 0,423 ± 0,109
0,429 ± 0,049 0,402 ± 0,113
0,453 ± 0,054 0,400 ± 0,105
SLF NAccuracy SLF NP recision
0,636 ± 0,055 0,299 ± 0,075
0,536 ± 0,069 0,387 ± 0,132
0,473 ± 0,074 0,334 ± 0,080
0,381 ± 0,038 0,342 ± 0,058
0,401 ± 0,039 0,284 ± 0,102

RCCRecall
0,337 ± 0,003
0,376 ± 0,023
0,397 ± 0,031
0,425 ± 0,038
0,400 ± 0,030
SLF NRecall
0,335 ± 0,002
0,345 ± 0,009
0,357 ± 0,005
0,370 ± 0,020
0,356 ± 0,020

RCCF
0,268 ± 0,014
0,320 ± 0,050
0,356 ± 0,070
0,400 ± 0,093
0,347 ± 0,066
SLF NF
0,262 ± 0,015
0,260 ± 0,035
0,270 ± 0,021
0,327 ± 0,043
0,290 ± 0,070

Table 6: Results based on unfiltered representations
18

Labels
1
2
3
5
10
Labels
1
2
3
5
10

RCCAccuracy
RCCP recision
0,480 ± 0,040 0,418 ± 0,021
0,498 ± 0,052 0,444 ± 0,025
0,463 ± 0,045 0,438 ± 0,027
0,439 ± 0,042 0,436 ± 0,028
0,429 ± 0,046 0,429 ± 0,028
SLF NAccuracy SLF NP recision
0,643 ± 0,056 0,512 ± 0,037
0,556 ± 0,066 0,550 ± 0,029
0,512 ± 0,069 0,497 ± 0,024
0,473 ± 0,036 0,468 ± 0,024
0,477 ± 0,048 0,453 ± 0,056

RCCRecall
0,435 ± 0,029
0,443 ± 0,031
0,437 ± 0,033
0,433 ± 0,028
0,429 ± 0,043
SLF NRecall
0,366 ± 0,019
0,378 ± 0,011
0,424 ± 0,047
0,464 ± 0,028
0,432 ± 0,025

RCCF
0,410 ± 0,022
0,440 ± 0,031
0,433 ± 0,034
0,427 ± 0,041
0,416 ± 0,044
SLF NF
0,327 ± 0,046
0,327 ± 0,030
0,389 ± 0,082
0,459 ± 0,031
0,410 ± 0,040

Table 7: Results based on Z-score normalization
Labels
1
2
3
5
10
Labels
1
2
3
5
10

RCCAccuracy
RCCP recision
0,637 ± 0,054 0,499 ± 0,118
0,561 ± 0,063 0,467 ± 0,117
0,492 ± 0,070 0,428 ± 0,111
0,437 ± 0,048 0,419 ± 0,078
0,452 ± 0,054 0,421 ± 0,110
SLF NAccuracy SLF NP recision
0,640 ± 0,055 0,488 ± 0,104
0,558 ± 0,065 0,469 ± 0,066
0,499 ± 0,063 0,447 ± 0,068
0,453 ± 0,038 0,441 ± 0,041
0,450 ± 0,048 0,432 ± 0,070

RCCRecall
0,339 ± 0,005
0,400 ± 0,028
0,400 ± 0,030
0,429 ± 0,043
0,399 ± 0,028
SLF NRecal
0,348 ± 0,007
0,399 ± 0,023
0,410 ± 0,032
0,444 ± 0,030
0,406 ± 0,037

RCCF
0,272 ± 0,015
0,368 ± 0,060
0,357 ± 0,072
0,417 ± 0,063
0,348 ± 0,066
SLF NF
0,291 ± 0,022
0,367 ± 0,050
0,370 ± 0,063
0,432 ± 0,050
0,377 ± 0,062

Table 8: Results based on Min-Max normalization
Labels
1
2
3
5
10
Labels
1
2
3
5
10

RCCAccuracy
RCCP recision
0,638 ± 0,054 0,518 ± 0,132
0,551 ± 0,066 0,473 ± 0,118
0,490 ± 0,069 0,432 ± 0,113
0,435 ± 0,051 0,406 ± 0,115
0,451 ± 0,052 0,417 ± 0,108
SLF NAccuracy SLF NP recision
0,641 ± 0,055 0,512 ± 0,027
0,565 ± 0,063 0,505 ± 0,020
0,504 ± 0,061 0,465 ± 0,032
0,457 ± 0,038 0,451 ± 0,029
0,461 ± 0,053 0,453 ± 0,036

RCCRecall
0,341 ± 0,007
0,372 ± 0,018
0,386 ± 0,023
0,430 ± 0,039
0,399 ± 0,029
SLF NRecall
0,351 ± 0,007
0,410 ± 0,026
0,421 ± 0,040
0,449 ± 0,031
0,420 ± 0,035

RCCF
0,277 ± 0,018
0,315 ± 0,045
0,330 ± 0,059
0,405 ± 0,095
0,349 ± 0,067
SLF NF
0,297 ± 0,024
0,385 ± 0,054
0,393 ± 0,073
0,438 ± 0,046
0,399 ± 0,053

Table 9: Results based on Decimal Precision normalization
Based on the results above we can clearly see that training based on labels
that are closer to the “current” state achieve better performance. Additionally to that information, we can see a sound difference between labels that try
to predict the same next event(s). For instance, the first two rows in each
19

of the tables above represents the prediction of the next mid-price movement1 . The first line dispalys the confussion matrix derivations where the
current state of LOB is not considered for the evalution. While the second
line represents the confusion matrix derivations where the “current” state is
taken under consideration. The results show that prediction attached to the
present state of LOB is, at least, slightly better.
Another reason that can effect the predictability of the baselines is the
representations normalization set-up. We can clearly see that the same feature vector dataset, under specific rescaling data methods, perfoms differently. For example, the min-max set-up give us almost 70% average accuracy2 while the unnormilized set-up gave us 68% accuracy.
7. Conclusion
This paper described a new benchmark dataset formed by the NASDAQ
ITCH feed data for 5 stocks for 10 consecutive trading days. Data representations, where expoloited by order flow features, made available. We
formulate 5 classification tasks based on mid-price movement prediction for
1,2,3,5 and 10 predicted horizons. Baselines performances of 2 regression
models were also provided in order to facilitate future research on the field.
Despite the data size we achieved an average predicted performance of, approximately, 65% for both methods. These are very promising results and
show that machine learning can effectively predict mid-price movement.
Acknowledgment
The research leading to these results has received funding from the H2020
Project BigDataFinance MSCA-ITN-ETN 675044 (http://bigdatafinance.eu),
Training for Big Data in Financial Research and Risk Management.
References
[1] J. Abernethy and S. Kale. Adaptive market making via online learning.
In Advances in Neural Information Processing Systems, pages 2058–
2066, 2013.
1

As this calculated based on the 10-event block 2 Average accuracy calculated as the
mean of all the folds in the anchored validation format for the three labels.

20

[2] R. Almgren and J. Lorenz. Bayesian adaptive trading with a daily cycle.
The Journal of Trading, 1(4):38–46, 2006.
[3] L. G. Alvim, C. N. dos Santos, and R. L. Milidiu. Daily volume forecasting using high frequency predictors. In Proceedings of the 10th IASTED
International Conference, volume 674, page 248, 2010.
[4] D. Amaya, J.-Y. Filbien, C. Okou, and A. F. Roch. Distilling liquidity
costs from limit order books. 2015.
[5] S. Aramonte, S. Rosen, and J. W. Schindler. Finance and economics
discussion series divisions of research & statistics and monetary affairs
federal reserve board, washington, dc assessing and combining financial
conditions indexes. 2013.
[6] M. Avellaneda and S. Stoikov. High-frequency trading in a limit order
book. Quantitative Finance, 8(3):217–224, 2008.
[7] D. Bogoev and A. Karam. An empirical detection of high frequency
trading strategies. 2016.
[8] J. Brogaard, T. Hendershott, and R. Riordan. High-frequency trading
and price discovery. Review of Financial Studies, 27(8):2267–2306, 2014.
[9] C. Cao, O. Hansch, and X. Wang. The information content of an open
limit-order book. Journal of futures markets, 29(1):16–41, 2009.
[10] A. Carrion. Very fast money: High-frequency trading on the nasdaq.
Journal of Financial Markets, 16(4):680–711, 2013.
[11] T. Cenesizoglu, G. Dionne, and X. Zhou. Effects of the limit order book
on price dynamics. 2014.
[12] N. T. Chan and C. Shelton. An electronic market-maker. 2001.
[13] Y. L. Chang. Inferring markov chain for modeling order book dynamics in high frequency environment. International Journal of Machine
Learning and Computing, 5(3):247, 2015.
[14] H. L. Christensen and R. Woodmansey. Prediction of hidden liquidity in
the limit order book of globex futures. The Journal of Trading, 8(3):68–
95, 2013.
21

[15] G. Creamer. Model calibration and automated trading agent for euro
futures. Quantitative Finance, 12(4):531–545, 2012.
[16] B. Detollenaere and C. D’hondt. Identifying expensive trades by monitoring the limit order book. Journal of Forecasting, 2016.
[17] M. Dixon. High frequency market making with machine learning. 2016.
[18] T. Felker, V. Mazalov, and S. M. Watt. Distance-based high-frequency
trading. Procedia Computer Science, 29:2055–2064, 2014.
[19] T. Fletcher, Z. Hussain, and J. Shawe-Taylor. Multiple kernel learning
on the limit order book. In WAPA, pages 167–174, 2010.
[20] S. Galeshchuk. Neural networks performance in exchange rate prediction. Neurocomputing, 172:446–452, 2016.
[21] M. D. Gould, M. A. Porter, S. Williams, M. McDonald, D. J. Fenn, and
S. D. Howison. Limit order books. Quantitative Finance, 13(11):1709–
1742, 2013.
[22] J. Hallgren and T. Koski. Testing for causality in continuous time
bayesian network models of high-frequency data. arXiv preprint
arXiv:1601.06651, 2016.
[23] J. Han, J. Hong, N. Sutardja, and S. F. Wong. Machine learning techniques for price change forecast using the limit order book data. 2015.
[24] J. Hasbrouck and G. Saar. Low-latency trading. Journal of Financial
Markets, 16(4):646–679, 2013.
[25] G.-B. Huang, H. Zhou, X. Ding, and R. Zhang. Extreme learning machine for regression and multiclass classification. IEEE Transactions on
Systems, Man, and Cybernetics, Part B (Cybernetics), 42(2):513–529,
2012.
[26] A. Iosifidis, A. Tefas, and I. Pitas. Approximate kernel extreme learning
machine for large scale data classification. Neurocomputing, 219:210–
220, 2017.

22

[27] M. Kearns and Y. Nevmyvaka. Machine learning for market microstructure and high frequency trading. High Frequency Trading: New Realities
for Traders, Markets, and Regulators, Risk Books, 2013.
[28] A. N. Kercheval and Y. Zhang. Modelling high-frequency limit order
book dynamics with support vector machines. Quantitative Finance,
15(8):1315–1329, 2015.
[29] A. J. Kim. Input/output hidden markov models for modeling stock
order flows. Technical report, MITAI Lab Tech. Rep, 2001.
[30] J. Levendovszky and F. Kia. Prediction based-high frequency trading
on financial time series. Periodica Polytechnica. Electrical Engineering
and Computer Science, 56(1):29, 2012.
[31] X. Li, H. Xie, R. Wang, Y. Cai, J. Cao, F. Wang, H. Min, and X. Deng.
Empirical analysis: stock market prediction via extreme learning machine. Neural Computing and Applications, 27(1):67–78, 2016.
[32] J. Liu and S. Park. Behind stock price movement: Supply and demand
in market microstructure and market influence. The Journal of Trading,
10(3):13–23, 2015.
[33] C. Maglaras, C. C. Moallemi, and H. Zheng. Optimal execution in a
limit order book and an associated microstructure market impact model.
2015.
[34] R. Majhi, G. Panda, and G. Sahoo. Development and performance
evaluation of flann based model for forecasting of stock markets. Expert
systems with applications, 36(3):6800–6808, 2009.
[35] A. Malik and W. Lon Ng. Intraday liquidity patterns in limit order
books. Studies in Economics and Finance, 31(1):46–71, 2014.
[36] S. Mankad, G. Michailidis, and A. Kirilenko. Discovering the ecosystem of an electronic financial market with a dynamic machine-learning
method. Algorithmic Finance, 2(2):151–165, 2013.
[37] R. Næs and J. A. Skjeltorp. Order book characteristics and the volume–
volatility relation: Empirical evidence from a limit order market. Journal of Financial Markets, 9(4):408–432, 2006.
23

[38] M. O’Hara and M. Ye. Is market fragmentation harming market quality?
Journal of Financial Economics, 100(3):459–474, 2011.
[39] P.-F. Pai and C.-S. Lin. A hybrid arima and support vector machines
model in stock price forecasting. Omega, 33(6):497–505, 2005.
[40] D. Palguna and I. Pollak. Mid-price prediction in a limit order book.
IEEE Journal of Selected Topics in Signal Processing, 10(6):1083–1092,
2016.
[41] E. Panayi, G. W. Peters, J. Danielsson, and J.-P. Zigrand. Designating
market maker behaviour in limit order book markets. Econometrics and
Statistics, 2016.
[42] A. Ranaldo. Order aggressiveness in limit order book markets. Journal
of Financial Markets, 7(1):53–74, 2004.
[43] M. Rehman, G. M. Khan, and S. A. Mahmud. Foreign currency exchange
rates prediction using cgp and recurrent neural network. IERI Procedia,
10:239–244, 2014.
[44] J. Sandoval and G. Hernández. Computational visual analysis of the order book dynamics for creating high-frequency foreign exchange trading
strategies. Procedia Computer Science, 51:1593–1602, 2015.
[45] J. J. Seddon and W. L. Currie. A model for unpacking big data analytics
in high-frequency trading. Journal of Business Research, 70:300–307,
2017.
[46] A. Sharang and C. Rao. Using machine learning for medium frequency
derivative portfolio trading. arXiv preprint arXiv:1512.06228, 2015.
[47] M. Siikanen, J. Kanniainen, and A. Luoma. What drives the sensitivity
of limit order books to company announcement arrivals? SSRN Working
Paper, 2017.
[48] M. Siikanen, J. Kanniainen, and J. Valli. Limit order books and liquidity around scheduled and non-scheduled announcements: Empirical
evidence from nasdaq nordic. Finance Research Letters, 2017.
[49] J. Sirignano. Deep learning for limit order books. 2016.
24

[50] P. Suwanpetai. Estimation of exchange rate models after news announcement. In Sixth Asia-Pacific Conference on Global Business, Economics,
Finance and Social Sciences, 2016. AP16Thai Conference.
[51] H. Talebi, W. Hoang, and M. L. Gavrilova. Multi-scale foreign exchange
rates ensemble for classification of trends in forex market. Procedia
Computer Science, 29:2065–2075, 2014.
[52] V. Vella and W. L. Ng. Improving risk-adjusted performance in high
frequency trading using interval type-2 fuzzy logic. Expert Systems with
Applications, 55:70–86, 2016.
[53] S. Yang, M. Paddrik, R. Hayes, A. Todd, A. Kirilenko, P. Beling, and
W. Scherer. Behavior based learning in identifying high frequency trading strategies. In Computational Intelligence for Financial Engineering
& Economics (CIFEr), 2012 IEEE Conference on, pages 1–8. IEEE,
2012.
[54] S. Y. Yang, Q. Qiao, P. A. Beling, W. T. Scherer, and A. A. Kirilenko. Gaussian process-based algorithmic trading strategy identification. Quantitative Finance, 15(10):1683–1703, 2015.
[55] Y. Yu. The limit order book information and the order submission
strategy: A model explanation. In Service Systems and Service Management, 2006 International Conference on, volume 1, pages 687–691.
IEEE, 2006.
[56] K. Zhang, J. T. Kwok, and B. Parvin. Prototype vector machine for
large scale semi-supervised learning. In Proceedings of the 26th Annual
International Conference on Machine Learning, pages 1233–1240. ACM,
2009.
[57] B. Zheng, E. Moulines, and F. Abergel. Price jump prediction in limit
order book. 2012.

25

