SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
Cloud I/O in FS



          John Davies
               • 17th May 2012




Monday, 21 May 12
Agenda


  • A quick look at data volumes in the front-office

  • Front office enterprise architecture

  • How can cloud help in this low-latency environment?

  • Getting data into GigaSpaces

  • A few examples


 Confidential Information of C24 Technologies   © 2012 C24 Technologies
Monday, 21 May 12
Clouds are old!

  • Most of us (here) have been using “grid” for a good
      decade
       • Cloud isn’t much different, it’s just a little more fluffy!

  • Having computing resources in the cloud doesn’t solve
      integration issues
       • In fact is just means they need to handle higher volumes

  • Getting Financial Services messages into a cloud for
      processing requires some clever integration technology

  • Even once it’s in the cloud you need some clever
      technology to make the best of what you have

 Confidential Information of C24 Technologies                          © 2012 C24 Technologies
Monday, 21 May 12
Front-Office

  • One area that may not seem ideal for cloud solutions is
      the front office

  • Latency is critical, the 100ms latency to the cloud would
      be like years for your average arbitrage trader

  • But the split-(milli)-second decisions made by the algo
      trading engines need to be based on reliable information

  • The cloud is the perfect place to perform these
      operations...


 Confidential Information of C24 Technologies   © 2012 C24 Technologies
Monday, 21 May 12
We need more CPU power!

  • The graph below shows the Dow Jones daily trading
      volumes since 1980, the y-axis is logarithmic
       • Log(vol) vs time i.e. 8 = 100m, 9 = 1 billion, 10 = 10 billion (per day)




 Confidential Information of C24 Technologies                       © 2012 C24 Technologies
Monday, 21 May 12
Algo-trading

  • It’s not that complicated... (in theory anyway)
       • You need to have access to data from the exchange, come up with a trading strategy
         (algorithm), write the code (usually in C, Python, R or something similar), deploy it
         to a machine as close as you can physically get to the exchange (co-hosting)
       • ... and collect your money :-)

  • The algorithm is basically a program that says something
      like
       • If APPL < opening price and MSFT > 30min moving avg and MSFT > opening price then
           buy MSFT, sell APPL


  • But it can get way more complex
       • Predictive models based on market data feed harmonics trying anticipate where the
           market will be in 200 µs
       • Correlation trading of stocks that appear unrelated, but mathematically correlate


 Confidential Information of C24 Technologies                     © 2012 C24 Technologies
Monday, 21 May 12
So first get the data...

  • Protocols to connect - each exchange is different!
       • FIX, ITCH, OUCH, PINCH, SCRATCH, many are optimised for performance
       • Proprietary APIs can reduce latency to the order of 20µs


  • FIX / FAST is a good standard approach, it comes in
      several versions and the latest can use 3 different
      encodings...
       • Standard FIX (tag/value pairs, all tags are integers)
       • FixML (a very verbose XMLized version of the above)
       • FAST (FIX Adapted for STreaming, like the standard version but compressed)

  • When you’ve worked that out there’s the venue specific
      dialect that need tuning for each exchange

 Confidential Information of C24 Technologies                   © 2012 C24 Technologies
Monday, 21 May 12
Now the OS & Language...

  • Since the FIX engine is connecting to your back-end
    servers you usually have to make a choice between...
  • C / C++
             • Still regarded as the fastest FIX engines and usually the choice for the arbitrage traders
             • Latency is reliable (i.e. no garbage collection)
             • Supporting all different versions of Linux, UNIX, MS, 32bit, 64bit etc. is a real pain


  • Java
             • Surprisingly only 3rd place, Java FIX engines are very fast but unless they are carefully designed garbage
                collection can be a major issue
             • Easiest to integrate into other architecture, most flexible


  • .NET
             • The most popular simply due to the reason that most small businesses start off on
             • Microsoft platforms (Excel etc.) and this fits in best
             • Less used in the larger businesses (banks, major firms etc.)



 Confidential Information of C24 Technologies                                           © 2012 C24 Technologies
