Presentation is loading. Please wait.

Presentation is loading. Please wait.

Stock Market Trading Via Stochastic Network Optimization Michael J. Neely (University of Southern California) Proc. IEEE Conf. on Decision and Control.

Similar presentations


Presentation on theme: "Stock Market Trading Via Stochastic Network Optimization Michael J. Neely (University of Southern California) Proc. IEEE Conf. on Decision and Control."— Presentation transcript:

1 Stock Market Trading Via Stochastic Network Optimization Michael J. Neely (University of Southern California) Proc. IEEE Conf. on Decision and Control (CDC), Atlanta, GA, Dec. 2010 PDF of paper at: http://www-bcf.usc.edu/~mjneely/ Sponsored in part by the NSF Career CCF-0747525 Current price: p 1 (t) = $5.10 Current price: p 2 (t) = $2.48 Buy ! Sell !

2 Problem Setting: N stocks. Slotted time t = {0, 1, 2, …}. Prices p(t) = (p 1 (t), …, p N (t)). Stock shares Q(t) = (Q 1 (t), …, Q N (t)) Current price: p 1 (t) = $5.10 Current price: p 2 (t) = $1.57 Current price: p 3 (t) = $2.03 Buy ! Sell !

3 Goal: Make money over time while limiting the investment risk! Limit risk by: Bounding the max allowable stock level Q n max. Bounding the amount buy/sell on a slot. Decision Variables for Buying: A n (t) = Num. shares of stock n bought on slot t. b n (A) = Buying transaction fee (function of A). Current price = p n (t) Buy ! Expense n (t) = A n (t)p n (t) + b n (A n (t))

4 Goal: Make money over time while limiting the investment risk! Limit risk by: Bounding the max allowable stock level Q n max. Bounding the amount buy/sell on a slot. Decision Variables for Selling: μ n (t) = Num. shares of stock n sold on slot t. s n (μ) = Selling transaction fee (function of μ). Current price = p n (t) Revenue n (t) = μ n (t)p n (t) - s n (μ n (t)) Sell !

5 Control Constraints and Decision Structure: Buying Constraints: A n (t) in {0, 1, 2, …, μ n max } for all n, t. ∑ n A n (t)p n (t) ≤ x max for all t. Selling Constraints: μ n (t) in {0, 1, 2, …, μ n max } for all n, t. μ n (t) ≤ Q n (t) for all n, t. Every slot t, observe prices p(t) = (p 1 (t), …, p N (t)). Make buying/selling decisions. Profit(t) = ∑ n Revenue n (t) – ∑ n Expenses n (t). Want to maximize time average profit subject to the above constraints.

6 Talk Outline: 1)Design optimal strategy under (simplistic) assumption that price vectors p(t) are i.i.d. over slots. 2)Use same strategy for arbitrary price vectors (assuming only that 0 ≤ p n (t) ≤ p n max for all t). 3)For arbitrary prices, show the strategy yields profit arbitrarily close to that of an “ideal” algorithm with perfect knowledge of future prices over T-slot frames (for any integer T). “T-slot lookahead metric”

7 Comparison to Related Work: 1)“Portfolio Optimization” (Known or approximate price distributions) [Markowitz 1952][Sharpe 1963][Samuelson 1969] [Rudoy, Rohrs 2008] (Dynamic Programming) 2) “Universal Portfolios” (Arbitrary price sample paths) [Cover 1991][Cover, Ordentlich 1996][Ordentlich, Cover 1998] [Merhav, Feder 1993]

8 Comparison to Related Work: Different Structure for Prior “Universal Portfolio” work: Optimize “growth exponent.” No cap on queue size (more aggressive, but more risk!) Integer constraints relaxed to real numbers. No Transaction fees. Based on “Universal Data Compression.” Solution complexity grows with time. Comparison to ours: Our cap on buy/sell and queue size limits risk, but also limits to only linear growth (*not exponential). Based on “Stochastic Network Optimization.” Simple “max-weight” solution with complexity that is the same for all time. *simple modifications can get back exponential growth. time $$

9 Solution Strategy: Dynamic Queue Control Q n (t) θnθn Want to keep queue size high enough to take advantage of good prices that come along. Don’t want queues too high (too risky). Lyapunov Function: L(Q(t)) = ∑ n (Q n (t) – θ n ) 2

10 Control Design: Q n (t) Lyapunov Function L(Q(t)) Lyapunov Drift Δ(t) = L(Q(t+1)) – L(Q(t)) Every slot t, observe Q(t), p(t), and minimize the drift-plus-penalty*: θnθn *from stochastic network optimization theory [Georgiadis, Neely, Tassiulas 2006][Neely 2010] Δ(t) + V[Expenses(t) – Revenue(t)] Results in the following algorithm: (Selling) Choose μ n (t) to solve: Minimize: [θ n – Q n (t) – Vp n (t)]μ n (t) + Vs n (μ n (t)) Subject to: μ n (t) in {0, 1, 2, …, min[Q n (t), μ n max ]}

