A ThinClient Approach to RealTime Market Data - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

A ThinClient Approach to RealTime Market Data

Description:

... Level II (SuperMontage), Time & Sales, charts, news, tickers, option analytics. Multiple real-time components updating simultaneously ... – PowerPoint PPT presentation

Number of Views:248
Avg rating:3.0/5.0
Slides: 17
Provided by: ws91
Category:

less

Transcript and Presenter's Notes

Title: A ThinClient Approach to RealTime Market Data


1
A Thin-Client Approach to Real-Time Market Data
  • Presentation at
  • Wall Street on JavaTM Technology
  • February 5, 2003

Steve Shum Executive Vice President Sector Data,
LLC
2
Objective
  • Build a powerful yet cost-effective application
    for real-time streaming quotes and analytics

3
Requirements
  • Advanced, institutional-class feature set
  • Streaming watch lists, NASDAQ Level II
    (SuperMontage), Time Sales, charts, news,
    tickers, option analytics
  • Multiple real-time components updating
    simultaneously
  • Highly flexible and highly customizable user
    interface
  • Multi-monitor support
  • Professional-level performance
  • Small (
  • Complete mobility of user configuration and data
  • Seamless software upgrades

4
Why Java?
  • Swing library pre-built components enable much
    faster development
  • Multi-Threading powerful feature of Java
  • Garbage Collection
  • Cross-platform support single version of
    application runs on Windows, UNIX, Linux, and Mac

5
SectorEngineTM
  • 100 pure Java application built on Swing library
    (J2EE J2SE)
  • Operates within standard browser window OR as
    stand-alone Java application using Java Web Start
  • Features, functions, and performance comparable
    to fat-client professional market data products
  • In commercial use at over 80 customers, including
    floor traders at Pacific Stock Exchange

6
Technical Overview
7
Client Side
  • Thin-client model
  • All user configuration settings and data are
    saved on server
  • Client serves as GUI interface with essential
    application logic only
  • Core logic runs as services on server
  • Client accessible from anywhere with Internet
    connection
  • Requires J2SE plug-in v1.4.0 or higher

8
Application Windows
  • Client workspace utilizes internal (floating)
    windows to provide data quotes, news, etc.
  • Multiple instances of same window type supported
  • No limit on number of windows except client
    hardware capacity
  • Windows management within workspace
  • Configuration Manager User customizations
    (window size position, tickers, fonts colors,
    etc.)
  • Communication Manager Data exchange and event
    notification between windows
  • User settings and communication rules described
    in XML and saved on server

9
Server Connection
  • Static data HTTP tunneling
  • Dynamic data Single HTTP connection on port 80
  • Dynamic subscription ID passed from server to
    client through serialization
  • Connection kept alive by periodic messages
    (pulses) sent by server
  • Port issues resolved by implementing Apache
    module on server

10
Data Handling
  • No data stored locally on client side at any time
  • Data flushed and reloaded when windows are opened
    or closed
  • For dynamic windows, requested data cached and
    updated dynamically
  • Most static data computed and formatted on server
    side and displayed in client upon request

11
Streaming Real-Time Data
  • Dynamic windows request feed data types (quotes,
    trades, news, etc.) from server
  • Subscription Server
  • Receives all data subscription requests from
    client
  • Registers unique subscriptions only
  • Pushes updates for registered data items to
    client
  • Minimizes bandwidth
  • Feed Manager
  • Distributes data updates to multiple client
    windows
  • Tracks which windows are registered for which
    feed data types and identifiers (ticker symbols)

12
Performance - Issues
  • Problem As a higher-level language, Java tends
    to consume more memory and CPU resources
    particularly in dynamic applications where
    significant screen updating (repainting) is
    required
  • Challenge Make SectorEngine perform as well as
    traditional fat-client applications

13
Performance - Solutions
  • Sector Data
  • Feed Manager critical for
  • Handling real-time streaming data distribution
  • Optimizing performance of client
  • Performance gain approximately 20
  • Sun
  • Improvements made in version 1.4 of plug-in
  • Better garbage collection
  • Better virtual machine
  • Lighter Swing library J Table, Paint Manager
  • Performance gain approximately 15

14
Plug-in Issues - Availability
  • Vast majority of potential users do not have Java
    plug-in installed
  • Larger financial institutions firewalls block
    download
  • IT staff involvement is usually required to
    install

15
Plug-in Issues - Updates
  • Process for updating plug-in is cumbersome
  • Requires manual un-install of previous version
  • Will be addressed in v1.4.2
  • Inter-operability problems arise between
    versions
  • Customers may have applications running on
    previous versions that will not run on v1.4
  • Known issue

16
QA
  • Thank you!
  • Steve Shum
  • Executive Vice President
  • Sector Data, LLC
  • sshum_at_sectordata.com
  • 415-782-0454 x151

Sector Data, LLC, is not affiliated with Sector,
Inc., or SIAC
Write a Comment
User Comments (0)
About PowerShow.com