Monday, 21 May 12
Enterprise Architecture...

  • It’s not exactly complicate
      from an enterprise view                     New York Stock Exchange (NYSE)          Chicago Mercantile Exchange (CME)


      point

  • Offices are often in “nice”
      locations
                                                    Company          Company                    Company        Company
                                                   FIX Engine     Trading Engine               FIX Engine   Trading Engine



       • Of course it’s nothing to do with the
           favourable tax
                                                                               Company Office



  • Most of the infrastructure
      runs in co-located boxes
       • Co-hosting costs money and limits what
           you can do




 Confidential Information of C24 Technologies                             © 2012 C24 Technologies
Monday, 21 May 12
So what about the cloud?


  • So far no cloud, where does come in to the picture
       • And I don’t mean the dark clouds appearing over the tax-havens


  • The traders view of the world is a little window just a few
      milliseconds wide, what if we could expand that?
       • It’s like watching a fast movie with no controls, you sneeze as a shot’s fired and
           you’ve missed half the plot (welcome to modern movies)



  • What if we could skip back an hour or a day and replay
      scenarios through our algo trading engines?



 Confidential Information of C24 Technologies                      © 2012 C24 Technologies
Monday, 21 May 12
First store the data...

  • Tick data is the raw price feed from the exchange
       • 8=FIXT.1.1^A9=0^A35=X^A49=CME^A34=2127825^A52=20100120150049656^A
           1128=8^A268=1^A279=0^A269=0^A48=109291^A22=8^A270=115060^A271=1^A
           273=150049000^A336=2^A346=1^A83=27750^A1023=2^A75=20081117^A10=000^A


  • This needs to be stored for legal reasons as you have to be
      able to demonstrate “best execution” for clients
       • We’ve seen the volumes earlier, we don’t need everything on the exchange but
           certainly everything we’re trading

  • Typically these are tens of gigabytes per day per exchange

  • An interesting solution is to ship it up to EC2 and store it
      on EBS and S3


 Confidential Information of C24 Technologies                  © 2012 C24 Technologies
Monday, 21 May 12
Shipping to Amazon

  • There are two mechanisms to get data up onto Amazon’s
      EC2, streaming and batch

  • Batch is more efficient, we compress the data hourly and
      “scp” it up to an EC2 box
       -rw-r--r--   archive   onix   12710903   7 Dec   2011 OrderBooksRepository_Channel_7_summary_20111125-14_00_54_154.gz
       -rw-r--r--   archive   onix   19452739   7 Dec   2011 OrderBooksRepository_Channel_7_summary_20111125-15_00_54_785.gz
       -rw-r--r--   archive   onix   27549005   7 Dec   2011 OrderBooksRepository_Channel_7_summary_20111125-16_00_55_417.gz




  • Streaming adds the interesting advantage of having near-
      realtime data on EC2
       • Not to mention an EC2 box doing little more than writing to disk

  • So we started to add monitoring processes to the data
       • Triggers, statistics, filters, aggregators etc.

 Confidential Information of C24 Technologies                                                © 2012 C24 Technologies
Monday, 21 May 12
Terabytes to Petabytes of data

  • Tens of gigabytes per channel, per exchange per day
       • Several terabytes per channel per exchange per year
       • 20 plus exchanges (28 in one example) we’re into petabytes per year


  • Fortunately it compresses well (10:1) so we can “archive”
      it as tar/gz and load it on-demand into our applications
       • Recent data is loaded onto EBS, “old” data onto S3
       • Data is mounted form EBS drives on demand


  • We now have a few interesting possibilities...
       • We can feed the data back for back-testing on-site
       • We can sort/filter/analyse it in the cloud
       • We can run the back-testing in the cloud


 Confidential Information of C24 Technologies                   © 2012 C24 Technologies
