NYU Course Proposal – ULL Architectures for Electronic Trading


NYU

NYU School of Professional Studies – course proposal – Ted Hruzd July 2016
ULL (Ultra Low Latency) Architectures for Electronic Trading

***if interested in this course
contact me- tedhruzd@gmail.com

***no confidential info
from current or former employers are listed
here or will be taught

NYU School of Professional Studies – course proposal – Ted Hruzd 2016
ULL (Ultra Low Latency) Architectures for Electronic Trading
Course Objectives

Develop advanced skills in architecting electronic trading and market data applications for ultra low latency (ULL), for competitive advantage, and for positive ROI.  At end of course one will have developed expertise in end-end architecture of electronic trading infrastructure, including architecting of:

 

  • Multi core, high speed cache Intel based servers
  • Linix 7.2 kernel and NIC tuning
  • Kernel bypass technologies including RDMA and LDMA
  • FPGA based NIC(s) – from ExaBlaze
  • Single tier (or simplified spine-leaf); Ex: Plexxi
  • Layer 1 network switches (ExaBlaze & Metamako)
  • SDN (Software Defined Networks)
  • New binary FIX protocol for ULL order routing
  • ULL messaging middleware (29 West LBM/UME) and 60 East Tech AMPS
  • ULL software design (deep vectors and multi threading)
  • Databases – structured and unstructured
  • Storage, including NVME Flash
  • Tools (some free) to attain performance optimization insights
  • Network appliances – detailed timings/analyics – network, market data, and order routing
  • Big Data and Event Stream processing, real time analytics for seeking alpha (trade opportunities)
  • Fundamentals of FPGA design and programming
  • ROI analysis

PreReq – Intermediate – advanced knowledge of

  • TCP/IP, UDP, multicast,
  • Linux OS and shell or scripting (ex bash, perl),
  • Intel servers
  • Network routers, switches
  • FIX protocol
  • Market Data
  • Visio
  • Python (very basic will be fine – a 2 hour reading assignment will be arranged for beginners)
  • R programming (nice to have. Will use basics that one can learn in 1-2 hours),
  • at least 2 years working with electronic trading applications/infrastructures as Developer, SA, network admin/engineer, Architect, QA analyst, tech project mgr, operations engineer, manager, CTO, CIO, CEO, vendor or consultant providing technology to Wall Street IT

Course Logistics

  • approx 9 week course, to meet once a week for 3 hours.
  • Tech book(s) to download to kindle TBD
  • Multiple web site links to technical white papers and tech analyses
  • Visio
  • Homework every week, to be reviewed in class for 30 minutes, after submission
    All homework will describe real world problems or architectures to build and justify.  Answers will include creating Visio diagrams to solve, list infrastructure designs and reconfigurations, and performance tuning of OS, servers, NIC’s, networks, application design

 

 

NYU-week-by-week

 

WEEK-1

INTRO – Why speed matters and a fundamental analysis of a ULL architecture

  • Will present a Visio diagram with a potential co-lo ULL architecture that receives orders destined for trading venues, utilizing Layer 1 switching. Goal: 500 nanosecond Ack times ingress to appliance that includes Layer1 switching to/from Trading venues).
  • We will periodically revisit this co-lo architecture throughout this course when we cover specific architecture components in depth (Algo Trading and/or SOR that feeds this architecture, use of FPGA, multi-cores, and Layer 1 switching)
  • Why speed of processing still matters and will for next several years at least
  • Why Layer 1 switches
  • Layer 1 switch with integrated cores and FPGA for risk checks
  • High speed real time analytics for seeking alpha (trade opportunities) & infrastructure analytics
  • Exchange (Trading Venue) connectivity
  • Layer 2/3 aggregation in new switch appliances
  • Role of Linux kernel tuning for ULL
  • Present some Linux configurations to critique
  • HOMEWORK – Given few server, Linux configurations with flows, respond with measures to optimize performance & lower latencies

 

WEEK-2

