quickfix_ruby 1.14.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (149) hide show
  1. checksums.yaml +7 -0
  2. data/ext/quickfix/Acceptor.cpp +248 -0
  3. data/ext/quickfix/Acceptor.h +127 -0
  4. data/ext/quickfix/Allocator.h +9 -0
  5. data/ext/quickfix/Application.h +127 -0
  6. data/ext/quickfix/AtomicCount.h +109 -0
  7. data/ext/quickfix/DOMDocument.h +74 -0
  8. data/ext/quickfix/DataDictionary.cpp +618 -0
  9. data/ext/quickfix/DataDictionary.h +539 -0
  10. data/ext/quickfix/DataDictionaryProvider.cpp +71 -0
  11. data/ext/quickfix/DataDictionaryProvider.h +70 -0
  12. data/ext/quickfix/DatabaseConnectionID.h +105 -0
  13. data/ext/quickfix/DatabaseConnectionPool.h +91 -0
  14. data/ext/quickfix/Dictionary.cpp +162 -0
  15. data/ext/quickfix/Dictionary.h +94 -0
  16. data/ext/quickfix/Event.h +95 -0
  17. data/ext/quickfix/Exceptions.h +299 -0
  18. data/ext/quickfix/Field.h +672 -0
  19. data/ext/quickfix/FieldConvertors.h +863 -0
  20. data/ext/quickfix/FieldMap.cpp +238 -0
  21. data/ext/quickfix/FieldMap.h +244 -0
  22. data/ext/quickfix/FieldNumbers.h +46 -0
  23. data/ext/quickfix/FieldTypes.cpp +64 -0
  24. data/ext/quickfix/FieldTypes.h +698 -0
  25. data/ext/quickfix/Fields.h +31 -0
  26. data/ext/quickfix/FileLog.cpp +200 -0
  27. data/ext/quickfix/FileLog.h +112 -0
  28. data/ext/quickfix/FileStore.cpp +332 -0
  29. data/ext/quickfix/FileStore.h +129 -0
  30. data/ext/quickfix/FixFieldNumbers.h +1537 -0
  31. data/ext/quickfix/FixFields.h +1538 -0
  32. data/ext/quickfix/FixValues.h +3281 -0
  33. data/ext/quickfix/FlexLexer.h +188 -0
  34. data/ext/quickfix/Group.cpp +64 -0
  35. data/ext/quickfix/Group.h +73 -0
  36. data/ext/quickfix/HtmlBuilder.h +186 -0
  37. data/ext/quickfix/HttpConnection.cpp +739 -0
  38. data/ext/quickfix/HttpConnection.h +78 -0
  39. data/ext/quickfix/HttpMessage.cpp +149 -0
  40. data/ext/quickfix/HttpMessage.h +133 -0
  41. data/ext/quickfix/HttpParser.cpp +49 -0
  42. data/ext/quickfix/HttpParser.h +54 -0
  43. data/ext/quickfix/HttpServer.cpp +169 -0
  44. data/ext/quickfix/HttpServer.h +78 -0
  45. data/ext/quickfix/Initiator.cpp +289 -0
  46. data/ext/quickfix/Initiator.h +149 -0
  47. data/ext/quickfix/Log.cpp +77 -0
  48. data/ext/quickfix/Log.h +179 -0
  49. data/ext/quickfix/Message.cpp +580 -0
  50. data/ext/quickfix/Message.h +370 -0
  51. data/ext/quickfix/MessageCracker.h +188 -0
  52. data/ext/quickfix/MessageSorters.cpp +105 -0
  53. data/ext/quickfix/MessageSorters.h +156 -0
  54. data/ext/quickfix/MessageStore.cpp +146 -0
  55. data/ext/quickfix/MessageStore.h +174 -0
  56. data/ext/quickfix/Mutex.h +131 -0
  57. data/ext/quickfix/MySQLConnection.h +194 -0
  58. data/ext/quickfix/MySQLLog.cpp +275 -0
  59. data/ext/quickfix/MySQLLog.h +145 -0
  60. data/ext/quickfix/MySQLStore.cpp +331 -0
  61. data/ext/quickfix/MySQLStore.h +142 -0
  62. data/ext/quickfix/NullStore.cpp +54 -0
  63. data/ext/quickfix/NullStore.h +99 -0
  64. data/ext/quickfix/OdbcConnection.h +266 -0
  65. data/ext/quickfix/OdbcLog.cpp +252 -0
  66. data/ext/quickfix/OdbcLog.h +117 -0
  67. data/ext/quickfix/OdbcStore.cpp +338 -0
  68. data/ext/quickfix/OdbcStore.h +113 -0
  69. data/ext/quickfix/PUGIXML_DOMDocument.cpp +112 -0
  70. data/ext/quickfix/PUGIXML_DOMDocument.h +81 -0
  71. data/ext/quickfix/Parser.cpp +103 -0
  72. data/ext/quickfix/Parser.h +57 -0
  73. data/ext/quickfix/PostgreSQLConnection.h +176 -0
  74. data/ext/quickfix/PostgreSQLLog.cpp +276 -0
  75. data/ext/quickfix/PostgreSQLLog.h +144 -0
  76. data/ext/quickfix/PostgreSQLStore.cpp +334 -0
  77. data/ext/quickfix/PostgreSQLStore.h +141 -0
  78. data/ext/quickfix/Queue.h +75 -0
  79. data/ext/quickfix/QuickfixRuby.cpp +252066 -0
  80. data/ext/quickfix/QuickfixRuby.h +34 -0
  81. data/ext/quickfix/Responder.h +43 -0
  82. data/ext/quickfix/Session.cpp +1487 -0
  83. data/ext/quickfix/Session.h +335 -0
  84. data/ext/quickfix/SessionFactory.cpp +274 -0
  85. data/ext/quickfix/SessionFactory.h +86 -0
  86. data/ext/quickfix/SessionID.h +170 -0
  87. data/ext/quickfix/SessionSettings.cpp +189 -0
  88. data/ext/quickfix/SessionSettings.h +171 -0
  89. data/ext/quickfix/SessionState.h +231 -0
  90. data/ext/quickfix/Settings.cpp +100 -0
  91. data/ext/quickfix/Settings.h +53 -0
  92. data/ext/quickfix/SharedArray.h +150 -0
  93. data/ext/quickfix/SocketAcceptor.cpp +222 -0
  94. data/ext/quickfix/SocketAcceptor.h +75 -0
  95. data/ext/quickfix/SocketConnection.cpp +238 -0
  96. data/ext/quickfix/SocketConnection.h +103 -0
  97. data/ext/quickfix/SocketConnector.cpp +116 -0
  98. data/ext/quickfix/SocketConnector.h +67 -0
  99. data/ext/quickfix/SocketInitiator.cpp +260 -0
  100. data/ext/quickfix/SocketInitiator.h +81 -0
  101. data/ext/quickfix/SocketMonitor.cpp +335 -0
  102. data/ext/quickfix/SocketMonitor.h +111 -0
  103. data/ext/quickfix/SocketServer.cpp +177 -0
  104. data/ext/quickfix/SocketServer.h +100 -0
  105. data/ext/quickfix/ThreadedSocketAcceptor.cpp +258 -0
  106. data/ext/quickfix/ThreadedSocketAcceptor.h +98 -0
  107. data/ext/quickfix/ThreadedSocketConnection.cpp +209 -0
  108. data/ext/quickfix/ThreadedSocketConnection.h +82 -0
  109. data/ext/quickfix/ThreadedSocketInitiator.cpp +268 -0
  110. data/ext/quickfix/ThreadedSocketInitiator.h +84 -0
  111. data/ext/quickfix/TimeRange.cpp +173 -0
  112. data/ext/quickfix/TimeRange.h +258 -0
  113. data/ext/quickfix/Utility.cpp +537 -0
  114. data/ext/quickfix/Utility.h +219 -0
  115. data/ext/quickfix/Values.h +62 -0
  116. data/ext/quickfix/config.h +0 -0
  117. data/ext/quickfix/config_windows.h +0 -0
  118. data/ext/quickfix/extconf.rb +12 -0
  119. data/ext/quickfix/index.h +37 -0
  120. data/ext/quickfix/pugiconfig.hpp +72 -0
  121. data/ext/quickfix/pugixml.cpp +10765 -0
  122. data/ext/quickfix/pugixml.hpp +1341 -0
  123. data/ext/quickfix/strptime.h +7 -0
  124. data/lib/quickfix40.rb +274 -0
  125. data/lib/quickfix41.rb +351 -0
  126. data/lib/quickfix42.rb +1184 -0
  127. data/lib/quickfix43.rb +3504 -0
  128. data/lib/quickfix44.rb +10721 -0
  129. data/lib/quickfix50.rb +13426 -0
  130. data/lib/quickfix50sp1.rb +15629 -0
  131. data/lib/quickfix50sp2.rb +17068 -0
  132. data/lib/quickfix_fields.rb +19853 -0
  133. data/lib/quickfix_ruby.rb +82 -0
  134. data/lib/quickfixt11.rb +70 -0
  135. data/spec/FIX40.xml +862 -0
  136. data/spec/FIX41.xml +1285 -0
  137. data/spec/FIX42.xml +2746 -0
  138. data/spec/FIX43.xml +4229 -0
  139. data/spec/FIX44.xml +6596 -0
  140. data/spec/FIX50.xml +8137 -0
  141. data/spec/FIX50SP1.xml +9496 -0
  142. data/spec/FIX50SP2.xml +10011 -0
  143. data/spec/FIXT11.xml +313 -0
  144. data/test/test_DataDictionaryTestCase.rb +268 -0
  145. data/test/test_DictionaryTestCase.rb +112 -0
  146. data/test/test_FieldBaseTestCase.rb +24 -0
  147. data/test/test_MessageTestCase.rb +368 -0
  148. data/test/test_SessionSettingsTestCase.rb +41 -0
  149. metadata +193 -0
