Algorithmic Trading
and
Trading Platform
Sergey Troshin, Ph.D.
EXANTE. Director
[email protected] www.exante.eu
SSE, Riga, Jan 2015
Contents
• EXANTE history and Unique Selling Points (5 min)
• Trading. Manual. Automatic - well known approaches (30 min)
• Broker inside out - technical aspects (30 min)
• Questions and Answers (15+ min)
• Working in EXANTE
Steps to Execution
1. Choose Markets and Symbols
2. Market Analysis and Decision Making
3. Execution
4. PnL and Account Control
5. Go back to step 1 and 2
Automatic trading
Buy-side Sell-side
Statistical arbitrage
VWAPMarket Making / HFT
Trend
following
Arbitrage
Smart order
routing
Well Known Strategies.
Trend Following
Technical Analysis
• SMA / EMA
• Moving Average
Convergence/Divergence
• Bollinger bands
• Stochastic oscillator
• Parabolic SAR
• Rate of Change (ROC)
• Relative Strength Index (RSI)
• etc
• …
Volatility and Option Trading
Implied volatility prediction
1. Delta neutral portfolio
– Buy option / sell stock on volatility going up
– Sell Option / buy stock on volatility going down
2. Various options strategies
– Straddle
– Strangle
– Butterfly
– Etc.
Arbitrage Strategy Example
GAZPRU
(MICEX)
On new tick:
ogzd_rub = convert(ogzd, usd_rub)
spread = normalize(ogzd_rub/gazpru)
changedSpread()
OGZD
(LSE)
USD/RUB
(FOREX)
LIMIT (LSE)
London Server
Filled (size)
MARKET (MICEX)
Filled (price)
On change spread:
if (spread > threshold) place_limit(OGZD, price, size)
On limit fill:
If (limit_is_filled) place_market(GAZPRU, size)
Parameters: threshold
Another example: S&P stocks on NYSE and NASDAQ in NY against Futures on CME in Chicago
Pairs Trading and Statistical Arbitrage
Market neutral portfolio
– Short one set of stocks
– Long another set
– Rebalance very often
• Pair Trading
– Coca-Cola (KO) and Pepsi (PEP)
– Renault (RNO) and PSA Peugeot Citroen (UG)
• Statistical Arbitrage
– Up to 1000+ stocks in portfolio
– Huge quantitive calculations
Which is better?
Strategy Sharp Ratio Calculations HFT / Delay Sensitive?
Trend FollowingMean revision
Bad Easy No
Volatility Trading Bad Hard No
Arbitrage / Pairtrading
Good Easy Yes
Statistical Arbitrage
Good Hard Yes
Market Making Good Easy Yes
Historical Data
Completeness
Symbols
Exchanges
News
Depth
Past
Precision
Order Book
Quality
Splits etc.
Gaps
Timestamps
Approval. Pre-trade Analysis
Input
• Historical data
• Market influence modeling
• Configuration parameters
Backtesting
• Prototype (R / Python / Java / C++ / Mathlab/ Erlang / …)
• GPU
• Cluster / Cloud / …
Result
•Possible income
•Risks
•Real Expenses
Backtest Results
Param 1 Param 2 … Income Expenses
X1 Y1 … 10% 4%
X1 Y2 … 15% 11%
… … … … …
Xn Yn … 5% 2%
Execution with:
o same input data
odifferent set of parameters values
FIX Server Location
One exchange
– Low latency algorithm
• Exchange data center
– No special requirements
• Back up data center or any random data center
Several exchanges
– Arbitrage with low latency algorithm
• Exchange data center (exchange depends on algorithm)
• Dedicate link to other exchanges
– No special requirements
• Any data center (non exchange preferably)
• Common Internet link
Creating an Algorithm
• Any programming language
• 3rd party software
• Run algorithm on your server or in
broker’s VM
• Control through the trading terminal
Trading Terminal
• Market Analysis
• Manual trading
• FIX orders control
• Account control
-> What about other servers?
General
1. Exchanges/Markets coverage
2. Trading volumes
3. Regulation issues
4. Legal issues
5. Commissions and fees
Technology
Market data
Delays
Market Depth Best Bid Offer
Trades
Execution
Delays
Client side / Server side
Pre-trade risks, Software
Connection
Protocol
Virtual Machines
Co-location
Control
Trades Export
Interface
Error handling
NEXT GENERATION
PRIME BROKER
Questions?
Portomaso Business Tower, Level 7, ST. Julians, Malta
[email protected] | [email protected] | www.exante.eu
Top Related