====== SECURITY DEFINITION REQUEST [35=c] ======
The Security Definition Request message queries available trading instruments.
===== Prerequisites =====
* Enable via Logon with RefMsgType=c (Tag 372)
* Requests without enablement rejected with SecurityResponseType=5
===== Request Types =====
^ SecurityRequestType (321) ^ Description ^
| 3 | Active markets |
| 4 | Expired markets only |
===== Query Patterns =====
1. **List Exchanges:** SecurityType only
2. **List Contracts:** SecurityType + SecurityExchange
3. **List Markets:** SecurityType + SecurityExchange + Symbol
4. **Specific Market:** Add SecurityID to above
5. **Expired Markets:** Use SecurityRequestType=4
===== Message Specification =====
**Message Direction:** Client → T4
^ Tag ^ Field Name ^ Type ^ Req'd ^ Description ^
| | **Message Header** | | Y | MsgType = c |
| 320 | SecurityReqID | String | Y | Unique request ID |
| 321 | SecurityRequestType | Int | Y | 3=Active, 4=Expired |
| 167 | SecurityType | String | O | FUT, OPT, STK, SYN, BIN |
| 207 | SecurityExchange | String | O | T4 Exchange ID |
| 55 | Symbol | String | O | T4 Contract ID |
| 48 | SecurityID | String | O | T4 Market ID |
| 201 | PutOrCall | Int | O | 0=Put, 1=Call |
| 200 | MaturityMonthYear | String | O | Format: YYYYMM |
| 762 | SecuritySubType | String | O | Strategy type (see table) |
| | **Message Trailer** | | Y | |
===== SecuritySubType Values =====
^ Code ^ Type ^
| 0 | Outrights |
| 1 | Calendar Spread |
| 3 | Inter-Contract Spread |
| 4 | Butterfly |
| 5 | Condor |
| 14 | Straddle |
| 15 | Strangle |
| 19 | Vertical Spread |
===== Sample Messages =====
**List All Exchanges:**
8=FIX.4.2|9=100|35=c|49=T4Example|56=T4|52=20121015-21:22:27.673|
320=sc-10/15/2012 4:22:27 PM|321=3|167=FUT|10=123|
**List Exchange Contracts:**
8=FIX.4.2|9=120|35=c|49=T4Example|56=T4|52=20121015-21:22:39.638|
320=sc-10/15/2012 4:22:39 PM|321=3|167=FUT|207=CME_Eq|10=123|
**List Contract Markets:**
8=FIX.4.2|9=140|35=c|49=T4Example|56=T4|52=20121015-21:23:22.117|
320=sc-10/15/2012 4:23:22 PM|321=3|55=ES|167=OPT|201=1|207=CME_EqOp|10=123|
**Specific Market:**
8=FIX.4.2|9=160|35=c|49=T4Example|56=T4|52=20121015-21:40:18.421|
320=sc-10/15/2012 4:40:18 PM|321=3|55=ES|167=FUT|207=CME_Eq|
48=CME_20121200_ESZ2|10=123|
===== Notes =====
* Process responses before next request (no batching)
* Cache definitions to avoid repeated requests
* Match discovery to contract cycles (e.g., quarterly)