Monday, 21 May 12
Introducing the Technologies

  • C24 - Integration Objects
       • Basically a Java-Binding tool with built-in messaging standards for financial services
       • For example Fix, FpML, ISO-20022, SEPA, SWIFT etc. as Java APIs and self-contained
           objects that can self-validate


  • GigaSpaces
       • The best implementation of Sun’s (now Oracle’s) Jini/JavaSpaces
       • Powerful distributed implementation of the Master/Worker pattern

  • C24 + GigaSpaces
       • The ability to onboard / work with financial services messages (as above) directly in
           GigaSpaces with minimal work
       • Take huge amounts of data, parse it (with C24-iO) and insert it into GigaSpaces
       • The “workers” can “take” data from the “space”, execute the task and “write” back
           to the “space”


 Confidential Information of C24 Technologies                      © 2012 C24 Technologies
Monday, 21 May 12
Fix 5.0 PostTrade - Trade Capture Report...




 Confidential Information of C24 Technologies   © 2012 C24 Technologies
Monday, 21 May 12
A few clicks and a little code

  • We click on the message library we need and deploy the
      code

  • The result can now be used to insert Fix messages (for
      example) into GigaSpaces

  • We can write using a very simple Java API (including an
      ESB such as Mule) or Spring

  • A very simple Master/Worker pattern can be deployed into
      GigaSpaces to process/filter/enrich/sort the messages


 Confidential Information of C24 Technologies   © 2012 C24 Technologies
Monday, 21 May 12
Spring Integration

  • Spring make it all look very easy...
           <bean id="FixSourceFactory" class="biz.c24.io.spring.source.FixSourceFactory">
              <property name="encoding" value="ASCII"/>
           </bean>


           <c24:model id="inputFix" base-element="biz.c24.io.fix50sp2.TradeCaptureReportElement" />


      !             <file:inbound-channel-adapter
                       id="filesIn"
      !                     directory="file:/Users/jdavies/dev/Spring_C24/spring-integration-samples/input"
                       filename-pattern="*.fix">
      !                 <int:poller id="poller" fixed-delay="0"/>
      !             </file:inbound-channel-adapter>


           <int-c24:unmarshalling-transformer
                       source-factory-ref="FixSourceFactory"
                       model-ref="inputFix"
                       input-channel="filesIn"
                       output-channel="Fix-Space" />




 Confidential Information of C24 Technologies                                          © 2012 C24 Technologies
Monday, 21 May 12
GigaSpaces does the rest

  • We now have a space full of Java Objects that represent
      the Fix messages

  • We can now use generic workers or Map/Reduce to sort/
      process the messages

  • The same architecture works on your laptop, a server, a
      4,000 CPU grid in the cloud
       • The latter is obviously a lot faster :-)




 Confidential Information of C24 Technologies       © 2012 C24 Technologies
Monday, 21 May 12
Some examples

  • Front Office
       • Huge usage of GigaSpace but latency tends to prohibit cloud, however backtesting
           and post-trade processing are increasing looking towards the cloud


  • Middle Office
       • Matching and reconciliation, “what if?” calculations, anti-fraud
       • Data tends to need to be tokenised to conform to PCI regulations


  • Prime Brokerage
       • Large CSV files arriving via FTP
       • Parsing, validation, enrichment, transformation & reconciliation etc.

  • Payments
       • Loyalties & offer calculations

 Confidential Information of C24 Technologies                      © 2012 C24 Technologies
Monday, 21 May 12
Thank you




                                                +
                                                    =
                                          Financial Services
                                             in the cloud


 Confidential Information of C24 Technologies              © 2012 C24 Technologies
Monday, 21 May 12

Weitere ähnliche Inhalte

Was ist angesagt?

Db2 10 memory management uk db2 user group june 2013
Db2 10 memory management   uk db2 user group june 2013Db2 10 memory management   uk db2 user group june 2013
Db2 10 memory management uk db2 user group june 2013
Carol Davis-Mann
 

Was ist angesagt? (20)

