algorithmic trading: execution targets pims summer schoolcfrei/pims/targeting_execution.pdfvu f v t...

19
Algorithmic Trading: Execution Targets PIMS Summer School Sebastian Jaimungal, U. Toronto ´ Alvaro Cartea,U. Oxford many thanks to Jos´ e Penalva,(U. Carlos III) Luhui Gan (U. Toronto) Ryan Donnelly (Swiss Finance Institute, EPFL) Damir Kinzebulatov (U. Laval) Jason Ricci (Morgan Stanley) July, 2016 (c) S. Jaimungal, 2016 Algo Trading July, 2016 1 / 19

Upload: others

Post on 14-Jul-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Algorithmic Trading: Execution TargetsPIMS Summer School

Sebastian Jaimungal, U. Toronto

Alvaro Cartea,U. Oxford

many thanks to

Jose Penalva,(U. Carlos III)Luhui Gan (U. Toronto)

Ryan Donnelly (Swiss Finance Institute, EPFL)Damir Kinzebulatov (U. Laval)

Jason Ricci (Morgan Stanley)

July, 2016

(c) S. Jaimungal, 2016 Algo Trading July, 2016 1 / 19

Page 2: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP

I Many traders view Volume Weighted Average Price (VWAP)as a fair price over the duration of the tradeL

VWAP =

∫ T0 Su (µ+u + µ−u ) du∫ T0 (µ+u + µ−u ) du

,

µ± = (µ±t )t≥0 is the rate of buy/sell order executions.

I How can we target this? The volume of future trades is notknown a priori!

(c) S. Jaimungal, 2016 Algo Trading July, 2016 2 / 19

Page 3: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP

Figure: ORCL (2013) traded volume using 5 minute buckets.

Time

log(1+volume)

10:00 12:00 14:00 16:006

8

10

12

14

0

0.02

0.04

0.06

0.08

0.1

10:00 12:00 14:00 16:006

8

10

12

14

Time

log(1+volume)

10:00am 12:00pm 2:00pm 4:00pm0

0.5

1

1.5

2x 10

4

Time

Tradingrate

sellbuy

(c) S. Jaimungal, 2016 Algo Trading July, 2016 3 / 19

Page 4: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

I Instead target percentage of volume (POV)... which wouldbe exactly VWAP if the requested volume equals the givenpercentage of total volume traded

I Simultaneously ensure that total volume traded equals therequested amount

I Trader’s performance criteria is

Hν(t, x ,S ,µ, q)

= Et,x ,S ,µ,q

[X νT︸︷︷︸

Cash

+

terminal liquidation︷ ︸︸ ︷Qν

T (SνT −αQνT )− ϕ

∫ T

t

(νu − χν

u)2

du︸ ︷︷ ︸POV penalty

],

where µ = {µ+, µ−},

χνt := ρ×(µ+t + µ−t + νt

), target rate

(c) S. Jaimungal, 2016 Algo Trading July, 2016 4 / 19

Page 5: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

I Temporary price impact

Sνt = Sνt − a νt

I Price process is affected by order-flow from all agents, i.e.,permanent price impact

dSνt = b (µ+t − (νt + µ−t ))︸ ︷︷ ︸net order-flow

dt + dMt

I Cash process is

X νt =

∫ t

0(Sνu − a νu) νu du

(c) S. Jaimungal, 2016 Algo Trading July, 2016 5 / 19

Page 6: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

I The associated DPE is

0 =(∂t + LM + Lµ

)H + sup

ν

{(S − k ν) ν ∂xH − ν ∂qH

+ b ((µ+ − µ−)− ν) ∂SH − ϕ (ν − ρµ)2},

with terminal condition

H(T , x , S ,µ, q) = x + q (S − α q) ,

I µ = µ+ + µ−

I Lµ generator of µ, LM generator of M

I Optimal trading speed in feedback form is

ν∗(t, x , S , µ, q) =−(∂qH − S + b q) + 2ϕρ (µ+ + µ−)

2(k + ϕ),

(c) S. Jaimungal, 2016 Algo Trading July, 2016 6 / 19

Page 7: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

TheoremSolving the DPE for POV target. The DPE admits the solution

H(t, x ,S ,µ, q) = x + q S︸ ︷︷ ︸Book-value

+ h0(t, µ) + h1(t, µ) q + h2(t) q2︸ ︷︷ ︸excess value

,

where

0 = (∂t + Lµ) h2 +

(h2 +

12b)2

k + ϕ,

0 = (∂t + Lµ) h1 +h1 − 2ϕρ (µ+ + µ−)

k + ϕ

(h2 +

12b)+ b (µ+ − µ−) ,

