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