XtremIO
XtremIOXtremIO
XtremIO
 
Db2 10 memory management uk db2 user group june 2013
Db2 10 memory management   uk db2 user group june 2013Db2 10 memory management   uk db2 user group june 2013
Db2 10 memory management uk db2 user group june 2013
 
S104874 toe-pool-jburg-v1809e
S104874 toe-pool-jburg-v1809eS104874 toe-pool-jburg-v1809e
S104874 toe-pool-jburg-v1809e
 
S de0882 new-generation-tiering-edge2015-v3
S de0882 new-generation-tiering-edge2015-v3S de0882 new-generation-tiering-edge2015-v3
S de0882 new-generation-tiering-edge2015-v3
 
S100298 pendulum-swings-orlando-v1804a
S100298 pendulum-swings-orlando-v1804aS100298 pendulum-swings-orlando-v1804a
S100298 pendulum-swings-orlando-v1804a
 
MT09 Using Dell’s HPC Cloud Solutions to maximize HPC utilization while reduc...
MT09 Using Dell’s HPC Cloud Solutions to maximize HPC utilization while reduc...MT09 Using Dell’s HPC Cloud Solutions to maximize HPC utilization while reduc...
MT09 Using Dell’s HPC Cloud Solutions to maximize HPC utilization while reduc...
 
Webinar: Hyperconvergence is Broken, Learn How to Fix it!
Webinar: Hyperconvergence is Broken, Learn How to Fix it!Webinar: Hyperconvergence is Broken, Learn How to Fix it!
Webinar: Hyperconvergence is Broken, Learn How to Fix it!
 
Microservices for Java Architects (Madison-Milwaukee, April 28-9, 2015)
Microservices for Java Architects (Madison-Milwaukee, April 28-9, 2015)Microservices for Java Architects (Madison-Milwaukee, April 28-9, 2015)
Microservices for Java Architects (Madison-Milwaukee, April 28-9, 2015)
 
S100297 ilm-archive-orlando-v1804c
S100297 ilm-archive-orlando-v1804cS100297 ilm-archive-orlando-v1804c
S100297 ilm-archive-orlando-v1804c
 
S100293 hybrid-cloud-orlando-v1804a
S100293 hybrid-cloud-orlando-v1804aS100293 hybrid-cloud-orlando-v1804a
S100293 hybrid-cloud-orlando-v1804a
 
OpenITSM - IT Service Management with Open Source
OpenITSM - IT Service Management with Open SourceOpenITSM - IT Service Management with Open Source
OpenITSM - IT Service Management with Open Source
 
S016825 ibm-cos-nola-v1710d
S016825 ibm-cos-nola-v1710dS016825 ibm-cos-nola-v1710d
S016825 ibm-cos-nola-v1710d
 
S016828 storage-tiering-nola-v1710b
S016828 storage-tiering-nola-v1710bS016828 storage-tiering-nola-v1710b
S016828 storage-tiering-nola-v1710b
 
Hyperconvergence... and the public sector
Hyperconvergence... and the public sectorHyperconvergence... and the public sector
Hyperconvergence... and the public sector
 
Disaster recovery. prepare.plan.perform.
Disaster recovery. prepare.plan.perform.Disaster recovery. prepare.plan.perform.
Disaster recovery. prepare.plan.perform.
 
ZD&T Survival Kit
ZD&T Survival KitZD&T Survival Kit
ZD&T Survival Kit
 
IBM Storage Virtualization
IBM Storage VirtualizationIBM Storage Virtualization
IBM Storage Virtualization
 
MT42 The impact of high performance Oracle workloads on the evolution of the ...
MT42 The impact of high performance Oracle workloads on the evolution of the ...MT42 The impact of high performance Oracle workloads on the evolution of the ...
MT42 The impact of high performance Oracle workloads on the evolution of the ...
 