OS, Servers, Software, intro to networking

  • Review Homework
  • Deep dive into Linux 7.2 network-latency configuration + additional tuning options
  • Basic Linux and Server measures and utilities for performance analytics:
    • Disable unnecessary daemons and services (ex firewalld & iptables)
    • BIOS updates and tuning
    • Turbostat
    • Lstopo
    • Lscpu
    • Numactl
    • Numastat
    • Tuned
    • Isolcpus
    • Interrupt affinity or isolation
    • Irqbalance
    • Busy_poll
    • Tuna
    • Perf
    • Mpstat, vmstat, iostat, nicstat, free, top, netstat, ss
  • VM (Virtual Memory) and page flushes, optimize market data caches
  • Slow network connections and packet drops
  • Intro to NetPerf tool
  • NIC tuning
  • Kernel bypass, LDMA, RDMA
  • Kernel bypass with NIC vendors (ExaBlaze, SolarFlare, Mellanox) – description how each work
  • Network appliances:
    • ExaBlaze Fusion
    • Metamako MetaApp
    • FixNetics ZeroLatency
  • HOMEWORK – per given atchitectures and requirements, configure kernel bypass (will draw on knowledge of ExaBlaze, SolarFlare, Mellanox) + more advanced kernel tuning configurations also per given architectures – given an environment with memory pressure + packet drops Also will be given Python programming reading assignment

 

WEEK-3

OS, Servers, Software, intro to networking (cont)

  • Quick intro Python
  • Programming with Multiple core multi thread, parallelism
  • Vectorize application code
  • Design – Internal loops with deep vector instructions, outer loops with parallelization (threads)
  • Servers, sockets, cores, caches
  • Core speeds GHz vs more cores, larger and faster caches
  • Over clocked servers – features and what applications can benefit
  • Linux, Solaris, Windows, other ex SmartOS, Mesosphere DC OS
  • How to benchmark performance, analyze, tune
  • NUMA aware processes and threads
  • Optimize cache assignments per high priority threads
  • Intel technologies including …
  • AVX-512 deep vector instructions
  • TBB thread Building blocks
  • Omni-Path high speed / bandwidth interconnect and QPI
  • PCIE
  • NVME
  • Flash SSD Drives
  • C ++ vs Java for ULL
  • Lists vs vectors
  • Iterate lists
  • Role of FPGA, GPU, MicroWave networks for ULL
  • C/C++, Java, Python, CUDA, FPGA: programming design considerations
  • Java 8 new streams API and lambda expressions – for analytics
  • HOMEWORK – all reading/studying – (1) Python for algo trading (texts and materials to be provided) & (2) links to ULL Network – deep dive white papers & (3) intro to Wireshark

 

WEEK-4

ULL Networks

  • Review and key points of reading assignment + short quiz to test knowledge
  • Intro to Wireshark
  • Intro to FIX Protocol
  • Intro to Wireshark with FIX protocol “Plug-in”
  • TCP, UDP, multicast (MC), then analysis via WireShark, Corvil
  • New age networks – Spine leaf to single tier
  • SDN (Software Defined Networks)
  • Pico – ULL SDN vendor
  • Cisco and Arista switches for ULL
  • Cisco ACI and Cisco Tetration – Deep machine Learning to automatically optimize large networks
  • Switches with deep buffers, great for Big Data Analytics
  • Configure Routers for ULL – LLDP, MLAG, VRRP, VARP (active-active L3 gateway)
  • Network protocols – BGP, OSPF, HSRP
  • Arista 7124FX with  EOS
  • Plexxi switches – a disruptive technology – single tier
  • Plexxi optimal bandwidth via its SDN
  • HOMEWORK – analysis of a sniffer trace, with recommendations how to optimize performance + more Python / Algo Trading reading

 

WEEK-5

FPGA’s & Market Data

  • Hardware accelerated appliances for ULL and deterministic performance
  • Intro to FPGA’s including intro to FPGA design & programming (I/O blocks + Logic blocks)
  • Why performance tends to be very deterministic with FPGA’s & why deterministic performance (latencies) are critical for HFT and algo traders
  • Pitfalls of FPGA’s
  • FPGA’s vs GPU’s, Intel Phi, and multi cores
  • Feeds in FPGA –architecture, performance, design, support
  • Switch crossbars or caches for fan out with TCP distribution
  • Multicast performance considerations
  • Message based appliances, including FPGA based
  • Direct feed normalization
  • Conflation to conserve bandwidth
  • NBBO
  • Levels 1 and 2 market data
  • Depth of book builds (in FPGA’s or new multi core servers)
  • Smart order routers
  • Exablaze NICs and switches v Metamako switches for market data
  • ENYX FPGA NICs and Appliances for market data and order flow
  • Nova Sparks FPGA based market data ticker
  • Fixnetics Zero latency – multi thread risk checks in FPGA and order processing in parallel on a core(a)
  • Other products — Exegy, Algo logic, Redline, SR labs
  • Consolidated feed vendors Bloomberg and Thomson Reuters
  • HOMEWORK – in an “unturned” environment, run netperf tool to generate peaks in network traffic; set up nicstat to monitor, capture packets and analyze in Wireshark; repeat same test but with a tuned environment and one with ExaBlaze NIC(s) /ze NIC(s) /kernel bypass; also capture packets and timings but via ExaBlaze; compare performance.

 

 