data/spec/FIX40.xml ADDED
@@ -0,0 +1,862 @@
1
+ <fix major='4' type='FIX' servicepack='0' minor='0'>
2
+ <header>
3
+ <field name='BeginString' required='Y' />
4
+ <field name='BodyLength' required='Y' />
5
+ <field name='MsgType' required='Y' />
6
+ <field name='SenderCompID' required='Y' />
7
+ <field name='TargetCompID' required='Y' />
8
+ <field name='OnBehalfOfCompID' required='N' />
9
+ <field name='DeliverToCompID' required='N' />
10
+ <field name='SecureDataLen' required='N' />
11
+ <field name='SecureData' required='N' />
12
+ <field name='MsgSeqNum' required='Y' />
13
+ <field name='SenderSubID' required='N' />
14
+ <field name='TargetSubID' required='N' />
15
+ <field name='OnBehalfOfSubID' required='N' />
16
+ <field name='DeliverToSubID' required='N' />
17
+ <field name='PossDupFlag' required='N' />
18
+ <field name='PossResend' required='N' />
19
+ <field name='SendingTime' required='Y' />
20
+ <field name='OrigSendingTime' required='N' />
21
+ </header>
22
+ <messages>
23
+ <message name='Heartbeat' msgcat='admin' msgtype='0'>
24
+ <field name='TestReqID' required='N' />
25
+ </message>
26
+ <message name='TestRequest' msgcat='admin' msgtype='1'>
27
+ <field name='TestReqID' required='Y' />
28
+ </message>
29
+ <message name='ResendRequest' msgcat='admin' msgtype='2'>
30
+ <field name='BeginSeqNo' required='Y' />
31
+ <field name='EndSeqNo' required='Y' />
32
+ </message>
33
+ <message name='Reject' msgcat='admin' msgtype='3'>
34
+ <field name='RefSeqNum' required='Y' />
35
+ <field name='Text' required='N' />
36
+ </message>
37
+ <message name='SequenceReset' msgcat='admin' msgtype='4'>
38
+ <field name='GapFillFlag' required='N' />
39
+ <field name='NewSeqNo' required='Y' />
40
+ </message>
41
+ <message name='Logout' msgcat='admin' msgtype='5'>
42
+ <field name='Text' required='N' />
43
+ </message>
44
+ <message name='IOI' msgcat='app' msgtype='6'>
45
+ <field name='IOIid' required='Y' />
46
+ <field name='IOITransType' required='Y' />
47
+ <field name='IOIRefID' required='N' />
48
+ <field name='Symbol' required='Y' />
49
+ <field name='SymbolSfx' required='N' />
50
+ <field name='SecurityID' required='N' />
51
+ <field name='IDSource' required='N' />
52
+ <field name='Issuer' required='N' />
53
+ <field name='SecurityDesc' required='N' />
54
+ <field name='Side' required='Y' />
55
+ <field name='IOIShares' required='Y' />
56
+ <field name='Price' required='N' />
57
+ <field name='Currency' required='N' />
58
+ <field name='ValidUntilTime' required='N' />
59
+ <field name='IOIQltyInd' required='N' />
60
+ <field name='IOIOthSvc' required='N' />
61
+ <field name='IOINaturalFlag' required='N' />
62
+ <field name='IOIQualifier' required='N' />
63
+ <field name='Text' required='N' />
64
+ </message>
65
+ <message name='Advertisement' msgcat='app' msgtype='7'>
66
+ <field name='AdvId' required='Y' />
67
+ <field name='AdvTransType' required='Y' />
68
+ <field name='AdvRefID' required='N' />
69
+ <field name='Symbol' required='Y' />
70
+ <field name='SymbolSfx' required='N' />
71
+ <field name='SecurityID' required='N' />
72
+ <field name='IDSource' required='N' />
73
+ <field name='Issuer' required='N' />
74
+ <field name='SecurityDesc' required='N' />
75
+ <field name='AdvSide' required='Y' />
76
+ <field name='Shares' required='Y' />
77
+ <field name='Price' required='N' />
78
+ <field name='Currency' required='N' />
79
+ <field name='TransactTime' required='N' />
80
+ <field name='Text' required='N' />
81
+ </message>
82
+ <message name='ExecutionReport' msgcat='app' msgtype='8'>
83
+ <field name='OrderID' required='Y' />
84
+ <field name='ClOrdID' required='N' />
85
+ <field name='ClientID' required='N' />
86
+ <field name='ExecBroker' required='N' />
87
+ <field name='ListID' required='N' />
88
+ <field name='ExecID' required='Y' />
89
+ <field name='ExecTransType' required='Y' />
90
+ <field name='ExecRefID' required='N' />
91
+ <field name='OrdStatus' required='Y' />
92
+ <field name='OrdRejReason' required='N' />
93
+ <field name='Account' required='N' />
94
+ <field name='SettlmntTyp' required='N' />
95
+ <field name='FutSettDate' required='N' />
96
+ <field name='Symbol' required='Y' />
97
+ <field name='SymbolSfx' required='N' />
98
+ <field name='SecurityID' required='N' />
99
+ <field name='IDSource' required='N' />
100
+ <field name='Issuer' required='N' />
101
+ <field name='SecurityDesc' required='N' />
102
+ <field name='Side' required='Y' />
103
+ <field name='OrderQty' required='Y' />
104
+ <field name='OrdType' required='N' />
105
+ <field name='Price' required='N' />
106
+ <field name='StopPx' required='N' />
107
+ <field name='Currency' required='N' />
108
+ <field name='TimeInForce' required='N' />
109
+ <field name='ExpireTime' required='N' />
110
+ <field name='ExecInst' required='N' />
111
+ <field name='Rule80A' required='N' />
112
+ <field name='LastShares' required='Y' />
113
+ <field name='LastPx' required='Y' />
114
+ <field name='LastMkt' required='N' />
115
+ <field name='LastCapacity' required='N' />
116
+ <field name='CumQty' required='Y' />
117
+ <field name='AvgPx' required='Y' />
118
+ <field name='TradeDate' required='N' />
119
+ <field name='TransactTime' required='N' />
120
+ <field name='ReportToExch' required='N' />
121
+ <field name='Commission' required='N' />
122
+ <field name='CommType' required='N' />
123
+ <group name='NoMiscFees' required='N'>
124
+ <field name='MiscFeeAmt' required='N' />
125
+ <field name='MiscFeeCurr' required='N' />
126
+ <field name='MiscFeeType' required='N' />
127
+ </group>
128
+ <field name='NetMoney' required='N' />
129
+ <field name='SettlCurrAmt' required='N' />
130
+ <field name='SettlCurrency' required='N' />
131
+ <field name='Text' required='N' />
132
+ </message>
133
+ <message name='OrderCancelReject' msgcat='app' msgtype='9'>
134
+ <field name='OrderID' required='Y' />
135
+ <field name='ClOrdID' required='Y' />
136
+ <field name='ClientID' required='N' />
137
+ <field name='ExecBroker' required='N' />
138
+ <field name='ListID' required='N' />
139
+ <field name='CxlRejReason' required='N' />
140
+ <field name='Text' required='N' />
141
+ </message>
142
+ <message name='Logon' msgcat='admin' msgtype='A'>
143
+ <field name='EncryptMethod' required='Y' />
144
+ <field name='HeartBtInt' required='Y' />
145
+ <field name='RawDataLength' required='N' />
146
+ <field name='RawData' required='N' />
147
+ </message>
148
+ <message name='News' msgcat='app' msgtype='B'>
149
+ <field name='OrigTime' required='N' />
150
+ <field name='Urgency' required='N' />
151
+ <field name='RelatdSym' required='N' />
152
+ <field name='LinesOfText' required='Y' />
153
+ <field name='Text' required='Y' />
154
+ <field name='RawDataLength' required='N' />
155
+ <field name='RawData' required='N' />
156
+ </message>
157
+ <message name='Email' msgcat='app' msgtype='C'>
158
+ <field name='EmailType' required='Y' />
159
+ <field name='OrigTime' required='N' />
160
+ <field name='RelatdSym' required='N' />
161
+ <field name='OrderID' required='N' />
162
+ <field name='ClOrdID' required='N' />
163
+ <field name='LinesOfText' required='Y' />
164
+ <field name='Text' required='Y' />
165
+ <field name='RawDataLength' required='N' />
166
+ <field name='RawData' required='N' />
167
+ </message>
168
+ <message name='NewOrderSingle' msgcat='app' msgtype='D'>
169
+ <field name='ClOrdID' required='Y' />
170
+ <field name='ClientID' required='N' />
171
+ <field name='ExecBroker' required='N' />
172
+ <field name='Account' required='N' />
173
+ <field name='SettlmntTyp' required='N' />
174
+ <field name='FutSettDate' required='N' />
175
+ <field name='HandlInst' required='Y' />
176
+ <field name='ExecInst' required='N' />
177
+ <field name='MinQty' required='N' />
178
+ <field name='MaxFloor' required='N' />
179
+ <field name='ExDestination' required='N' />
180
+ <field name='ProcessCode' required='N' />
181
+ <field name='Symbol' required='Y' />
182
+ <field name='SymbolSfx' required='N' />
183
+ <field name='SecurityID' required='N' />
184
+ <field name='IDSource' required='N' />
185
+ <field name='Issuer' required='N' />
186
+ <field name='SecurityDesc' required='N' />
187
+ <field name='PrevClosePx' required='N' />
188
+ <field name='Side' required='Y' />
189
+ <field name='LocateReqd' required='N' />
190
+ <field name='OrderQty' required='Y' />
191
+ <field name='OrdType' required='Y' />
192
+ <field name='Price' required='N' />
193
+ <field name='StopPx' required='N' />
194
+ <field name='Currency' required='N' />
195
+ <field name='IOIid' required='N' />
196
+ <field name='QuoteID' required='N' />
197
+ <field name='TimeInForce' required='N' />
198
+ <field name='ExpireTime' required='N' />
199
+ <field name='Commission' required='N' />
200
+ <field name='CommType' required='N' />
201
+ <field name='Rule80A' required='N' />
202
+ <field name='ForexReq' required='N' />
203
+ <field name='SettlCurrency' required='N' />
204
+ <field name='Text' required='N' />
205
+ </message>
206
+ <message name='NewOrderList' msgcat='app' msgtype='E'>
207
+ <field name='ListID' required='Y' />
208
+ <field name='WaveNo' required='N' />
209
+ <field name='ListSeqNo' required='Y' />
210
+ <field name='ListNoOrds' required='Y' />
211
+ <field name='ListExecInst' required='N' />
212
+ <field name='ClOrdID' required='Y' />
213
+ <field name='ClientID' required='N' />
214
+ <field name='ExecBroker' required='N' />
215
+ <field name='Account' required='N' />
216
+ <field name='SettlmntTyp' required='N' />
217
+ <field name='FutSettDate' required='N' />
218
+ <field name='HandlInst' required='Y' />
219
+ <field name='ExecInst' required='N' />
220
+ <field name='MinQty' required='N' />
221
+ <field name='MaxFloor' required='N' />
222
+ <field name='ExDestination' required='N' />
223
+ <field name='ProcessCode' required='N' />
224
+ <field name='Symbol' required='Y' />
225
+ <field name='SymbolSfx' required='N' />
226
+ <field name='SecurityID' required='N' />
227
+ <field name='IDSource' required='N' />
228
+ <field name='Issuer' required='N' />
229
+ <field name='SecurityDesc' required='N' />
230
+ <field name='PrevClosePx' required='N' />
231
+ <field name='Side' required='Y' />
232
+ <field name='LocateReqd' required='N' />
233
+ <field name='OrderQty' required='Y' />
234
+ <field name='OrdType' required='Y' />
235
+ <field name='Price' required='N' />
236
+ <field name='StopPx' required='N' />
237
+ <field name='Currency' required='N' />
238
+ <field name='TimeInForce' required='N' />
239
+ <field name='ExpireTime' required='N' />
240
+ <field name='Commission' required='N' />
241
+ <field name='CommType' required='N' />
242
+ <field name='Rule80A' required='N' />
243
+ <field name='ForexReq' required='N' />
244
+ <field name='SettlCurrency' required='N' />
245
+ <field name='Text' required='N' />
246
+ </message>
247
+ <message name='OrderCancelRequest' msgcat='app' msgtype='F'>
248
+ <field name='OrigClOrdID' required='Y' />
249
+ <field name='OrderID' required='N' />
250
+ <field name='ClOrdID' required='Y' />
251
+ <field name='ListID' required='N' />
252
+ <field name='CxlType' required='Y' />
253
+ <field name='ClientID' required='N' />
254
+ <field name='ExecBroker' required='N' />
255
+ <field name='Symbol' required='Y' />
256
+ <field name='SymbolSfx' required='N' />
257
+ <field name='SecurityID' required='N' />
258
+ <field name='IDSource' required='N' />
259
+ <field name='Issuer' required='N' />
260
+ <field name='SecurityDesc' required='N' />
261
+ <field name='Side' required='Y' />
262
+ <field name='OrderQty' required='Y' />
263
+ <field name='Text' required='N' />
264
+ </message>
265
+ <message name='OrderCancelReplaceRequest' msgcat='app' msgtype='G'>
266
+ <field name='OrderID' required='N' />
267
+ <field name='ClientID' required='N' />
268
+ <field name='ExecBroker' required='N' />
269
+ <field name='OrigClOrdID' required='Y' />
270
+ <field name='ClOrdID' required='Y' />
271
+ <field name='ListID' required='N' />
272
+ <field name='Account' required='N' />
273
+ <field name='SettlmntTyp' required='N' />
274
+ <field name='FutSettDate' required='N' />
275
+ <field name='HandlInst' required='Y' />
276
+ <field name='ExecInst' required='N' />
277
+ <field name='MinQty' required='N' />
278
+ <field name='MaxFloor' required='N' />
279
+ <field name='ExDestination' required='N' />
280
+ <field name='Symbol' required='Y' />
281
+ <field name='SymbolSfx' required='N' />
282
+ <field name='SecurityID' required='N' />
283
+ <field name='IDSource' required='N' />
284
+ <field name='Issuer' required='N' />
285
+ <field name='SecurityDesc' required='N' />
286
+ <field name='Side' required='Y' />
287
+ <field name='OrderQty' required='Y' />
288
+ <field name='OrdType' required='Y' />
289
+ <field name='Price' required='N' />
290
+ <field name='StopPx' required='N' />
291
+ <field name='Currency' required='N' />
292
+ <field name='TimeInForce' required='N' />
293
+ <field name='ExpireTime' required='N' />
294
+ <field name='Commission' required='N' />
295
+ <field name='CommType' required='N' />
296
+ <field name='Rule80A' required='N' />
297
+ <field name='ForexReq' required='N' />
298
+ <field name='SettlCurrency' required='N' />
299
+ <field name='Text' required='N' />
300
+ </message>
301
+ <message name='OrderStatusRequest' msgcat='app' msgtype='H'>
302
+ <field name='OrderID' required='N' />
303
+ <field name='ClOrdID' required='Y' />
304
+ <field name='ClientID' required='N' />
305
+ <field name='ExecBroker' required='N' />
306
+ <field name='Symbol' required='Y' />
307
+ <field name='SymbolSfx' required='N' />
308
+ <field name='Issuer' required='N' />
309
+ <field name='SecurityDesc' required='N' />
310
+ <field name='Side' required='Y' />
311
+ </message>
312
+ <message name='Allocation' msgcat='app' msgtype='J'>
313
+ <field name='AllocID' required='Y' />
314
+ <field name='AllocTransType' required='Y' />
315
+ <field name='RefAllocID' required='N' />
316
+ <group name='NoOrders' required='Y'>
317
+ <field name='ClOrdID' required='Y' />
318
+ <field name='OrderID' required='N' />
319
+ <field name='ListID' required='N' />
320
+ <field name='WaveNo' required='N' />
321
+ </group>
322
+ <group name='NoExecs' required='N'>
323
+ <field name='ExecID' required='N' />
324
+ <field name='LastShares' required='N' />
325
+ <field name='LastPx' required='N' />
326
+ <field name='LastMkt' required='N' />
327
+ </group>
328
+ <field name='Side' required='Y' />
329
+ <field name='Symbol' required='Y' />
330
+ <field name='SymbolSfx' required='N' />
331
+ <field name='SecurityID' required='N' />
332
+ <field name='IDSource' required='N' />
333
+ <field name='Issuer' required='N' />
334
+ <field name='SecurityDesc' required='N' />
335
+ <field name='Shares' required='Y' />
336
+ <field name='AvgPx' required='Y' />
337
+ <field name='Currency' required='N' />
338
+ <field name='AvgPrxPrecision' required='N' />
339
+ <field name='TradeDate' required='Y' />
340
+ <field name='TransactTime' required='N' />
341
+ <field name='SettlmntTyp' required='N' />
342
+ <field name='FutSettDate' required='N' />
343
+ <field name='NetMoney' required='N' />
344
+ <group name='NoMiscFees' required='N'>
345
+ <field name='MiscFeeAmt' required='N' />
346
+ <field name='MiscFeeCurr' required='N' />
347
+ <field name='MiscFeeType' required='N' />
348
+ </group>
349
+ <field name='SettlCurrAmt' required='N' />
350
+ <field name='SettlCurrency' required='N' />
351
+ <field name='OpenClose' required='N' />
352
+ <field name='Text' required='N' />
353
+ <group name='NoAllocs' required='Y'>
354
+ <field name='AllocAccount' required='Y' />
355
+ <field name='AllocShares' required='Y' />
356
+ <field name='ProcessCode' required='N' />
357
+ <field name='ExecBroker' required='N' />
358
+ <field name='ClientID' required='N' />
359
+ <field name='Commission' required='N' />
360
+ <field name='CommType' required='N' />
361
+ <field name='NoDlvyInst' required='N' />
362
+ <field name='BrokerOfCredit' required='N' />
363
+ <field name='DlvyInst' required='N' />
364
+ </group>
365
+ </message>
366
+ <message name='ListCancelRequest' msgcat='app' msgtype='K'>
367
+ <field name='ListID' required='Y' />
368
+ <field name='WaveNo' required='N' />
369
+ <field name='Text' required='N' />
370
+ </message>
371
+ <message name='ListExecute' msgcat='app' msgtype='L'>
372
+ <field name='ListID' required='Y' />
373
+ <field name='WaveNo' required='N' />
374
+ <field name='Text' required='N' />
375
+ </message>
376
+ <message name='ListStatusRequest' msgcat='app' msgtype='M'>
377
+ <field name='ListID' required='Y' />
378
+ <field name='WaveNo' required='N' />
379
+ <field name='Text' required='N' />
380
+ </message>
381
+ <message name='ListStatus' msgcat='app' msgtype='N'>
382
+ <field name='ListID' required='Y' />
383
+ <field name='WaveNo' required='N' />
384
+ <field name='NoRpts' required='Y' />
385
+ <field name='RptSeq' required='Y' />
386
+ <group name='NoOrders' required='Y'>
387
+ <field name='ClOrdID' required='Y' />
388
+ <field name='CumQty' required='Y' />
389
+ <field name='CxlQty' required='Y' />
390
+ <field name='AvgPx' required='Y' />
391
+ </group>
392
+ </message>
393
+ <message name='AllocationInstructionAck' msgcat='app' msgtype='P'>
394
+ <field name='ClientID' required='N' />
395
+ <field name='ExecBroker' required='N' />
396
+ <field name='AllocID' required='Y' />
397
+ <field name='TradeDate' required='Y' />
398
+ <field name='TransactTime' required='N' />
399
+ <field name='AllocStatus' required='Y' />
400
+ <field name='AllocRejCode' required='N' />
401
+ <field name='Text' required='N' />
402
+ </message>
403
+ <message name='DontKnowTrade' msgcat='app' msgtype='Q'>
404
+ <field name='OrderID' required='N' />
405
+ <field name='ExecID' required='N' />
406
+ <field name='DKReason' required='Y' />
407
+ <field name='Symbol' required='Y' />
408
+ <field name='Side' required='Y' />
409
+ <field name='OrderQty' required='Y' />
410
+ <field name='LastShares' required='Y' />
411
+ <field name='LastPx' required='Y' />
412
+ <field name='Text' required='N' />
413
+ </message>
414
+ <message name='QuoteRequest' msgcat='app' msgtype='R'>
415
+ <field name='QuoteReqID' required='Y' />
416
+ <field name='Symbol' required='Y' />
417
+ <field name='SymbolSfx' required='N' />
418
+ <field name='SecurityID' required='N' />
419
+ <field name='IDSource' required='N' />
420
+ <field name='Issuer' required='N' />
421
+ <field name='SecurityDesc' required='N' />
422
+ <field name='PrevClosePx' required='N' />
423
+ <field name='Side' required='N' />
424
+ <field name='OrderQty' required='N' />
425
+ </message>
426
+ <message name='Quote' msgcat='app' msgtype='S'>
427
+ <field name='QuoteReqID' required='N' />
428
+ <field name='QuoteID' required='Y' />
429
+ <field name='Symbol' required='Y' />
430
+ <field name='SymbolSfx' required='N' />
431
+ <field name='SecurityID' required='N' />
432
+ <field name='IDSource' required='N' />
433
+ <field name='Issuer' required='N' />
434
+ <field name='SecurityDesc' required='N' />
435
+ <field name='BidPx' required='Y' />
436
+ <field name='OfferPx' required='N' />
437
+ <field name='BidSize' required='N' />
438
+ <field name='OfferSize' required='N' />
439
+ <field name='ValidUntilTime' required='N' />
440
+ </message>
441
+ </messages>
442
+ <trailer>
443
+ <field name='SignatureLength' required='N' />
444
+ <field name='Signature' required='N' />
445
+ <field name='CheckSum' required='Y' />
446
+ </trailer>
447
+ <components />
448
+ <fields>
449
+ <field number='1' name='Account' type='CHAR' />
450
+ <field number='2' name='AdvId' type='INT' />
451
+ <field number='3' name='AdvRefID' type='INT' />
452
+ <field number='4' name='AdvSide' type='CHAR'>
453
+ <value enum='B' description='BUY' />
454
+ <value enum='S' description='SELL' />
455
+ <value enum='T' description='TRADE' />
456
+ <value enum='X' description='CROSS' />
457
+ </field>
458
+ <field number='5' name='AdvTransType' type='CHAR'>
459
+ <value enum='C' description='CANCEL' />
460
+ <value enum='N' description='NEW' />
461
+ <value enum='R' description='REPLACE' />
462
+ </field>
463
+ <field number='6' name='AvgPx' type='FLOAT' />
464
+ <field number='7' name='BeginSeqNo' type='INT' />
465
+ <field number='8' name='BeginString' type='CHAR' />
466
+ <field number='9' name='BodyLength' type='INT' />
467
+ <field number='10' name='CheckSum' type='CHAR' />
468
+ <field number='11' name='ClOrdID' type='CHAR' />
469
+ <field number='12' name='Commission' type='FLOAT' />
470
+ <field number='13' name='CommType' type='CHAR'>
471
+ <value enum='1' description='PER_SHARE' />
472
+ <value enum='2' description='PERCENTAGE' />
473
+ <value enum='3' description='ABSOLUTE' />
474
+ </field>
475
+ <field number='14' name='CumQty' type='INT' />
476
+ <field number='15' name='Currency' type='CHAR' />
477
+ <field number='16' name='EndSeqNo' type='INT' />
478
+ <field number='17' name='ExecID' type='INT' />
479
+ <field number='18' name='ExecInst' type='CHAR'>
480
+ <value enum='0' description='STAY_ON_OFFERSIDE' />
481
+ <value enum='1' description='NOT_HELD' />
482
+ <value enum='2' description='WORK' />
483
+ <value enum='3' description='GO_ALONG' />
484
+ <value enum='4' description='OVER_THE_DAY' />
485
+ <value enum='5' description='HELD' />
486
+ <value enum='6' description='PARTICIPATE_DONT_INITIATE' />
487
+ <value enum='7' description='STRICT_SCALE' />
488
+ <value enum='8' description='TRY_TO_SCALE' />
489
+ <value enum='9' description='STAY_ON_BIDSIDE' />
490
+ <value enum='A' description='NO_CROSS' />
491
+ <value enum='B' description='OK_TO_CROSS' />
492
+ <value enum='C' description='CALL_FIRST' />
493
+ <value enum='D' description='PERCENT_OF_VOLUME' />
494
+ <value enum='E' description='DO_NOT_INCREASE' />
495
+ <value enum='F' description='DO_NOT_REDUCE' />
496
+ <value enum='G' description='ALL_OR_NONE' />
497
+ <value enum='I' description='INSTITUTIONS_ONLY' />
498
+ <value enum='L' description='LAST_PEG' />
499
+ <value enum='M' description='MID_PRICE_PEG' />
500
+ <value enum='N' description='NON_NEGOTIABLE' />
501
+ <value enum='O' description='OPENING_PEG' />
502
+ <value enum='P' description='MARKET_PEG' />
503
+ <value enum='R' description='PRIMARY_PEG' />
504
+ <value enum='S' description='SUSPEND' />
505
+ </field>
506
+ <field number='19' name='ExecRefID' type='INT' />
507
+ <field number='20' name='ExecTransType' type='CHAR'>
508
+ <value enum='0' description='NEW' />
509
+ <value enum='1' description='CANCEL' />
510
+ <value enum='2' description='CORRECT' />
511
+ <value enum='3' description='STATUS' />
512
+ </field>
513
+ <field number='21' name='HandlInst' type='CHAR'>
514
+ <value enum='1' description='AUTOMATED_EXECUTION_ORDER_PRIVATE_NO_BROKER_INTERVENTION' />
515
+ <value enum='2' description='AUTOMATED_EXECUTION_ORDER_PUBLIC_BROKER_INTERVENTION_OK' />
516
+ <value enum='3' description='MANUAL_ORDER_BEST_EXECUTION' />
517
+ </field>
518
+ <field number='22' name='IDSource' type='CHAR'>
519
+ <value enum='1' description='CUSIP' />
520
+ <value enum='2' description='SEDOL' />
521
+ <value enum='3' description='QUIK' />
522
+ <value enum='4' description='ISIN_NUMBER' />
523
+ <value enum='5' description='RIC_CODE' />
524
+ </field>
525
+ <field number='23' name='IOIid' type='INT' />
526
+ <field number='24' name='IOIOthSvc' type='CHAR'>
527
+ <value enum='A' description='AUTEX' />
528
+ <value enum='B' description='BRIDGE' />
529
+ </field>
530
+ <field number='25' name='IOIQltyInd' type='CHAR'>
531
+ <value enum='H' description='HIGH' />
532
+ <value enum='L' description='LOW' />
533
+ <value enum='M' description='MEDIUM' />
534
+ </field>
535
+ <field number='26' name='IOIRefID' type='INT' />
536
+ <field number='27' name='IOIShares' type='CHAR'>
537
+ <value enum='L' description='LARGE' />
538
+ <value enum='M' description='MEDIUM' />
539
+ <value enum='S' description='SMALL' />
540
+ </field>
541
+ <field number='28' name='IOITransType' type='CHAR'>
542
+ <value enum='C' description='CANCEL' />
543
+ <value enum='N' description='NEW' />
544
+ <value enum='R' description='REPLACE' />
545
+ </field>
546
+ <field number='29' name='LastCapacity' type='CHAR'>
547
+ <value enum='1' description='AGENT' />
548
+ <value enum='2' description='CROSS_AS_AGENT' />
549
+ <value enum='3' description='CROSS_AS_PRINCIPAL' />
550
+ <value enum='4' description='PRINCIPAL' />
551
+ </field>
552
+ <field number='30' name='LastMkt' type='CHAR' />
553
+ <field number='31' name='LastPx' type='FLOAT' />
554
+ <field number='32' name='LastShares' type='INT' />
555
+ <field number='33' name='LinesOfText' type='INT' />
556
+ <field number='34' name='MsgSeqNum' type='INT' />
557
+ <field number='35' name='MsgType' type='CHAR'>
558
+ <value enum='0' description='HEARTBEAT' />
559
+ <value enum='1' description='TEST_REQUEST' />
560
+ <value enum='2' description='RESEND_REQUEST' />
561
+ <value enum='3' description='REJECT' />
562
+ <value enum='4' description='SEQUENCE_RESET' />
563
+ <value enum='5' description='LOGOUT' />
564
+ <value enum='6' description='INDICATION_OF_INTEREST' />
565
+ <value enum='7' description='ADVERTISEMENT' />
566
+ <value enum='8' description='EXECUTION_REPORT' />
567
+ <value enum='9' description='ORDER_CANCEL_REJECT' />
568
+ <value enum='A' description='LOGON' />
569
+ <value enum='B' description='NEWS' />
570
+ <value enum='C' description='EMAIL' />
571
+ <value enum='D' description='ORDER_D' />
572
+ <value enum='E' description='ORDER_E' />
573
+ <value enum='F' description='ORDER_CANCEL_REQUEST' />
574
+ <value enum='G' description='ORDER_CANCEL_REPLACE_REQUEST' />
575
+ <value enum='H' description='ORDER_STATUS_REQUEST' />
576
+ <value enum='J' description='ALLOCATION' />
577
+ <value enum='K' description='LIST_CANCEL_REQUEST' />
578
+ <value enum='L' description='LIST_EXECUTE' />
579
+ <value enum='M' description='LIST_STATUS_REQUEST' />
580
+ <value enum='N' description='LIST_STATUS' />
581
+ <value enum='P' description='ALLOCATION_ACK' />
582
+ <value enum='Q' description='DONT_KNOW_TRADE' />
583
+ <value enum='R' description='QUOTE_REQUEST' />
584
+ <value enum='S' description='QUOTE' />
585
+ </field>
586
+ <field number='36' name='NewSeqNo' type='INT' />
587
+ <field number='37' name='OrderID' type='CHAR' />
588
+ <field number='38' name='OrderQty' type='INT' />
589
+ <field number='39' name='OrdStatus' type='CHAR'>
590
+ <value enum='0' description='NEW' />
591
+ <value enum='1' description='PARTIALLY_FILLED' />
592
+ <value enum='2' description='FILLED' />
593
+ <value enum='3' description='DONE_FOR_DAY' />
594
+ <value enum='4' description='CANCELED' />
595
+ <value enum='5' description='REPLACED' />
596
+ <value enum='6' description='PENDING_CANCEL_REPLACE' />
597
+ <value enum='7' description='STOPPED' />
598
+ <value enum='8' description='REJECTED' />
599
+ <value enum='9' description='SUSPENDED' />
600
+ <value enum='A' description='PENDING_NEW' />
601
+ <value enum='B' description='CALCULATED' />
602
+ <value enum='C' description='EXPIRED' />
603
+ </field>
604
+ <field number='40' name='OrdType' type='CHAR'>
605
+ <value enum='1' description='MARKET' />
606
+ <value enum='2' description='LIMIT' />
607
+ <value enum='3' description='STOP' />
608
+ <value enum='4' description='STOP_LIMIT' />
609
+ <value enum='5' description='MARKET_ON_CLOSE' />
610
+ <value enum='6' description='WITH_OR_WITHOUT' />
611
+ <value enum='7' description='LIMIT_OR_BETTER' />
612
+ <value enum='8' description='LIMIT_WITH_OR_WITHOUT' />
613
+ <value enum='9' description='ON_BASIS' />
614
+ <value enum='A' description='ON_CLOSE' />
615
+ <value enum='B' description='LIMIT_ON_CLOSE' />
616
+ <value enum='C' description='FOREX' />
617
+ <value enum='D' description='PREVIOUSLY_QUOTED' />
618
+ <value enum='E' description='PREVIOUSLY_INDICATED' />
619
+ <value enum='P' description='PEGGED' />
620
+ </field>
621
+ <field number='41' name='OrigClOrdID' type='CHAR' />
622
+ <field number='42' name='OrigTime' type='TIME' />
623
+ <field number='43' name='PossDupFlag' type='CHAR'>
624
+ <value enum='N' description='NO' />
625
+ <value enum='Y' description='YES' />
626
+ </field>
627
+ <field number='44' name='Price' type='FLOAT' />
628
+ <field number='45' name='RefSeqNum' type='INT' />
629
+ <field number='46' name='RelatdSym' type='CHAR' />
630
+ <field number='47' name='Rule80A' type='CHAR'>
631
+ <value enum='A' description='AGENCY_SINGLE_ORDER' />
632
+ <value enum='C' description='PROGRAM_ORDER_NON_INDEX_ARB_FOR_MEMBER_FIRM_ORG' />
633
+ <value enum='D' description='PROGRAM_ORDER_INDEX_ARB_FOR_MEMBER_FIRM_ORG' />
634
+ <value enum='I' description='INDIVIDUAL_INVESTOR_SINGLE_ORDER' />
635
+ <value enum='J' description='PROGRAM_ORDER_INDEX_ARB_FOR_INDIVIDUAL_CUSTOMER' />
636
+ <value enum='K' description='PROGRAM_ORDER_NON_INDEX_ARB_FOR_INDIVIDUAL_CUSTOMER' />
637
+ <value enum='M' description='PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_MEMBER' />
638
+ <value enum='N' description='PROGRAM_ORDER_NON_INDEX_ARB_FOR_OTHER_MEMBER' />
639
+ <value enum='U' description='PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_AGENCY' />
640
+ <value enum='W' description='ALL_OTHER_ORDERS_AS_AGENT_FOR_OTHER_MEMBER' />
641
+ <value enum='Y' description='PROGRAM_ORDER_NON_INDEX_ARB_FOR_OTHER_AGENCY' />
642
+ </field>
643
+ <field number='48' name='SecurityID' type='CHAR' />
644
+ <field number='49' name='SenderCompID' type='CHAR' />
645
+ <field number='50' name='SenderSubID' type='CHAR' />
646
+ <field number='52' name='SendingTime' type='TIME' />
647
+ <field number='53' name='Shares' type='INT' />
648
+ <field number='54' name='Side' type='CHAR'>
649
+ <value enum='1' description='BUY' />
650
+ <value enum='2' description='SELL' />
651
+ <value enum='3' description='BUY_MINUS' />
652
+ <value enum='4' description='SELL_PLUS' />
653
+ <value enum='5' description='SELL_SHORT' />
654
+ <value enum='6' description='SELL_SHORT_EXEMPT' />
655
+ </field>
656
+ <field number='55' name='Symbol' type='CHAR' />
657
+ <field number='56' name='TargetCompID' type='CHAR' />
658
+ <field number='57' name='TargetSubID' type='CHAR' />
659
+ <field number='58' name='Text' type='CHAR' />
660
+ <field number='59' name='TimeInForce' type='CHAR'>
661
+ <value enum='0' description='DAY' />
662
+ <value enum='1' description='GOOD_TILL_CANCEL' />
663
+ <value enum='2' description='AT_THE_OPENING' />
664
+ <value enum='3' description='IMMEDIATE_OR_CANCEL' />
665
+ <value enum='4' description='FILL_OR_KILL' />
666
+ <value enum='5' description='GOOD_TILL_CROSSING' />
667
+ <value enum='6' description='GOOD_TILL_DATE' />
668
+ </field>
669
+ <field number='60' name='TransactTime' type='TIME' />
670
+ <field number='61' name='Urgency' type='CHAR'>
671
+ <value enum='0' description='NORMAL' />
672
+ <value enum='1' description='FLASH' />
673
+ <value enum='2' description='BACKGROUND' />
674
+ </field>
675
+ <field number='62' name='ValidUntilTime' type='TIME' />
676
+ <field number='63' name='SettlmntTyp' type='CHAR'>
677
+ <value enum='0' description='REGULAR' />
678
+ <value enum='1' description='CASH' />
679
+ <value enum='2' description='NEXT_DAY' />
680
+ <value enum='3' description='T_PLUS_2' />
681
+ <value enum='4' description='T_PLUS_3' />
682
+ <value enum='5' description='T_PLUS_4' />
683
+ <value enum='6' description='FUTURE' />
684
+ <value enum='7' description='WHEN_ISSUED' />
685
+ <value enum='8' description='SELLERS_OPTION' />
686
+ <value enum='9' description='T_PLUS_5' />
687
+ </field>
688
+ <field number='64' name='FutSettDate' type='DATE' />
689
+ <field number='65' name='SymbolSfx' type='CHAR' />
690
+ <field number='66' name='ListID' type='CHAR' />
691
+ <field number='67' name='ListSeqNo' type='INT' />
692
+ <field number='68' name='ListNoOrds' type='INT' />
693
+ <field number='69' name='ListExecInst' type='CHAR' />
694
+ <field number='70' name='AllocID' type='INT' />
695
+ <field number='71' name='AllocTransType' type='CHAR'>
696
+ <value enum='0' description='NEW' />
697
+ <value enum='1' description='REPLACE' />
698
+ <value enum='2' description='CANCEL' />
699
+ </field>
700
+ <field number='72' name='RefAllocID' type='INT' />
701
+ <field number='73' name='NoOrders' type='INT' />
702
+ <field number='74' name='AvgPrxPrecision' type='INT' />
703
+ <field number='75' name='TradeDate' type='DATE' />
704
+ <field number='76' name='ExecBroker' type='CHAR' />
705
+ <field number='77' name='OpenClose' type='CHAR' />
706
+ <field number='78' name='NoAllocs' type='INT' />
707
+ <field number='79' name='AllocAccount' type='CHAR' />
708
+ <field number='80' name='AllocShares' type='INT' />
709
+ <field number='81' name='ProcessCode' type='CHAR'>
710
+ <value enum='0' description='REGULAR' />
711
+ <value enum='1' description='SOFT_DOLLAR' />
712
+ <value enum='2' description='STEP_IN' />
713
+ <value enum='3' description='STEP_OUT' />
714
+ <value enum='4' description='SOFT_DOLLAR_STEP_IN' />
715
+ <value enum='5' description='SOFT_DOLLAR_STEP_OUT' />
716
+ <value enum='6' description='PLAN_SPONSOR' />
717
+ </field>
718
+ <field number='82' name='NoRpts' type='INT' />
719
+ <field number='83' name='RptSeq' type='INT' />
720
+ <field number='84' name='CxlQty' type='INT' />
721
+ <field number='85' name='NoDlvyInst' type='INT' />
722
+ <field number='86' name='DlvyInst' type='CHAR' />
723
+ <field number='87' name='AllocStatus' type='INT'>
724
+ <value enum='0' description='ACCEPTED' />
725
+ <value enum='1' description='REJECTED' />
726
+ <value enum='2' description='PARTIAL_ACCEPT' />
727
+ <value enum='3' description='RECEIVED' />
728
+ </field>
729
+ <field number='88' name='AllocRejCode' type='INT'>
730
+ <value enum='0' description='UNKNOWN_ACCOUNT' />
731
+ <value enum='1' description='INCORRECT_QUANTITY' />
732
+ <value enum='2' description='INCORRECT_AVERAGE_PRICE' />
733
+ <value enum='3' description='UNKNOWN_EXECUTING_BROKER_MNEMONIC' />
734
+ <value enum='4' description='COMMISSION_DIFFERENCE' />
735
+ <value enum='5' description='UNKNOWN_ORDERID' />
736
+ <value enum='6' description='UNKNOWN_LISTID' />
737
+ <value enum='7' description='OTHER' />
738
+ </field>
739
+ <field number='89' name='Signature' type='DATA' />
740
+ <field number='90' name='SecureDataLen' type='LENGTH' />
741
+ <field number='91' name='SecureData' type='DATA' />
742
+ <field number='92' name='BrokerOfCredit' type='CHAR' />
743
+ <field number='93' name='SignatureLength' type='LENGTH' />
744
+ <field number='94' name='EmailType' type='CHAR'>
745
+ <value enum='0' description='NEW' />
746
+ <value enum='1' description='REPLY' />
747
+ <value enum='2' description='ADMIN_REPLY' />
748
+ </field>
749
+ <field number='95' name='RawDataLength' type='LENGTH' />
750
+ <field number='96' name='RawData' type='DATA' />
751
+ <field number='97' name='PossResend' type='CHAR' />
752
+ <field number='98' name='EncryptMethod' type='INT'>
753
+ <value enum='0' description='NONE' />
754
+ <value enum='1' description='PKCS' />
755
+ <value enum='2' description='DES' />
756
+ <value enum='3' description='PKCS_DES' />
757
+ <value enum='4' description='PGP_DES' />
758
+ <value enum='5' description='PGP_DES_MD5' />
759
+ <value enum='6' description='PEM_DES_MD5' />
760
+ </field>
761
+ <field number='99' name='StopPx' type='FLOAT' />
762
+ <field number='100' name='ExDestination' type='CHAR'>
763
+ <value enum='0' description='NONE' />
764
+ <value enum='4' description='POSIT' />
765
+ </field>
766
+ <field number='102' name='CxlRejReason' type='INT'>
767
+ <value enum='0' description='TOO_LATE_TO_CANCEL' />
768
+ <value enum='1' description='UNKNOWN_ORDER' />
769
+ </field>
770
+ <field number='103' name='OrdRejReason' type='INT'>
771
+ <value enum='0' description='BROKER_OPTION' />
772
+ <value enum='1' description='UNKNOWN_SYMBOL' />
773
+ <value enum='2' description='EXCHANGE_CLOSED' />
774
+ <value enum='3' description='ORDER_EXCEEDS_LIMIT' />
775
+ <value enum='4' description='TOO_LATE_TO_ENTER' />
776
+ </field>
777
+ <field number='104' name='IOIQualifier' type='CHAR'>
778
+ <value enum='A' description='ALL_OR_NONE' />
779
+ <value enum='C' description='AT_THE_CLOSE' />
780
+ <value enum='I' description='IN_TOUCH_WITH' />
781
+ <value enum='L' description='LIMIT' />
782
+ <value enum='M' description='MORE_BEHIND' />
783
+ <value enum='O' description='AT_THE_OPEN' />
784
+ <value enum='P' description='TAKING_A_POSITION' />
785
+ <value enum='Q' description='CURRENT_QUOTE' />
786
+ <value enum='S' description='PORTFOLIO_SHOW_N' />
787
+ <value enum='T' description='THROUGH_THE_DAY' />
788
+ <value enum='V' description='VERSUS' />
789
+ <value enum='W' description='INDICATION' />
790
+ <value enum='X' description='CROSSING_OPPORTUNITY' />
791
+ </field>
792
+ <field number='105' name='WaveNo' type='CHAR' />
793
+ <field number='106' name='Issuer' type='CHAR' />
794
+ <field number='107' name='SecurityDesc' type='CHAR' />
795
+ <field number='108' name='HeartBtInt' type='INT' />
796
+ <field number='109' name='ClientID' type='CHAR' />
797
+ <field number='110' name='MinQty' type='INT' />
798
+ <field number='111' name='MaxFloor' type='INT' />
799
+ <field number='112' name='TestReqID' type='CHAR' />
800
+ <field number='113' name='ReportToExch' type='CHAR'>
801
+ <value enum='N' description='NO' />
802
+ <value enum='Y' description='YES' />
803
+ </field>
804
+ <field number='114' name='LocateReqd' type='CHAR'>
805
+ <value enum='N' description='NO' />
806
+ <value enum='Y' description='YES' />
807
+ </field>
808
+ <field number='115' name='OnBehalfOfCompID' type='CHAR' />
809
+ <field number='116' name='OnBehalfOfSubID' type='CHAR' />
810
+ <field number='117' name='QuoteID' type='CHAR' />
811
+ <field number='118' name='NetMoney' type='FLOAT' />
812
+ <field number='119' name='SettlCurrAmt' type='FLOAT' />
813
+ <field number='120' name='SettlCurrency' type='CHAR' />
814
+ <field number='121' name='ForexReq' type='CHAR'>
815
+ <value enum='N' description='NO' />
816
+ <value enum='Y' description='YES' />
817
+ </field>
818
+ <field number='122' name='OrigSendingTime' type='TIME' />
819
+ <field number='123' name='GapFillFlag' type='CHAR'>
820
+ <value enum='N' description='NO' />
821
+ <value enum='Y' description='YES' />
822
+ </field>
823
+ <field number='124' name='NoExecs' type='INT' />
824
+ <field number='125' name='CxlType' type='CHAR'>
825
+ <value enum='F' description='FULL_REMAINING_QUANTITY' />
826
+ <value enum='P' description='PARTIAL_CANCEL' />
827
+ </field>
828
+ <field number='126' name='ExpireTime' type='TIME' />
829
+ <field number='127' name='DKReason' type='CHAR'>
830
+ <value enum='A' description='UNKNOWN_SYMBOL' />
831
+ <value enum='B' description='WRONG_SIDE' />
832
+ <value enum='C' description='QUANTITY_EXCEEDS_ORDER' />
833
+ <value enum='D' description='NO_MATCHING_ORDER' />
834
+ <value enum='E' description='PRICE_EXCEEDS_LIMIT' />
835
+ <value enum='Z' description='OTHER' />
836
+ </field>
837
+ <field number='128' name='DeliverToCompID' type='CHAR' />
838
+ <field number='129' name='DeliverToSubID' type='CHAR' />
839
+ <field number='130' name='IOINaturalFlag' type='CHAR'>
840
+ <value enum='N' description='NO' />
841
+ <value enum='Y' description='YES' />
842
+ </field>
843
+ <field number='131' name='QuoteReqID' type='CHAR' />
844
+ <field number='132' name='BidPx' type='FLOAT' />
845
+ <field number='133' name='OfferPx' type='FLOAT' />
846
+ <field number='134' name='BidSize' type='INT' />
847
+ <field number='135' name='OfferSize' type='INT' />
848
+ <field number='136' name='NoMiscFees' type='INT' />
849
+ <field number='137' name='MiscFeeAmt' type='FLOAT' />
850
+ <field number='138' name='MiscFeeCurr' type='CHAR' />
851
+ <field number='139' name='MiscFeeType' type='CHAR'>
852
+ <value enum='1' description='REGULATORY' />
853
+ <value enum='2' description='TAX' />
854
+ <value enum='3' description='LOCAL_COMMISSION' />
855
+ <value enum='4' description='EXCHANGE_FEES' />
856
+ <value enum='5' description='STAMP' />
857
+ <value enum='6' description='LEVY' />
858
+ <value enum='7' description='OTHER' />
859
+ </field>
860
+ <field number='140' name='PrevClosePx' type='FLOAT' />
861
+ </fields>
862
+ </fix>