E2 evc 3-2-1-rule - mikeresseler
E2 evc   3-2-1-rule - mikeresselerE2 evc   3-2-1-rule - mikeresseler
E2 evc 3-2-1-rule - mikeresseler
 
The move-to-hybrid-cloud-itsmf-april2015
The move-to-hybrid-cloud-itsmf-april2015The move-to-hybrid-cloud-itsmf-april2015
The move-to-hybrid-cloud-itsmf-april2015
 

Ähnlich wie The DevOps PaaS Infusion - May meetup

Bimodal IT and EDW Modernization
Bimodal IT and EDW ModernizationBimodal IT and EDW Modernization
Bimodal IT and EDW Modernization
Robert Gleave
 
Is10innovativetechnology8 120724150532-phpapp01
Is10innovativetechnology8 120724150532-phpapp01Is10innovativetechnology8 120724150532-phpapp01
Is10innovativetechnology8 120724150532-phpapp01
Nuwan Vithanage
 

Ähnlich wie The DevOps PaaS Infusion - May meetup (20)

Launching a Data Platform on Snowflake
Launching a Data Platform on SnowflakeLaunching a Data Platform on Snowflake
Launching a Data Platform on Snowflake
 
Why is Infrastructure-as-Code essential in the Cloud Age?
Why is Infrastructure-as-Code essential in the Cloud Age?Why is Infrastructure-as-Code essential in the Cloud Age?
Why is Infrastructure-as-Code essential in the Cloud Age?
 
Bimodal IT and EDW Modernization
Bimodal IT and EDW ModernizationBimodal IT and EDW Modernization
Bimodal IT and EDW Modernization
 
apidays LIVE LONDON - Old meets New - Managing transactions on the edge of th...
apidays LIVE LONDON - Old meets New - Managing transactions on the edge of th...apidays LIVE LONDON - Old meets New - Managing transactions on the edge of th...
apidays LIVE LONDON - Old meets New - Managing transactions on the edge of th...
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
“High-Efficiency Edge Vision Processing Based on Dynamically Reconfigurable T...
“High-Efficiency Edge Vision Processing Based on Dynamically Reconfigurable T...“High-Efficiency Edge Vision Processing Based on Dynamically Reconfigurable T...
“High-Efficiency Edge Vision Processing Based on Dynamically Reconfigurable T...
 
FInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo Aquino
FInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo AquinoFInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo Aquino
FInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo Aquino
 
Tame that Beast
Tame that BeastTame that Beast
Tame that Beast
 
Cloud Computing: The Hard Problems Never Go Away
Cloud Computing: The Hard Problems Never Go AwayCloud Computing: The Hard Problems Never Go Away
Cloud Computing: The Hard Problems Never Go Away
 
Idera live 2021: Managing Databases in the Cloud - the First Step, a Succes...
Idera live 2021:   Managing Databases in the Cloud - the First Step, a Succes...Idera live 2021:   Managing Databases in the Cloud - the First Step, a Succes...
Idera live 2021: Managing Databases in the Cloud - the First Step, a Succes...
 
F12 vercelletto innovator-c_tpc_benchmark
F12 vercelletto innovator-c_tpc_benchmarkF12 vercelletto innovator-c_tpc_benchmark
F12 vercelletto innovator-c_tpc_benchmark
 
Is10innovativetechnology8 120724150532-phpapp01
Is10innovativetechnology8 120724150532-phpapp01Is10innovativetechnology8 120724150532-phpapp01
Is10innovativetechnology8 120724150532-phpapp01
 
Going MicroServices with Net
Going MicroServices with NetGoing MicroServices with Net
Going MicroServices with Net
 
Webinar: How MongoDB is Used to Manage Reference Data - May 2014
Webinar: How MongoDB is Used to Manage Reference Data - May 2014Webinar: How MongoDB is Used to Manage Reference Data - May 2014
Webinar: How MongoDB is Used to Manage Reference Data - May 2014
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Io t world_2016_iot_smart_gateways_moe
Io t world_2016_iot_smart_gateways_moeIo t world_2016_iot_smart_gateways_moe
Io t world_2016_iot_smart_gateways_moe
 
