1. Introduction
High-frequency trading was developed in the 1990s in response to advances in computer technology and the adoption of this new technology by exchanges. From the original rudimentary order processing approach to the current state-of-the-art all-inclusive trading systems, high-frequency trading (HFT) has evolved into a billion-dollar industry (
Aldridge 2009). HFT is not merely electronic trading; it especially involves programming an algorithm that optimizes the timing and routing of the order in the limit order book (LOB).
High-frequency trading models have developed along with the technology surrounding those markets, especially the stochastic process models that have been used to represent those variables, given their malleability in approaching the dynamics of the assets in the best way possible. This analysis has been mostly framed in a continuous time with the aim of ensuringthe speed of the transactions in those markets (which is generally measured in nanoseconds).
Among the issues involved in HFT, optimal control problems such as optimal acquisition, optimal liquidation, and market making are among the most important. These problems have been addressed previously by many authors and in this section of this working paper, we present a review of the relevant literature on the construction of models in relation to limit order markets.
In the following, we present a brief description of the mechanism of LOB, as detailed in
Cartea et al. (
2015). First of all, there are orders to buy and sell assets that arrive at an exchange. There are three types of orders:
Market buy/sell order—specifies the number of shares to be bought/sold at the best available price, immediately.
Limit buy/sell order—specifies a price and a number of shares to be bought/sold at that price, when possible.
Order cancellation—agents who have submitted a limit order may cancel the order before it is executed.
Regarding these types of orders, there are:
Market orders that are executed immediately.
Limit orders that are queued for later execution, but which may be canceled.
Thus, the limit-order book is the collection of queued limit orders awaiting execution or cancellation.
The bid price
is the highest limit buy order price in the book. It is the best available price for a market sell. The ask price
is the lowest limit sell order price in the book. It is the best available price for a market buy. In general, we are interested in the midprice:
It is worth noting that the tick size () of an LOB is the smallest permissible price interval between different orders within it. All orders must arrive with a price that is specified to the accuracy of .
According to the arrival of the market orders, the modeling of the midprice has to reflect sudden movements such jumps in stock prices inside the limit order markets. The Markov process has been used to simulate the behavior of the price in a limit order book (LOB, the place where every transaction is negotiated). Lèvy processes, such as the compound Poisson process, have been implemented in modeling stock dynamics, such as in a study by
Merton (
1976). The Poisson process has the following strong characteristics: the arrival of an event is independent of the previous event (the waiting time between events is memoryless), the average rate is constant, and two events cannot be simultaneous. In reality, many phenomena modeled as Poisson processes do not meet these attributes exactly. Thus, numerous analysts have examined sudden price jumps and amplified them to make them follow more general Markov processes.
In a study by
Cont and Larrard (
2013), the arrival orders in an LOB were described in terms of Markovian processes. The authors proposed a Markovian model of a limit order market, which captured the autocorrelation of price changes. Their model linked price changes and the duration until the next price change.The authors computed the conditional distributions of durations and price changes, and presented analytical results supporting their theory in which these two factors are not independent, as they are assumed to be in the compound Poisson process.Finally, they remarked that high-frequency increments of the price were negatively correlated, meaning that an increase in price would probably be followed by a decrease in price.
Subsequently,
Swishchuk and Vadori (
2017) used the Markov renewal process to model an LOB. The authors performed an extension of the model presented in the work of
Cont and Larrard (
2013), changing two main aspects: first, the interarrival times of book events were allowed to have an arbitrary distribution (previously these were assumed to be exponential, as in the Poisson process, but evidence shown in the numerical results discussed in this paper showed these to be non-exponential), and second, the interarrival times of new book events could depend on the nature of previous events (these were formerly assumed to be independent), which was reflected in the numerical results seen in LOBster data (
LOBster 2012) (see
Section 6.2). This change in assumptions was possible given the nature of the Markov renewal process. Furthermore, in a study by
Swishchuk et al. (
2017), the authors applied the use of general semi-Markov models to an LOB in order to make LOB models more flexible. They incorporated price changes that were not fixed to one tick, in contrast to the Poisson assumption that two events cannot be simultaneous. This implementation was also justified with numerical results obtained from different limit order book data, including LOBster data (
LOBster 2012).
In the search for models that can accurately reflect the behaviour of high-frequency financial data, Hawkes processes have been applied to address many different problems in high-frequency finance, as discussed in the work of
Bacry et al. (
2015). Hawkes processes are a particular class of multivariate point processes with specific characteristics: they are self-exciting, with clustering effects and long-run memory. Hawkes processes with a certain structure have Markovian properties (
Bacry et al. 2015), and a Poisson process can be expressed as a particular Hawkes process. Hawkes process characteristics have been provento exist in financial data. As mentioned previously, the Poisson process assumed independence in the arrival of events, in contrast with the Hawkes process with its dependence on history. This is also what was removed from the price process models in previous Markov and semi-Markov models.
Boswijk et al. (
2018) extended the notion of self-excitation in jumps and detected its presence in a discretely observed sample path at high frequency.
Lu and Abergel (
2017,
2018) modeled an LOB with a high-dimensional Hawkes process and found good agreement between the statistical properties of the LOB data and the model. Subsequently,
Liu et al. (
2021) studied the optimization problem of a household under the influence of a contagious financial market, using the clustering effect property of the Hawkes process.
Swishchuk and Huffman (
2020) studied general compound Hawkes processes to model the price process in LOBs. The authors proved a law of large numbers (LLN) and a functional central limit theorem (FCLT) for some cases of these processes. Specifically, they proved those theorems for an asymptotic analysis of the general compound Hawkes process with two state-dependent orders.To obtain empirical results, they used LOBster data (
LOBster 2012) to calibrate the parameters of these asymptotic models. The interarrival times and clustering effect were analyzed to prove that the prices in the LOBster dataset were not following the Poisson process, so this approach was consistent with Hawkes modeling. The relevance of the multivariate general compound Hawkes process (MGCHP) in LOBs was analyzed by
Guo and Swishchuk (
2020) and
Guo et al. (
2020), who provided awareness about price volatilities in LOBs for several assets using real-world data.
Therefore, these papers provided us with a basis for adopting the general compound Hawkes process and its unique properties for modeling the midprice, , in the stochastic optimal control problems, given that it provides a better description of real-life data in high-frequency trading.
The authors of another study (
Fodra and Pham 2015) built a bridge between the two main streams of literature in high-frequency trading models of intra-day asset prices and high-frequency trading problems. The authors described the stock price through a pure jump process. The process
was embedded into the Markov system with three observable state variables:
, a Markov renewal process with a known infinitesimal generator, obtained from the infinitesimal generator of
, and the dynamics of the controlled process of wealth and inventory.They were able to solve the Hamilton–Jacobi–Bellman (HJB) equation through dynamic programming, associated with the control problem of maximization of utility.After obtaining this equation, the authors were able to provide an interesting financial interpretation of their results, decomposing the results into the trading portion (small orders with no impact on price) and the jump portion (large orders producing a jump in the price level).
Following
Fodra and Pham (
2015), we can obtain diffusion results: the stock price process
, modeled using the GCHP, can be approached with a stochastic differential equation (SDE) of the price, as well as the infinitesimal generator. In this paper, the price is approximated by means of diffusion models, using the law of large numbers (LLN) and the functional central limit theorem (FCLT) for the general compound Hawkes process (GCHP), incorporating results from
Swishchuk and Huffman (
2020).
Subsequently, we solve optimal control problems, such as optimal acquisition, optimal liquidation, and market making, related to the high-frequency trading market. Previous researchers (
Cartea et al. 2015) have developed mathematical tools for the analysis of trading algorithms used on stochastic optimal control problems in a very general way, which we apply to solving the optimization problem in the present work. Furthermore, the authors in
Cartea et al. (
2015) attempted the modeling of diverse algorithmic trading strategies. Liquidate and acquire modelswere constructed to execute a large position using market orders, using a price model of the general stationary Gauss–Markov process. In
Becherer et al. (
2018), the authors explicitly determined the optimal liquidation of an asset position using a price model of a controlled Ornstein–Uhlenbeck process in a financial market with multiplicative and transient price impacts. Market-making models presented in in
Cartea et al. (
2015) were used to maximize the market maker’s profit by choosing the depth at which to place the limit orders. In
Fruth et al. (
2019) the authors modeled a limit order book with stochastic liquidity to explain random variations in the depth of the order book and evaluate their influence on optimal trade execution strategies, using the price model of the Cox–Ingersoll–Ross model. The innovative solutions discussed in this research work come from assuming that the midprice can be approximated by the diffusion process of the GCHP, which has the property of being more flexible and therefore more able to fit with real-life prices.
The models used in this study describe the controlled inventory process of the agent, the midprice with the corresponding SDE, the cash process of the agent, in order to evaluate the agent’s value function . To solve this optimal control problem, the dynamic programming equation (DPE) was developed. This is also known in this context as the Hamilton–Jacobi–Bellman equation, which is satisfied by the value function H that can be obtained by observing at the dynamic programming principle (DPP). The final results are the optimal inventory , the optimal speed of trading , and the optimal depth . The optimal solutions are expressed in terms of parameters describing the arrival rates and the midprice, modeled as a GCHP. By allowing these characteristics influence the optimization process, we have developed a more general solution that describes in a more authentic manner the observed price process in HFT markets.
The present paper is organized as follows.
Section 2 provides a brief introduction to Hawkes processes.
Section 3,
Section 4 and
Section 5 describe the optimal liquidation processes for liquidation, acquisition, and market making, respectively, as well as presentingthe models proposed for the price process, main characteristics, the SDE equation, the structure of their infinitesimal generator, the approach used to solve the HJB equations for the optimal control problems, a characterization of the pathway to solving these problems, and a closed solution for these problems.
Section 6 shows the manner in which these solutions work when applied to real life data.
Section 7 presents our conclusions regarding the study’s results, and in
Section 8 we discuss these results, as well as future research directions.
3. Optimal Liquidation Problem
One main concern in finance is how an agent can sell or buy a large amount of shares, while minimizing the adverse price movements of the asset traded. An amount is considered ‘large’ if the number of shares the agent seeks to execute is significantly larger than the average size of a trade. As these orders cannot be executed in one exhibition, the order will be sliced, and the time the agent takes to space out and execute the smaller orders is crucial (
Cartea et al. 2015).
In this model of optimal liquidation, the agent posts market orders (MOs) to liquidate shares. The MOs are executed immediately at the midprice to liquidate the shares. In this direction, the agent’s orders affect the midprice with two possible impacts, a temporary and a permanent impact. To develop the optimal liquidation problem, the key stochastic processes can be described as follows:
is the trading rate, the speed at which the agent is liquidating or acquiring shares;
is the agent’s inventory, which is affected by the speed of trading;
is the midprice process, and is also affected in principle by the speed of trading;
corresponds to the price process at which the agent can sell or purchase the asset, the execution price; and
is the agent’s cash process, resulting from the agent’s execution strategy.
Whether liquidating or acquiring, the agent’s controlled inventory process is given in terms of a trading rate, as follows in Equation (
3):
As seen in the previous section, the midprice is assumed to satisfy the SDE, driven by a GCHP, with the approximation achieved using the law of large numbers and the functional central limit theorem. To this definition, we will add the permanent price impact that the agent’s trading action has on the midprice, as seen in Equation (
4):
where
is a standard Brownian motion,
denotes the
permanent price impact. The permanent price impact has a negative impact because the agent applies pressure to move the price downward.
Immediately, the midprice and the execution price are presented in Equations (
5) and (
6):
where
denotes the
temporary price impact. The temporary price impact has a negative impact because the agent applies pressure to move the price downward.
To conclude the description of the model, the agent’s cash process
, which satisfies the SDE in Equation (
7):
and the expected revenue from the sale is as shown in Equation (
8):
The agent’s value function to optimize would involve the terminal cash process
, the terminal execution
, and would also incorporate two penalties: a running inventory penalty
and a terminal liquidation penalty
, as seen in Equation (
10).
Applying the theorem of the dynamic programming principle for diffusions (
Cartea et al. 2015) to the value function in Equation (
10), we obtain the dynamic programming equation (DPE) or HJB equation presented in Equation (
11)
where
is the infinitesimal generator of the process
, as stated in Equation (
12).
The terminal condition
is determined as the inventory
q assets are sold in
T and it is also penalized in the proportion
.The structure of the functions of temporary and permanent impact have not been defined yet. This process can be simplified by letting them be linear with the trading rate. We can write
and
for
finite constants. Maximizing by
, we obtain the following equation, to later solve for
, and obtain Equation (
14).
where
is the optimal trading rate, the speed at which the agent is liquidating shares. Upon substituting back into the HJB Equation (
11), the value function
H is then used to solve the non-linear partial differential equation (PDE).
To propose an ansatz to solve this equation, we can take a look at the terminal condition and propose a change based on that structure. It is also important to remark that the h function will not be made to depend on the cash process, but H depends on it linearly. The ansatz is shown in Equation (
16)
To match it with the previous terminal condition, our new function
h has the terminal condition
. Furthermore, we can write each partial of
H in terms of
h:
Now we rewrite Equation (
15) in terms of
h in Equation (
18)
As suggested in
Cartea et al. (
2015), we assume the PDE in Equation (
18) to be independent of S, because, among other reasons, in the terminal condition
h is concerned only with the terminal liquidation penalty. This means that
, and also
. With this change, the Equation (
18) becomes Equation (
19).
With these changes,
becomes the following equation:
Based on the terminal condition, where
, we propose a separation of variables with the following form
, where
satisfies the following partials of
h:
Now we rewrite the Equation (
19) in terms of
in Equation (
22), with the terminal condition
.
This ODE, in Equation (
22), is identifiable as a Riccati-type equation to be integrated. We let
, where
, so we can solve for
to obtain an answer for
. This will transform Equation (
22) into Equation (
23).
It is important to remark upon the terminal condition of
is
. Now we can solve this differential equation for
, using substitution and partial fractions to obtain the integral solution in the equation.
From the last equation, we have to solve for
. Recall that every part of the right side is a constant, including the terminal condition
. Equation (
25) expresses an easy way to solve for x.
To express the final results more easily, we define
a constant composed of the following constants.
Now the solution of the DPE is fully determined. We can go back to the solution of
in Equation (
28) and of
in Equation (
29).
The optimal speed
can thus be expressed as in Equation (
30), and as we can see, the optimal speed turns out to be proportional to
, the investor’s current inventory level.
To obtain the agent’s optimal inventory,
, recall the following definitions:
This constant
can be calibrated with the initial value (
) of the inventory
. Next, let us solve the integral in
Finally, we obtain the optimal agent’s inventory in Equation (
33) and the optimal trading rate in Equation (
34) is solved. It is worth mentioning that this solution is very similar to the results presented in
Cartea et al. (
2015) but this time the solution includes the parameters of the arrival rate and the counting process introduced in the Hawkes process.
expresses the optimal strategy for every t. The value of contains, among other factors, the terminal liquidation inventory , the compound Hawkes process parameters and , and the coefficient of the permanent price impact b. The ratio between the running inventory penalty and the coefficient of the temporal price impact k weights the optimal strategy.
In
Section 6.3 we present numerical results using the observed price data for Apple, Amazon, and Google on 21 June 2012 (LOBster data
LOBster 2012) and the parameter calibration of parameters
and
from
Swishchuk and Huffman (
2020) for the GCHP2SDO. We calculated the optimal liquidation strategy for an agent’s trading rate,
, and the optimal depth
. In
Section 6.3, the results are drawn to show the behavior of the optimal strategy throughout the time available. The parameters used for
k,
b,
,
,
,
T,
, and
are shown in the tables of each stock, according to the model and the asset drawn.
4. Optimal Acquisition Problem
In this problem, the agent has the target to acquire shares over a trading horizon of T. The key stochastic processes are the same as those described in the previous section. The agent’s inventory starts at . The terminal inventory penalty parameter includes the cost of walking the book at time T.
The midprice and the execution price are similar to the price presented in Equations (
5) and (
6), with the difference in the signs of the influence of the temporary and permanent impacts. Because the agent’s buy trade exercises an upward pressure, this is displayed in Equations (
35) and (
36):
The agent’s expected costs from strategy
are integrated by means of the terminal cash, the terminal execution, and terminal penalty, described in Equation (
37).
Let us define a new stochastic process,
, that denotes the remaining shares to be purchased between t and the end of the period. This is defined in Equation (
38), where
is the agent’s remaining shares.
The agent’s value function to optimize would involve the agent’s expected cost, so we need to minimize or calculate the infimum of the cash paid to acquire the shares, as shown in Equation (
40).
Applying the theorem dynamic programming principle for diffusions (
Cartea et al. 2015) to the value function in Equation (
40), we obtain the dynamic programming equation (DPE) or HJB equation in (
41):
where
is the infinitesimal generator of the process
as stated in Equation (
12).
The terminal condition
is determined as the remaining inventory
y assets are purchased in
T and also it is penalized in the proportion
. The structure of the function of temporary and permanent impacts has not been defined yet. As in the previous section, this will be simplified by allowing them to be linear with the trading rate. We can write
and
for
, which are finite constants. Minimizing by
, we obtain the following equation to later solve for
and we obtain Equation (
43).
where
is the optimal trading rate, the speed at which the agent is acquiring shares. Upon substituting back into the HJB Equation (
41), the value function
H then solves the non-linear partial differential equation (PDE).
By observing the terminal condition and the way in which y and S enter into the DPE, we propose a quadratic function in y to use as the ansatz to solve this equation. The ansatz is shown in Equation (
45)
where
,
, and
are yet to be determined according to the terminal condition
; then,
and
. To match them with the previous terminal condition, our new functions
,
and
can express each partial of
H in terms of the new functions:
Now we rewrite the Equation (
44) in terms of
,
, and
in Equation (
47)
It is worth mentioning that with this new structure, the second derivative of H becomes zero and this causes the effect of
to disappear. Now, with help of the boundary conditions, we are able to solve for
,
, and
. Let us order the equation as follows:
Let us write
and then, using the second term in Equation (
48), the coefficient of
y, we obtain the following:
From the third term in Equation (
48), the independent coefficient, we obtain the following:
Finally, we can solve
from the first term in Equation (
48), the coefficient of
.
Rewriting this in the form of a first-order separable ODE:
Matching
from Equation (
52) and the terminal condition
, we can define the value of
as follows:
Now, the solution is fully determined as
. With these changes,
becomes Equation (
54).
From the derivative defined as
from Equation (
38), we can obtain the optimal agent’s remaining shares
as follows:
From our initial assumptions, where
, we can conclude that
. Furthermore, from
we can obtain the optimal agent’s inventory
and we obtain it as follows:
Finally, we can obtain the optimal speed for acquisition in (
57)
expresses the optimal strategy for every t. The value of contains the compound Hawkes process parameters , , and the coefficient of the permanent price impact b. The ratio between the coefficient of the temporal price impact k and the terminal liquidation inventory is known as the relative price impact at the terminal date and, in general, ; then .
In
Section 6.4 we present numerical results using the price data observed for Apple, Amazon, and Google on 21 June 2012 (LOBster data)
LOBster (
2012) and the parameter calibration of parameters
and
from
Swishchuk and Huffman (
2020) for the GCHP2SDO. We calculated the optimal acquisition strategy for the agent’s trading rate,
, and the optimal depth
. In
Section 6.4, the results are drawn to show the behavior of the optimal strategy throughout the time available. The parameters used for
k,
b,
,
,
,
T,
, and
are shown in the tables of each stock, according to the model and the asset drawn.
5. Optimal Market-Making Problem
The market-making problem models how a market maker (MM) maximizes terminal wealth by trading in and out of positions using limit orders (LOs). The MM provides liquidity to the limit order book (LOB) by posting buy and sell LOs, and the control variable is the depth , which is measured based on the midprice, at which these LOs are posted. The key stochastic processes for this model are:
, denotes the midprice, assumed to satisfy the SDE driven by a GCHP, as seen in Equation (
4), with
,
and
is a standard Brownian motion,
is the price for the acquisition side, and
is the price for the liquidation side;
denote the depth at which the agent posts LOs; sell LOs are posted at a price of , and buy LOs at a price of ;
denote the counting processes corresponding to the arrival of other participants’ buy and sell market orders (MOs), which arrive at Poisson times with intensities ;
denote the controlled counting processes for the agent’s filled sell and buy LOs;
denote the MM’s cash process and this satisfies the SDE
denotes the agent’s inventory process and
For the counting processes,
is not a Poisson process. The intensity of the process
is controlled by the agent, because the greater the depth,
, the lower is the probability of the LO being filled. The probability of the arrival rate of the MO’s other market participants is a constant
. Modeling the probability of the LO being filled is conditional on the MO arriving, and this is a popular choice in the literature, as in
Cartea et al. (
2015) (see discussion in Section 5.4), where it is expressed by theprobability
, where
is a positive constant. Finally, following the Bayes rule, the fill probability would be the product of these two,
.
The market maker seeks the strategy
that maximizes cash at the terminal date T. The MM must liquidate their terminal inventory
at time
T using MO. Then, the MM adds boundaries to the inventory via
, both of which are finite. Thus, the performance criteria are as presented in Equation (
60):
where
represents the fees charged for taking liquidity at the end of the term and
is the running inventory penalty parameter. Thus, the MM’s value function is as shown in Equation (
61):
where
A is the admissible set of strategies,
-predictable, and bounded from below. Now, let us solve the optimal control problem, applying the theorem of the dynamic programming principle for counting processes (
Cartea et al. 2015). As we defined in the key stochastic processes for this model, there exist two different prices for the bid and ask side. Thus, the HJB equation is as shown in Equation (
62):
where
is the infinitesimal generator of the process
, and likewise for
, as stated in Equation (
12). In this case, to simplify the analysis, we assume that
; then it can be written as
.
is the indicator function.
The terminal condition
is determined as the market maker, at the end of the time period, will liquidate the terminal inventory at the liquidation price and it is also penalized in the proportion of
. Following this terminal condition, we propose an ansatz for H, as shown in Equation (
63):
To match this with the previous terminal condition, our new function
h has the terminal condition
. We can also write each partial of
H in terms of
h:
Now we can rewrite the Equation (
62) in terms of
h in Equation (
66):
Maximizing by
and
, we obtain the following equation to later solve for
and
and we obtain Equations (
68) and (
70).
Now, the boundary cases are and when and , respectively.
With these maximized strategies, we can substitute the optimal controls into the DPE in Equation (
66):
To find an analytical solution, we need to match it with the previous terminal condition. We propose to use the following function for
, where the terminal condition
prevails. As was carried out in a previous work (
Cartea et al. 2015), we define the fill probabilities to be the same on both sides of the LOB, meaning that
, and thus express the suggested ansatz as follows:
with the terminal condition
; then
.
Now, we have to match the new ansatz with the previous PDE Equation (
71)
Putting all together in Equation (
74),
Let us break the vector
from
to
, and let
denote the
square matrix described below.
Then, Equation (
74) becomes (
77)
This matrix SDE is called the temporary inhomogeneous equation, given that the matrix
is dependent on time. To solve this equation, we will use “the method of Tanabe and Solevski” from
Functional Analysis (
Yosida 1980), Chapter XIV.
To solve this equation, first let us rewrite Equation (
77) as Equation (
79). According to what we know, which is the terminal condition
, where
Z is a
-dim vector where each component is
,
. Then, we can write the matrix
, which is now a matrix with only one constant, and we will thus call it
B.
Then, following the solution in
Yosida (
1980), we obtain the equation in (
80).
Now, to continue solving these equations, we use an exponential expansion with the Taylor series for
and
, where
is a square matrix.
These approximations allow us to express the matrices and the solution in the following way:
With these approximations, we can calculate the solution in Equation (
80) element by element. First, let us calculate the multiplication of the matrices
in Equation (
87)
To solve the integral in Equation (
80), we use an approximation with a final point of
. In this way, we can calculate a closed solution for this problem.
Now, we merely have to calculate the integral . Let us carry this out for the following cases:
when
and
when
when
and 0 otherwise. This matrix can be called
and we can write the solution for
as in Equation (
92)
Finally, going back with the construction, we can obtain the optimal depths for the market-making problem, as in Equations (
94) and (
95).
and
give the optimal strategy for every t for different inventory levels. This result is a generalization of the results in
Cartea et al. (
2015) because it allows the price to be driven by a compound Hawkes process. The optimization contains the compound Hawkes process parameters
and
. The impact on the price has a direction according to whether it is a buy or sell posting.
In
Section 6.5, we present numerical results using the observed price data for Apple, Amazon, and Google on 21 June 2012 (LOBster data)
LOBster (
2012) and the parameter calibration of parameters
and
from
Swishchuk and Huffman (
2020) for the GCHP2SDO. We calculated the optimal market-making strategy for an agent’s trading rate,
, and the optimal depth
. In
Section 6.5, the results are drawn to show the behavior of the optimal strategy throughout the time available. The parameters used for
k,
b,
,
,
,
T,
, and
are shown in the tables of each stock, according to the model and the asset drawn.