Wednesday, December 1, 2010

FIX Expert Express Training Course

Basic Topics
Day 1 (10 hours)


  1. FIX message syntax
    1. FIX
      1. Read about syntax of FIX 4.4 (self education)
      2. message structure
        1. tags
        2. field names
        3. delimiter
      3. header
        1. body length
        2. message type
      4. trailer
        1. check sum
      5. repeating groups
        1. leading tag
        2. start tag
        3. nested repeating groups
      6. encryption
      7. user defined tags
      8. protocol customization
      9. message validation
        1. Garbled message
        2. Invalid message
      10. Learn how to construct FIX message manually
      11. Test (6 tasks for 2 hours)
        1. be able to construct FIX message on demand
        2. be able to identify error in FIX message
    2. FIXML
      1. Read about FIXML syntax 4.4.
      2. Learn how to convert between FIX and FIXML
      3. Embed FIXML into FIX XML message
      4. Test (2 tasks for 2 hours)
        1. be able to convert FIX to FIXML
        2. be able to convert FIXML to FIX
Day 2 (10 hours)
  1. FIX session level
    1. 4.x
      1. Session level messages
      2. Heart beating
      3. Logon procedure (initiator, acceptor)
      4. Logout procedure (graceful and non-graceful)
      5. Intraday logout tolerance
      6. Sequence number too low
      7. Sequence number too high (gap fill, resend request)
      8. Sequence number reset
      9. Session level reject
      10. How to process garbled and invalid messages
      11. Third party routing
    2. 5.x (FIXT)
      1. Separate session level (FIXT 1.1)
      2. Sending 4.x over FIXT 1.1
    3. Test (oral examination, about 10 questions, 2 hour)
      1. Be able to identify expected FIX session behavior in various cases
      2. Be able to explain one of the standard FIX session behaviors
      3. Be able to identify error in defined scenario
Day 3 (10 hours)
  1. FIX application level basic level. Part 1
    1. Trade
      1. Orders (New Order Single)
        1. OrderID, ClOrdID
        2. Order types
        3. Side
        4. Time in force
        5. Asset class
        6. Symbol and SecutiryID + SecurityType
        7. Destination
      2. Execution Report
        1. ClOrdID, OrderID, ExecID
        2. OrdStatus
        3. Exec Type
        4. LastQty, LastPx, CumQty, AvgPx, LastMkt
      3. Replace
        1. ClOrdID, OrigClOrdID
      4. Cancel
        1. ClOrdID, OrigClOrdID
      5. Order Flow
        1. Filling cycle
        2. Replacing cycle
        3. Cancelling cycle
      6. Test (oral examination, about 10 questions, 2 hour)
Day 4 (10 hours)
  1. FIX application level basic level. Part 2
    1. Pre-trade
      1. IOI
      2. Negotiation
      3. Advertisement
    2. Post-trade
      1. Trade Capture
      2. Allocation
    3. Market Data
    4. Quotes
      1. Tradable
      2. Indicative
    5. Market Data snapshot
      1. Market Data Incremental updates
    6. Security Definitions
Topics related to testing
Day 5 (10 hours)
  1.  Approach to testing
    1. How to write test cases
      1. Test cases for initiators and acceptors
      2. Test cases for messages syntax
      3. Test cases for session level
      4. Test cases for connection/reconnection
      5. Test cases for protocol customization
      6. Test (oral exam, about 10 tasks for 2 hours)
        1. Be able to write test cases (functional, negative, load, etc.) for proposed scenario
    2. How to use STAFF
      1. Read documentation for the tool
      2. Existent FIX specific STAFF ant tasks
      3. Learn how to write new test case using STAFF
      4. Test (1 task, 1 hour)
        1. Be able to automate proposed scenario
Topics related to implementation
Day 6 (10 hours)
  1. How to implement FIX 
    1. FIX engine internals – basics 
      1. Sockets
      2. Thread model
      3. Session level state machine
      4. Persistence
      5. Popular pit-fault
      6. Performance
      7. Logging
    2. FIX engine usage
      1. Call-backs
      2. Trading applications
      3. Events
    3. Test (1 task, 8 hours)
      1. Be able to write simple FIX utility
This course was designed approximately a year ago and tried internally. Tests for each topic are performed next day in the morning. Any comments and suggestions are appreciated.


No comments:

Post a Comment