Informix 1210 feature overview
Informix 1210 feature overviewInformix 1210 feature overview
Informix 1210 feature overview
 
Moving to software-based production workflows and containerisation of media a...
Moving to software-based production workflows and containerisation of media a...Moving to software-based production workflows and containerisation of media a...
Moving to software-based production workflows and containerisation of media a...
 
ERP 2.0 (Cloud, New Functionality, FAH, Integration and M&A Focus)
ERP 2.0 (Cloud, New Functionality, FAH, Integration and M&A Focus)ERP 2.0 (Cloud, New Functionality, FAH, Integration and M&A Focus)
ERP 2.0 (Cloud, New Functionality, FAH, Integration and M&A Focus)
 
Key Note Session IDUG DB2 Seminar, 16th April London - Julian Stuhler .Trito...
Key Note Session  IDUG DB2 Seminar, 16th April London - Julian Stuhler .Trito...Key Note Session  IDUG DB2 Seminar, 16th April London - Julian Stuhler .Trito...
Key Note Session IDUG DB2 Seminar, 16th April London - Julian Stuhler .Trito...
 

Kürzlich hochgeladen

unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
Abortion pills in Kuwait Cytotec pills in Kuwait
 
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
amitlee9823
 
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
Sheetaleventcompany
 
Call Girls In Noida 959961⊹3876 Independent Escort Service Noida
Call Girls In Noida 959961⊹3876 Independent Escort Service NoidaCall Girls In Noida 959961⊹3876 Independent Escort Service Noida
Call Girls In Noida 959961⊹3876 Independent Escort Service Noida
dlhescort
 
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
amitlee9823
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
dollysharma2066
 
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
amitlee9823
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
Renandantas16
 

Kürzlich hochgeladen (20)

Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
 
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
 
Value Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and painsValue Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and pains
 
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
 
Business Model Canvas (BMC)- A new venture concept
Business Model Canvas (BMC)-  A new venture conceptBusiness Model Canvas (BMC)-  A new venture concept
Business Model Canvas (BMC)- A new venture concept
 
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
John Halpern sued for sexual assault.pdf
John Halpern sued for sexual assault.pdfJohn Halpern sued for sexual assault.pdf
John Halpern sued for sexual assault.pdf
 
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
 
Call Girls In Noida 959961⊹3876 Independent Escort Service Noida
Call Girls In Noida 959961⊹3876 Independent Escort Service NoidaCall Girls In Noida 959961⊹3876 Independent Escort Service Noida
Call Girls In Noida 959961⊹3876 Independent Escort Service Noida
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMAN
 
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
Cracking the Cultural Competence Code.pptx
Cracking the Cultural Competence Code.pptxCracking the Cultural Competence Code.pptx
Cracking the Cultural Competence Code.pptx
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
 
How to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityHow to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League City
 
Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1
 
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
 