0 = (∂t + Lµ) h0 +1

4(k + ϕ)

(h1 − 2ϕρ (µ+ + µ−)

)2 − ϕρ2 (µ+ + µ−)2 .

subject to h0(t,µ) = h1(t,µ) = 0 and h2(t) = −α.

(c) S. Jaimungal, 2016 Algo Trading July, 2016 7 / 19

Page 8: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

PropositionThe functions h0, h1 and h2 admit the representation:

h2(t) = −

(T − t

k + ϕ+

1

α− 12b

)−1

− 1

2b ,

h1(t,µ) =ϕρ

(T − t) + ζ

∫ T

t

Et,µ

[µ+

s + µ−s

]ds

+b

(T − t) + ζ

∫ T

t

((T − s) + ζ)Et,µ

[µ+

s − µ−s

]ds ,

h0(t,µ) =

∫ T

t

Et,µ

[1

4(k + ϕ)

(h1(t,µs)− 2ϕρ (µ+

s + µ−s ))2

− ϕρ2 (µ+s + µ−s )

2

]ds ,

(c) S. Jaimungal, 2016 Algo Trading July, 2016 8 / 19

Page 9: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

TheoremVerification for POV target. The candidate value function provided isindeed the solution to the original optimal control problem. Moreover,the trading speed is given by

ν∗t =1

(T − t) + ζQν

∗t

k + ϕρ

{(µ+

t + µ−t

)− 1

(T − t) + ζ

∫ T

t

E[ (µ+

s + µ−s

)| Fµt

]ds

}

− b

k + ϕ

∫ T

t

(T − s) + ζ

(T − t) + ζE[ (µ+

s − µ−s

)| Fµt

]ds ,

where Fµt denotes the natural filtration generated by µ, is the

admissible optimal control we seek, and ζ = (k + ϕ)/(α− 12b).

(c) S. Jaimungal, 2016 Algo Trading July, 2016 9 / 19

Page 10: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

limα→∞

ν∗t =1

T − tQν

∗t

k + ϕρ

{µt −

1

T − t

∫ T

t

E[µs | Fµt ] ds

}− b

k + ϕ

∫ T

t

T − s

T − tE[µ+

s − µ−s | Fµt

]ds ,

(4a)

(4b)

(4c)

The strategy consists of three components:

1. The first component is TWAP-like

2. The second consists of correcting for future expected totalorder-flow

3. The third consists of corrections due to permanent priceimpact of expected net order-flow

(c) S. Jaimungal, 2016 Algo Trading July, 2016 10 / 19

Page 11: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

I Simulation Study

I Assume that other market participants trades follow

dµ+t = −κ+ µ+t dt + η+1+N+

t−dN+

t ,

dµ−t = −κ− µ−t dt + η−1+N−

t−dN−

t ,

whereI κ± ≥ 0 are the mean-reversion rates,

I N+t and N−

t are independent homogeneous Poisson processeswith intensities λ+ and λ−, respectively,

I {η±1 , η±2 , . . . } are non-negative i.i.d. random variables with

distribution function F , with finite first moment, independentfrom all processes.

I In addition, we require κ± > λ± E[η±1 ] is ergodic

(c) S. Jaimungal, 2016 Algo Trading July, 2016 11 / 19

Page 12: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

I The solution to order-flow is

µ±s = e−κ±(s−t) µ±t +

∫ s

t

e−κ±(s−u) η±

1+N±u−

dN±u ,

so thatE[µ±s | Fµt ] = e−κ

±(s−t) (µ±t − ψ±)+ ψ± ,

where ψ± = 1κ± λ

± E[η±] .

I ψ± act as the expected long-run activity of buy and sell orders

I As a consequence, the optimal trading strategy is given by

limϕ→∞

limα→∞

ν∗t =1

T − tQν

∗t

+ ρ(1− 1−e−κ(T−t)

κ(T−t)

) [(µ+

t + µ−t )− (ψ+ + ψ−)

],

(c) S. Jaimungal, 2016 Algo Trading July, 2016 12 / 19

Page 13: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

I Compute VWAP as

VWAP =

∫ T0 Sνu (µ+u + µ−u + νu) du∫ T0

(µ+u + µ−u + νu

)du

,

I The strategy’s execution price per share is

Exec. Price =X νT

N=

∫ T0 Sνu νu du

N.

(c) S. Jaimungal, 2016 Algo Trading July, 2016 13 / 19

Page 14: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POV

0 0.2 0.4 0.6 0.8 10

2000

4000

6000

8000

10000

Time

Inventory

Qν∗

0 0.2 0.4 0.6 0.8 1-2

0