11 Control Design: Q n (t) Lyapunov Function L(Q(t)) Lyapunov Drift Δ(t) = L(Q(t+1)) – L(Q(t)) Every slot t, observe Q(t), p(t), and minimize the drift-plus-penalty*: θnθn *from stochastic network optimization theory [Georgiadis, Neely, Tassiulas 2006][Neely 2010] Δ(t) + V[Expenses(t) – Revenue(t)] Results in the following algorithm: (Buying) Choose A n (t) to solve: (“knapsack-like” problem) Minimize: ∑ n [Q n (t)-θ n +Vp n (t)]A n (t) + V∑ n b n (Α n (t)) Subject to: (already stated) constraints on (A n (t)).

12 Theorem (iid case): Q n (t) θnθn Choose θ n = V p n max + 2μ n max. Then: (a)μ n max ≤ Q n (t) ≤ Vp n max + 3μ n max (for all t) (b)For all t: E{Time avg. Profit up to t} ≥ Profit opt – B L(Q(0)) V Vt – “Startup Cost” (c) As t  infinity, we have with prob. 1: lim t  infinity [Time avg profit] ≥ Profit opt – B/V “Profit Gap”

13 Now for arbitrary (possibly non-ergodic) prices: Compare to an “ideal” T-slot lookahead metric. Ψ T [r] = Optimal Profit over frame r, assuming future stock prices over the frame are known. Frame 0 Frame 1 Frame 2

14 Now for arbitrary (possibly non-ergodic) prices: Compare to an “ideal” T-slot lookahead metric. Ψ T [r] = Optimal Profit over frame r, assuming future stock prices over the frame are known. Frame 0 Frame 1 Frame 2 Metric even allows “selling short”

15 Theorem (General Bounded Prices): Under same algorithm as before: (a)μ n max ≤ Q n (t) ≤ Vp n max + 3μ n max (for all t) (b)For all frame sizes T>0, all integers R>0: Time average profit over RT slots ≥ R-1 ∑ r=0 Ψ Τ [r] 1 RT CT V L(Q(0)) RTV --

16 Simulations for BlockBuster Stock (BBI): Aug. 11, 1999 – Sept. 11, 2009 Avg Profit = Avg Profit on Trades - (1/t) x Startup Cost + (1/t) x Profit when sell all at end

17 Simulations for BlockBuster Stock (BBI): Aug. 11, 1999 – Sept. 11, 2009 Avg Profit = Avg Profit on Trades - (1/t) x Startup Cost + (1/t) x Profit when sell all at end “Asymptotically Negligible” as t  infinity (But very significant for finite t !!!) Parameters: μ max = 20, p max = 30, V=1000 Compare bound For T=10 (2 weeks), T=100 (20 weeks) : Avg. Profit on trades ≥ “2-week ideal” – $2.0 Avg. Profit on trades ≥ “20-week ideal” - $20.0

18 Simulations for BlockBuster Stock (BBI): Stock Prices (Forward Time) Cumulative Trade Profit (Forward Time) Average Profit Per Transaction = Cum. Trade Profit/t = $81.52 Average Profit Per Transaction = Cum. Trade Profit/t = $95.81 Stock Prices (Backward Time) Cumulative Trade Profit (Backward Time) (2-week ideal profit no more than $30.00, 20-week idea profit no more than $60.00)

19 What about total profit (including startup costs)? Forward Time: Trade Profit = $206,343.20 Startup Cost = $449,097.99 End Reward = $33,976.80 Total Profit = -$208,778.00 Reverse Time: Trade Profit = $242,512.40 Startup Cost = $35,146.80 End Reward = $239,499.00 Total Profit = $446,864.60

20 What about total profit (including startup costs)? Forward Time: Trade Profit = $206,343.20 Startup Cost = $449,097.99 End Reward = $33,976.80 Total Profit = -$208,778.00 Reverse Time: Trade Profit = $242,512.40 Startup Cost = $35,146.80 End Reward = $239,499.00 Total Profit = $446,864.60

21 What about total profit (including startup costs)? Forward Time: Trade Profit = $206,343.20 Startup Cost = $449,097.99 End Reward = $33,976.80 Total Profit = -$208,778.00 Reverse Time: Trade Profit = $242,512.40 Startup Cost = $35,146.80 End Reward = $239,499.00 Total Profit = $446,864.60

22 Conclusion: Provide a Lyapunov Optimization (“max-weight”) approach to stock market trading. Can quantify risk and profit guarantees compared to T-Slot Lookahead: R-1 ∑ r=0 Ψ Τ [r] 1 RT CT V L(Q(0)) RTV -- Time average profit over RT slots ≥ Startup Cost is high and thus there is inherent risk, but optimizing the trading profits mitigates this risk. Open question: Can other algorithms provide provably better tradeoffs?


Download ppt "Stock Market Trading Via Stochastic Network Optimization Michael J. Neely (University of Southern California) Proc. IEEE Conf. on Decision and Control."

Similar presentations


Ads by Google