Tech Days 2015: Customer Presentation Deep Blue Capital
Transcript of Tech Days 2015: Customer Presentation Deep Blue Capital
Automated trading with AdaDuncan Sands
1. The company
DeepBlueCapital
Based in Amsterdam25 employeesNo clientsActive on ~30 stock exchanges~100,000,000 Euros traded / day~2,500,000 SLOC, 95% Ada
2. Statistics; orders of magnitude
Orders of magnitude
Entire company One programMarket data updates / sec ~2000 avg, ~40,000 peak
Orders of magnitude
Entire company One programMarket data updates / sec ~2000 avg, ~40,000 peak ~500 avg, ~10,000 peak
Orders of magnitude
Entire company One programMarket data updates / sec ~2000 avg, ~40,000 peak ~500 avg, ~10,000 peak
Eurostoxx 50 index future updates / sec: ~100 avg, ~3000 peak
Orders of magnitude
Entire company One programMarket data updates / sec ~2000 avg, ~40,000 peak ~500 avg, ~10,000 peak
Order updates / day ~700,000 ~100,000
Orders of magnitude
Entire company One programMarket data updates / sec ~2000 avg, ~40,000 peak ~500 avg, ~10,000 peak
Order updates / day ~700,000 ~100,000
Trades / day ~3000 ~600
Orders of magnitude
Entire company One programMarket data updates / sec ~2000 avg, ~40,000 peak ~500 avg, ~10,000 peak
Order updates / day ~700,000 ~100,000
Trades / day ~3000 ~600
# instruments traded ~3000 ~500
Orders of magnitude
Entire company One programMarket data updates / sec ~2000 avg, ~40,000 peak ~500 avg, ~10,000 peak
Order updates / day ~700,000 ~100,000
Trades / day ~3000 ~600
# instruments traded ~3000 ~500
Value traded / day ~ EUR 100,000,000 ~ EUR 20,000,000
Latency
Tradingprogram
Network packet in
Market data or order update
Latency
Tradingprogram
Network packet in
Network packet out
Market data or order update
Order update
Latency
Tradingprogram
Network packet in
Network packet out
Market data or order update
Order update
Actual: < 1ms (95%)
Latency
Tradingprogram
Network packet in
Network packet out
Market data or order update
Order update
Actual: < 1ms (95%)
< 60us
Latency
Tradingprogram
Network packet sent
Network packet received
Market data or order update
Order update
Stockexchange
Latency
Tradingprogram
Network packet sent
Network packet received
Market data or order update
Order update
Stockexchange
HFT: < 50us
Us: < 60us
Atomic objectsgeneric type Object_Type (<>) is private;package Atomic_Objects is
type Atomic_Type is limited private;
function Load (Atomic : Atomic_Type) return Object_Type;
procedure Store ( Atomic : in out Atomic_Type; Value : in Object_Type );
...
Atomic objectsgeneric type Object_Type (<>) is private;package Atomic_Objects is
type Atomic_Type is limited private;
function Load (Atomic : Atomic_Type) return Object_Type;
procedure Store ( Atomic : in out Atomic_Type; Value : in Object_Type );
...
Any size
Atomic load
Atomic store
Implementation Load time Store timeProtected object ~65ns ~65ns“DBC special” ~1ns ~150ns
3. Advantages and disadvantages of Ada
Ada – the good
SafeEfficientBuilt-in taskingEasy to learnEncourages good practiceMany problems found at compile timeEasy to interface with other languagesPleases the regulator
Ada – the bad
Inadequate memory modelLow level of abstractionHard to hire people with experienceSmall ecosystem
Ada – the ugly