WEEK-6

Analytics  & Machine Learning:  to seek alpha and for infrastructure analytics

  • Intro to Big Data Analytics & Machine Learning (focus on neural networks)
  • Intro to Complex Event Processing (CEP) and Event Stream Processing (ESP)
  • Databases – Never in the path of ULL
  • Column based (contiguous memory) vs relational
  • KDB and OneTick – leading players in high speed market data tick databases
  • EVENT STREAM PROCESSING (ESP) – use ESP To seek alpha
  • Combine market data with News sentiment analytics to seek alpha,
  • Intro to Ravenpack news sentiment analytics
  • Intro to Spark
  • Role of new storage technology (ex NVMe Flash drives)
  • In-mem analytics ex HANA, Spark
  • Corvil – intro to how to configure Corvils and how to analyze FIX order flow with it
  • Machine learning, neural networks in R or Python – create equations to project latencies
  • Machine learning for Latency analysis, tuning insight, seeking alpha -trade opportunities
  • Programming for multi threaded trading risk analytics
  • HOMEWORK – additional stress tests (more volatile) in the environment with ExaBlaze NIC(s) + Wireshark analysis + additional reading in Python for Algo Trading

 

 

WEEK-7

Middleware, High Speed Messaging

  • 60 West AMPS
  • 29 East LBM (UME)
  • New FIX Binary protocol in beta promises to lower latencies
  • Importance of High Speed messaging for Algo Trading
  • Intro to basic algo’s for trading equities (ex VWAP, Volume Participation, use of AVX and RSI)
  • How to back-test algo’s for trading
  • HOMEWORK – program an algo for trading in Python, (TBD- with options which to choose); connect with driver for market data; run a “back test”, analyze performance data via Wireshark with Exablaze generated captures (2 –weeks to complete this)

WEEK-8

End-End ULL Architectures & Intro to Cloud Architectures

  • Co-Lo with 500 ns order ack times (revisited with our new knowledge)
  • Dark pools
  • Algo Trading (servers, appliances, or FPGA’s) in the architecture
  • Smart Order routers
  • Prop Trading
  • Exchanges
  • Why traditional cloud architectures fall short for ULL
  • Cloud for analytics – pitfalls vs best practices
  • Micro services potential
  • How to conduct ROI for new ULL architectures
  • HOMEWORK – VISIO of a new trading system TBD, applying all learned in course

 

WEEK-9

Futures, including Cloud Architectures for ULL

  • Brief Quiz on material covered last week + review of VISIO assignment
  • Projections on new technologies’ impacts on ULL – may include:
  • new Intel cores & software,
  • adoption of Single Tier networks,
  • impact of in memory machine learning for alpha generation of trading signals,
  • integration of deep machine learning from cloud to live trading networks via high speed interconnects, to an asynchronous Q, with NO latency impact,
  • applicability of block chains,
  • system reliability engineering (SRE),

 

 

 

 

 

 

 

Advertisements

About economics501

1 - free market Capitalist; 2 - Fitness Entrepreneur; 56 years old, VP at an Investment Bank in NYC, ex Venture Capitalist, happily married with 2 girls. Education: Rutgers and NYU. I allow Ted Hruzd, my friend to blog at will here. He has many posts here. I have known Ted since we were both students at NYU. Ted also works for an Investment Bank as a VP in Equity Global Markets. ------------------------- I was very very Socialist leaning as a 22 year old. I then strongly believed in Gov role in helping the poor. However, as a USDA Child Nutrition Programs, I personally accounted for millions of fraud, abuse, and waste of tax payer money. I came to believe that the poor would be best served with less Gov programs and more with direct aid via tax system. Then after 5 years I became a free market capitalist, was a venture capitalist in 2007 and helped start 2 high tech companies. I dedicate this site to champion free market capitalism as the best road to Prosperity. Please join in. If you disagree, fine, but please post with dignity and class and be civil. Argue with facts always.
This entry was posted in NYU, Uncategorized and tagged , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s