The DevOps PaaS Infusion - May meetup

  • 1. Cloud I/O in FS John Davies • 17th May 2012 Monday, 21 May 12
  • 2. Agenda • A quick look at data volumes in the front-office • Front office enterprise architecture • How can cloud help in this low-latency environment? • Getting data into GigaSpaces • A few examples Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 3. Clouds are old! • Most of us (here) have been using “grid” for a good decade • Cloud isn’t much different, it’s just a little more fluffy! • Having computing resources in the cloud doesn’t solve integration issues • In fact is just means they need to handle higher volumes • Getting Financial Services messages into a cloud for processing requires some clever integration technology • Even once it’s in the cloud you need some clever technology to make the best of what you have Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 4. Front-Office • One area that may not seem ideal for cloud solutions is the front office • Latency is critical, the 100ms latency to the cloud would be like years for your average arbitrage trader • But the split-(milli)-second decisions made by the algo trading engines need to be based on reliable information • The cloud is the perfect place to perform these operations... Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 5. We need more CPU power! • The graph below shows the Dow Jones daily trading volumes since 1980, the y-axis is logarithmic • Log(vol) vs time i.e. 8 = 100m, 9 = 1 billion, 10 = 10 billion (per day) Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 6. Algo-trading • It’s not that complicated... (in theory anyway) • You need to have access to data from the exchange, come up with a trading strategy (algorithm), write the code (usually in C, Python, R or something similar), deploy it to a machine as close as you can physically get to the exchange (co-hosting) • ... and collect your money :-) • The algorithm is basically a program that says something like • If APPL < opening price and MSFT > 30min moving avg and MSFT > opening price then buy MSFT, sell APPL • But it can get way more complex • Predictive models based on market data feed harmonics trying anticipate where the market will be in 200 µs • Correlation trading of stocks that appear unrelated, but mathematically correlate Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 7. So first get the data... • Protocols to connect - each exchange is different! • FIX, ITCH, OUCH, PINCH, SCRATCH, many are optimised for performance • Proprietary APIs can reduce latency to the order of 20µs • FIX / FAST is a good standard approach, it comes in several versions and the latest can use 3 different encodings... • Standard FIX (tag/value pairs, all tags are integers) • FixML (a very verbose XMLized version of the above) • FAST (FIX Adapted for STreaming, like the standard version but compressed) • When you’ve worked that out there’s the venue specific dialect that need tuning for each exchange Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 8. Now the OS & Language... • Since the FIX engine is connecting to your back-end servers you usually have to make a choice between... • C / C++ • Still regarded as the fastest FIX engines and usually the choice for the arbitrage traders • Latency is reliable (i.e. no garbage collection) • Supporting all different versions of Linux, UNIX, MS, 32bit, 64bit etc. is a real pain • Java • Surprisingly only 3rd place, Java FIX engines are very fast but unless they are carefully designed garbage collection can be a major issue • Easiest to integrate into other architecture, most flexible • .NET • The most popular simply due to the reason that most small businesses start off on • Microsoft platforms (Excel etc.) and this fits in best • Less used in the larger businesses (banks, major firms etc.) Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 9. Enterprise Architecture... • It’s not exactly complicate from an enterprise view New York Stock Exchange (NYSE) Chicago Mercantile Exchange (CME) point • Offices are often in “nice” locations Company Company Company Company FIX Engine Trading Engine FIX Engine Trading Engine • Of course it’s nothing to do with the favourable tax Company Office • Most of the infrastructure runs in co-located boxes • Co-hosting costs money and limits what you can do Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 10. So what about the cloud? • So far no cloud, where does come in to the picture • And I don’t mean the dark clouds appearing over the tax-havens • The traders view of the world is a little window just a few milliseconds wide, what if we could expand that? • It’s like watching a fast movie with no controls, you sneeze as a shot’s fired and you’ve missed half the plot (welcome to modern movies) • What if we could skip back an hour or a day and replay scenarios through our algo trading engines? Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 11. First store the data... • Tick data is the raw price feed from the exchange • 8=FIXT.1.1^A9=0^A35=X^A49=CME^A34=2127825^A52=20100120150049656^A 1128=8^A268=1^A279=0^A269=0^A48=109291^A22=8^A270=115060^A271=1^A 273=150049000^A336=2^A346=1^A83=27750^A1023=2^A75=20081117^A10=000^A • This needs to be stored for legal reasons as you have to be able to demonstrate “best execution” for clients • We’ve seen the volumes earlier, we don’t need everything on the exchange but certainly everything we’re trading • Typically these are tens of gigabytes per day per exchange • An interesting solution is to ship it up to EC2 and store it on EBS and S3 Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 12. Shipping to Amazon • There are two mechanisms to get data up onto Amazon’s EC2, streaming and batch • Batch is more efficient, we compress the data hourly and “scp” it up to an EC2 box -rw-r--r-- archive onix 12710903 7 Dec 2011 OrderBooksRepository_Channel_7_summary_20111125-14_00_54_154.gz -rw-r--r-- archive onix 19452739 7 Dec 2011 OrderBooksRepository_Channel_7_summary_20111125-15_00_54_785.gz -rw-r--r-- archive onix 27549005 7 Dec 2011 OrderBooksRepository_Channel_7_summary_20111125-16_00_55_417.gz • Streaming adds the interesting advantage of having near- realtime data on EC2 • Not to mention an EC2 box doing little more than writing to disk • So we started to add monitoring processes to the data • Triggers, statistics, filters, aggregators etc. Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 13. Terabytes to Petabytes of data • Tens of gigabytes per channel, per exchange per day • Several terabytes per channel per exchange per year • 20 plus exchanges (28 in one example) we’re into petabytes per year • Fortunately it compresses well (10:1) so we can “archive” it as tar/gz and load it on-demand into our applications • Recent data is loaded onto EBS, “old” data onto S3 • Data is mounted form EBS drives on demand • We now have a few interesting possibilities... • We can feed the data back for back-testing on-site • We can sort/filter/analyse it in the cloud • We can run the back-testing in the cloud Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 14. Introducing the Technologies • C24 - Integration Objects • Basically a Java-Binding tool with built-in messaging standards for financial services • For example Fix, FpML, ISO-20022, SEPA, SWIFT etc. as Java APIs and self-contained objects that can self-validate • GigaSpaces • The best implementation of Sun’s (now Oracle’s) Jini/JavaSpaces • Powerful distributed implementation of the Master/Worker pattern • C24 + GigaSpaces • The ability to onboard / work with financial services messages (as above) directly in GigaSpaces with minimal work • Take huge amounts of data, parse it (with C24-iO) and insert it into GigaSpaces • The “workers” can “take” data from the “space”, execute the task and “write” back to the “space” Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 15. Fix 5.0 PostTrade - Trade Capture Report... Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 16. A few clicks and a little code • We click on the message library we need and deploy the code • The result can now be used to insert Fix messages (for example) into GigaSpaces • We can write using a very simple Java API (including an ESB such as Mule) or Spring • A very simple Master/Worker pattern can be deployed into GigaSpaces to process/filter/enrich/sort the messages Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 17. Spring Integration • Spring make it all look very easy... <bean id="FixSourceFactory" class="biz.c24.io.spring.source.FixSourceFactory"> <property name="encoding" value="ASCII"/> </bean> <c24:model id="inputFix" base-element="biz.c24.io.fix50sp2.TradeCaptureReportElement" /> ! <file:inbound-channel-adapter id="filesIn" ! directory="file:/Users/jdavies/dev/Spring_C24/spring-integration-samples/input" filename-pattern="*.fix"> ! <int:poller id="poller" fixed-delay="0"/> ! </file:inbound-channel-adapter> <int-c24:unmarshalling-transformer source-factory-ref="FixSourceFactory" model-ref="inputFix" input-channel="filesIn" output-channel="Fix-Space" /> Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 18. GigaSpaces does the rest • We now have a space full of Java Objects that represent the Fix messages • We can now use generic workers or Map/Reduce to sort/ process the messages • The same architecture works on your laptop, a server, a 4,000 CPU grid in the cloud • The latter is obviously a lot faster :-) Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 19. Some examples • Front Office • Huge usage of GigaSpace but latency tends to prohibit cloud, however backtesting and post-trade processing are increasing looking towards the cloud • Middle Office • Matching and reconciliation, “what if?” calculations, anti-fraud • Data tends to need to be tokenised to conform to PCI regulations • Prime Brokerage • Large CSV files arriving via FTP • Parsing, validation, enrichment, transformation & reconciliation etc. • Payments • Loyalties & offer calculations Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12
  • 20. Thank you + = Financial Services in the cloud Confidential Information of C24 Technologies © 2012 C24 Technologies Monday, 21 May 12