2

4

6x 10

4

Time

ν∗

Time

Inventory

0.2 0.4 0.6 0.8 10

2000

4000

6000

8000

0

0.1

0.2

0.3

-5 0 50

500

1000

1500

2000

2500

3000

3500

Exec.Price−VWAP

VWAP

Frequency

(c) S. Jaimungal, 2016 Algo Trading July, 2016 14 / 19

Page 15: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POCV

I Cumulated volume V of orders, excluding the agent’s, is

Vt =

∫ t

0

(µ+u + µ−u

)du .

I The investor’s performance criteria is now modified to

Hν(t, x , S ,µ, q)

=Et,x,S,µ,q

[ Cash︷︸︸︷X ν

T +

terminal liquidation︷ ︸︸ ︷Qν

T (SνT −αQνT )

− ϕ

∫ T

t

((N− Qν

u )− ρ (Vu + (N− Qνu )))2

du︸ ︷︷ ︸POCV penalty

],

(c) S. Jaimungal, 2016 Algo Trading July, 2016 15 / 19

Page 16: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POCV

PropositionThe DPE admits the solution 1

H(t, x ,S ,µ,V , q) = x + q S︸ ︷︷ ︸book value

+ h0(t, µ,V ) + h1(t, µ,V ) q + h2(t) q2︸ ︷︷ ︸excess value: h(t,µ,V )

,

where

h2(t) = −√

k ϕγ eξ (T−t) + e−ξ (T−t)

γ eξ(T−t) − e−ξ (T−t)− 1

2b ,

h1(t,µ,V ) = 2ϕ

∫ T

t

`(u, t) (N− ρEt,µ,V [Vu]) du

+ b

∫ T

t

`(u, t)Et,µ,V

[(µ+

u − µ−u )]du ,

h0(t,µ,V ) =

∫ T

t

Et,µ

[14k

(h1(u,µu,Vu)

)2 − ϕ(N− ρVu

)2]du ,

(c) S. Jaimungal, 2016 Algo Trading July, 2016 16 / 19

Page 17: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POCV

I The DPE with the above ansatz reduces to

0 =(∂t + Lµ,V

)h − ϕ

((N− q)− ρV

)2+ b (µ+ − µ−) q + sup

ν

{− k ν2 − (∂qh + b q) ν

},

and the optimal control in feedback form is

ν∗(t,µ,V ) = − 12k

(∂qh + b q)

I Substituting further for h0, h1, and h2...

0 =(∂t + Lµ,V

)h2 +

1k

(h2 +

12b)2 − ϕ ,

0 =(∂t + Lµ,V

)h1 +

1k

(h2 +

12b)h1 + 2ϕ (N− ρV ) + b (µ+ − µ−) ,

0 =(∂t + Lµ,V

)h0 +

14k

(h1)2 − ϕ (N− ρV )2 .

(c) S. Jaimungal, 2016 Algo Trading July, 2016 17 / 19

Page 18: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POCV

I Optimal trading speed to ensure full liquidation is

limα→∞

ν∗t =ξQν

∗t

sinh (ξ (T − t))

− ξ2∫ T

t

sinh (ξ (T − u))

sinh (ξ (T − t))

{(N− Qν

∗t

)− ρ E

[Vu

∣∣∣Fµ,Vt

]}du

−b

2 k

∫ T

t

sinh (ξ (T − u))

sinh (ξ (T − t))E[(µ+

u − µ−u )

∣∣∣Fµ,Vt

]du ,

I First term is Implementation Shortfall like

I Second term corrects for deviations of current inventory fromfuture expected volume

I Third term corrects for permanent impact from expectedfuture net order-flow

(c) S. Jaimungal, 2016 Algo Trading July, 2016 18 / 19

Page 19: Algorithmic Trading: Execution Targets PIMS Summer Schoolcfrei/PIMS/Targeting_Execution.pdfVu F V t io du b 2k Z T t sinh(˘(T u)) sinh(˘(T t)) E h ( + u ) F ;V t i du; I First term

Targeting VWAP: POCVUsing percentage of cumulative volume...

0 0.2 0.4 0.6 0.8 10

2000

4000

6000

8000

10000

Time

Inventory

Qν∗

0 0.2 0.4 0.6 0.8 1-1

0

1

2

3

4x 10

4

Time

ν∗

Time

Inventory

0.2 0.4 0.6 0.8 10

2000

4000

6000

8000

0.1

0.2

0.3

0.4

0.5

-5 0 50

500

1000

1500

2000

Exec.Price−VWAP

VWAP

Frequency

(c) S. Jaimungal, 2016 Algo Trading July, 2016 19 / 19