OnixS Eurex ETI Handler C++ library  9.20.0
API documentation
Enumerations.h
Go to the documentation of this file.
1 /*
2  * Copyright Onix Solutions Limited [OnixS]. All rights reserved.
3  *
4  * This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
5  * and international copyright treaties.
6  *
7  * Access to and use of the software is governed by the terms of the applicable ONIXS Software
8  * Services Agreement (the Agreement) and Customer end user license agreements granting
9  * a non-assignable, non-transferable and non-exclusive license to use the software
10  * for it's own data processing purposes under the terms defined in the Agreement.
11  *
12  * Except as otherwise granted within the terms of the Agreement, copying or reproduction of any
13  * part of this source code or associated reference material to any other location for further
14  * reproduction or redistribution, and any amendments to this copyright notice, are expressly
15  * prohibited.
16  *
17  * Any reproduction or redistribution for sale or hiring of the Software not in accordance with
18  * the terms of the Agreement is a violation of copyright law.
19  */
20 
21 #pragma once
22 
23 #include "OnixS/Eurex/Trading/Export.h"
24 
25 #include <string>
26 
27 namespace OnixS { namespace Eurex { namespace Trading {
28 
29 /// Identifier for subscription and retransmission of an ETI data stream.
30 struct ONIXS_EUREX_ETI_EXPORT ApplId
31 {
32  /// \copydoc ApplId
33  enum Enum
34  {
35  NoValue = 0xFF, ///< No value.
36  Trade = 1, ///< Trade.
37  News = 2, ///< News.
38  ServiceAvailability = 3, ///< Service Availability.
39  SessionData = 4, ///< Session Data.
40  ListenerData = 5, ///< Listener Data.
41  RiskControl = 6, ///< Risk Control.
42  TESMaintenance = 7, ///< TES Maintenance.
43  TESTrade = 8, ///< TES Trade.
44  SRQSMaintenance = 9, ///< SRQS Maintenance.
45  ServiceAvailabilityMarket = 10, ///< Service Availability Market.
46  };
47 };
48 
49 /// Returns string representation.
50 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplId::Enum);
51 
52 /// Subscription status.
53 struct ONIXS_EUREX_ETI_EXPORT ApplIdStatus
54 {
55  /// \copydoc ApplIdStatus
56  enum Enum
57  {
58  NoValue = 0xFF, ///< No value.
59  OutboundConversionError = 105, ///< Error converting response or broadcast.
60  };
61 };
62 
63 /// Returns string representation.
64 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplIdStatus::Enum);
65 
66 /// Indicates a retransmission message.
67 struct ONIXS_EUREX_ETI_EXPORT ApplResendFlag
68 {
69  /// \copydoc ApplResendFlag
70  enum Enum
71  {
72  NoValue = 0xFF, ///< No value.
73  False = 0, ///< False.
74  True = 1, ///< True.
75  };
76 };
77 
78 /// Returns string representation.
79 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplResendFlag::Enum);
80 
81 /// Indicates if the order is a Lean Order or a Standard (non lean) Order.
82 struct ONIXS_EUREX_ETI_EXPORT ApplSeqIndicator
83 {
84  /// \copydoc ApplSeqIndicator
85  enum Enum
86  {
87  NoValue = 0xFF, ///< No value.
88  NoRecoveryRequired = 0, ///< No Recovery Required.
89  RecoveryRequired = 1, ///< Recovery Required.
90  };
91 };
92 
93 /// Returns string representation.
94 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplSeqIndicator::Enum);
95 
96 /// Informs about the availability of the retransmission services for order and quote events (session data and listener
97 /// data).
98 struct ONIXS_EUREX_ETI_EXPORT ApplSeqStatus
99 {
100  /// \copydoc ApplSeqStatus
101  enum Enum
102  {
103  NoValue = 0xFF, ///< No value.
104  Unavailable = 0, ///< Unavailable.
105  Available = 1, ///< Available.
106  };
107 };
108 
109 /// Returns string representation.
110 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplSeqStatus::Enum);
111 
112 /// Type of order processing.
113 struct ONIXS_EUREX_ETI_EXPORT ApplUsageOrders
114 {
115  /// \copydoc ApplUsageOrders
116  enum Enum
117  {
118  NoValue = 0x00, ///< No value.
119  Automated = 'A', ///< Automated.
120  Manual = 'M', ///< Manual.
121  AutoSelect = 'B', ///< Both (Automated and Manual).
122  None = 'N', ///< None.
123  };
124 };
125 
126 /// Returns string representation.
127 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplUsageOrders::Enum);
128 
129 /// Type of quote processing.
130 struct ONIXS_EUREX_ETI_EXPORT ApplUsageQuotes
131 {
132  /// \copydoc ApplUsageQuotes
133  enum Enum
134  {
135  NoValue = 0x00, ///< No value.
136  Automated = 'A', ///< Automated.
137  Manual = 'M', ///< Manual.
138  AutoSelect = 'B', ///< Both (Automated and Manual).
139  None = 'N', ///< None.
140  };
141 };
142 
143 /// Returns string representation.
144 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplUsageQuotes::Enum);
145 
146 /// Used to indicate anonymized trades in baskets.
147 struct ONIXS_EUREX_ETI_EXPORT BasketAnonymity
148 {
149  /// \copydoc BasketAnonymity
150  enum Enum
151  {
152  NoValue = 0xFF, ///< No value.
153  No = 0, ///< No.
154  Yes = 1, ///< Yes.
155  };
156 };
157 
158 /// Returns string representation.
159 ONIXS_EUREX_ETI_EXPORT std::string enumToString(BasketAnonymity::Enum);
160 
161 /// Basket operation.
162 struct ONIXS_EUREX_ETI_EXPORT BasketTradeReportType
163 {
164  /// \copydoc BasketTradeReportType
165  enum Enum
166  {
167  NoValue = 0xFF, ///< No value.
168  Submit = 0, ///< Submit.
169  Addendum = 4, ///< Addendum.
170  NoWasSubstitue = 5, ///< No/Was (Substitute).
171  };
172 };
173 
174 /// Returns string representation.
175 ONIXS_EUREX_ETI_EXPORT std::string enumToString(BasketTradeReportType::Enum);
176 
177 /// BidPx is locked.
178 struct ONIXS_EUREX_ETI_EXPORT BidPxIsLocked
179 {
180  /// \copydoc BidPxIsLocked
181  enum Enum
182  {
183  NoValue = 0xFF, ///< No value.
184  No = 0, ///< No.
185  Yes = 1, ///< Yes.
186  };
187 };
188 
189 /// Returns string representation.
190 ONIXS_EUREX_ETI_EXPORT std::string enumToString(BidPxIsLocked::Enum);
191 
192 /// Instruction to show Charge ID.
193 struct ONIXS_EUREX_ETI_EXPORT ChargeIdDisclosureInstruction
194 {
195  /// \copydoc ChargeIdDisclosureInstruction
196  enum Enum
197  {
198  NoValue = 0xFF, ///< No value.
199  No = 0, ///< No.
200  Yes = 1, ///< Yes.
201  };
202 };
203 
204 /// Returns string representation.
205 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ChargeIdDisclosureInstruction::Enum);
206 
207 /// Prioritization of a cross order.
208 struct ONIXS_EUREX_ETI_EXPORT CrossPrioritization
209 {
210  /// \copydoc CrossPrioritization
211  enum Enum
212  {
213  NoValue = 0xFF, ///< No value.
214  BuySide = 1, ///< Buy side is prioritized.
215  SellSide = 2, ///< Sell side is prioritized.
216  };
217 };
218 
219 /// Returns string representation.
220 ONIXS_EUREX_ETI_EXPORT std::string enumToString(CrossPrioritization::Enum);
221 
222 /// Type of the Cross Request.
223 struct ONIXS_EUREX_ETI_EXPORT CrossRequestType
224 {
225  /// \copydoc CrossRequestType
226  enum Enum
227  {
228  NoValue = 0xFF, ///< No value.
229  Cross = 1, ///< Cross Announcement.
230  Clip = 2, ///< Liquidity Improvement Cross.
231  };
232 };
233 
234 /// Returns string representation.
235 ONIXS_EUREX_ETI_EXPORT std::string enumToString(CrossRequestType::Enum);
236 
237 /// Type of cross being submitted to a market.
238 struct ONIXS_EUREX_ETI_EXPORT CrossType
239 {
240  /// \copydoc CrossType
241  enum Enum
242  {
243  NoValue = 0xFF, ///< No value.
244  CrossIOC = 2, ///< Immediate-or-cancel-cross.
245  CrossOneSide = 3, ///< One sided cross - unfilled quantity remains active after crossing. Only applicable for
246  ///< CrossRequestType(28771) = 1(Cross Announcement).
247  };
248 };
249 
250 /// Returns string representation.
251 ONIXS_EUREX_ETI_EXPORT std::string enumToString(CrossType::Enum);
252 
253 /// Indicates SMP involvement.
254 struct ONIXS_EUREX_ETI_EXPORT CrossedIndicator
255 {
256  /// \copydoc CrossedIndicator
257  enum Enum
258  {
259  NoValue = 0xFF, ///< No value.
260  NoCrossing = 0, ///< No crossing (Order not subject to crossing).
261  CrossRejected = 1, ///< Cross rejected (Order subject to crossing and match prevented).
262  };
263 };
264 
265 /// Returns string representation.
266 ONIXS_EUREX_ETI_EXPORT std::string enumToString(CrossedIndicator::Enum);
267 
268 /// Identifies the source of an order, in accordance with the FIA guidelines for a rate Identifier. The field is for
269 /// participant use only. Valid characters: 0x20, 0x22-0x7B, 0x7D, 0x7E.
270 struct ONIXS_EUREX_ETI_EXPORT CustOrderHandlingInst
271 {
272  /// \copydoc CustOrderHandlingInst
273  enum Enum
274  {
275  NoValue = 0x00, ///< No value.
276  W = 'W', ///< Desk.
277  Y = 'Y', ///< Electronic.
278  C = 'C', ///< Vendor-provided Platform billed by Executing Broker.
279  G = 'G', ///< Sponsored Access via Exchange API or FIX provided by Executing Broker.
280  H = 'H', ///< Premium Algorithmic Trading Provider billed by Executing Broker.
281  D = 'D', ///< Other, including Other-provided Screen.
282  };
283 };
284 
285 /// Returns string representation.
286 ONIXS_EUREX_ETI_EXPORT std::string enumToString(CustOrderHandlingInst::Enum);
287 
288 /// Reason for deletion.
289 struct ONIXS_EUREX_ETI_EXPORT DeleteReason
290 {
291  /// \copydoc DeleteReason
292  enum Enum
293  {
294  NoValue = 0xFF, ///< No value.
295  NoSpecialReason = 100, ///< Deletion via the TES Delete Request.
296  TASChange = 101, ///< Automatic deletion due to TES Activity State Change.
297  IntradayExpiration = 102, ///< Automatic deletion due to instrument expiration.
298  RiskEvent = 103, ///< Deletion caused by Clearing/Risk stop.
299  StopTrading = 104, ///< Deletion caused by Trading stop.
300  InstrumentDeletion = 105, ///< Deletion of Instrument.
301  InstrumentSuspension = 106, ///< Suspension of Instrument.
302  PreTradeRiskEvent = 107, ///< Deletion caused by a pre-trade risk event.
303  AmendmentReset = 108, ///< Basket amendment cancelled.
304  AmendmentUserCancelled = 109, ///< Amendment cancelled by user action.
305  };
306 };
307 
308 /// Returns string representation.
309 ONIXS_EUREX_ETI_EXPORT std::string enumToString(DeleteReason::Enum);
310 
311 /// Transaction effect on a basket.
312 struct ONIXS_EUREX_ETI_EXPORT EffectOnBasket
313 {
314  /// \copydoc EffectOnBasket
315  enum Enum
316  {
317  NoValue = 0xFF, ///< No value.
318  AddVolume = 1, ///< Add volume.
319  RemoveVolume = 2, ///< Remove volume.
320  };
321 };
322 
323 /// Returns string representation.
324 ONIXS_EUREX_ETI_EXPORT std::string enumToString(EffectOnBasket::Enum);
325 
326 /// Enlight RFQ Average Response Rate Ranking.
327 struct ONIXS_EUREX_ETI_EXPORT EnlightRFQAvgRespRateRanking
328 {
329  /// \copydoc EnlightRFQAvgRespRateRanking
330  enum Enum
331  {
332  NoValue = 0xFF, ///< No value.
333  Low = 1, ///< Low.
334  Medium = 2, ///< Medium.
335  High = 3, ///< High.
336  };
337 };
338 
339 /// Returns string representation.
340 ONIXS_EUREX_ETI_EXPORT std::string enumToString(EnlightRFQAvgRespRateRanking::Enum);
341 
342 /// Enlight RFQ Average Response Time Ranking.
343 struct ONIXS_EUREX_ETI_EXPORT EnlightRFQAvgRespTimeRanking
344 {
345  /// \copydoc EnlightRFQAvgRespTimeRanking
346  enum Enum
347  {
348  NoValue = 0xFF, ///< No value.
349  Low = 1, ///< Low.
350  Medium = 2, ///< Medium.
351  High = 3, ///< High.
352  };
353 };
354 
355 /// Returns string representation.
356 ONIXS_EUREX_ETI_EXPORT std::string enumToString(EnlightRFQAvgRespTimeRanking::Enum);
357 
358 /// Eurex Volume Ranking.
359 struct ONIXS_EUREX_ETI_EXPORT EurexVolumeRanking
360 {
361  /// \copydoc EurexVolumeRanking
362  enum Enum
363  {
364  NoValue = 0xFF, ///< No value.
365  Low = 1, ///< Low.
366  Medium = 2, ///< Medium.
367  High = 3, ///< High.
368  };
369 };
370 
371 /// Returns string representation.
372 ONIXS_EUREX_ETI_EXPORT std::string enumToString(EurexVolumeRanking::Enum);
373 
374 /// Code to represent the type of event.
375 struct ONIXS_EUREX_ETI_EXPORT EventType
376 {
377  /// \copydoc EventType
378  enum Enum
379  {
380  NoValue = 0xFF, ///< No value.
381  SwapStartDate = 8, ///< Swap Start Date.
382  SwapEndDate = 9, ///< Swap End Date.
383  };
384 };
385 
386 /// Returns string representation.
387 ONIXS_EUREX_ETI_EXPORT std::string enumToString(EventType::Enum);
388 
389 /// Instructions for order handling, represented as a bit map.
390 struct ONIXS_EUREX_ETI_EXPORT ExecInst
391 {
392  /// \copydoc ExecInst
393  enum Enum
394  {
395  NoValue = 0xFF, ///< No value.
396  H = 1, ///< Persistent Order (FIX value 'H').
397  Q = 2, ///< Non-persistent Order (FIX value 'Q').
398  HQ = 3, ///< Persistent and non-persistent orders affected (FIX value 'H Q').
399  H6 = 5, ///< Persistent and Book or Cancel order (FIX value 'H 6').
400  Q6 = 6, ///< Non-persistent and Book or Cancel order (FIX value 'Q 6').
401  };
402 };
403 
404 /// Returns string representation.
405 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ExecInst::Enum);
406 
407 /// Code to further qualify the field ExecType (150) of the Execution Report (8) message.
408 struct ONIXS_EUREX_ETI_EXPORT ExecRestatementReason
409 {
410  /// \copydoc ExecRestatementReason
411  enum Enum
412  {
413  NoValue = 0xFF, ///< No value.
414  OrderBookRestatement = 1, ///< Order book restatement.
415  OrderAdded = 101, ///< Order add accepted.
416  OrderModified = 102, ///< Order modify accepted.
417  OrderCancelled = 103, ///< Order delete accepted.
418  IOCOrderCancelled = 105, ///< IOC Order accepted.
419  FOKOrderCancelled = 107, ///< FOK Order accepted.
420  BookOrderExecuted = 108, ///< Book Order executed.
421  ChangedToIOC = 114, ///< Order has been changed to IOC.
422  MemberDisable = 117, ///< Member has been disabled.
423  InstrumentStateChange = 122, ///< Instrument State Change.
424  MarketOrderTriggered = 135, ///< Market Order triggered and executed.
425  CAOOrderActivated = 149, ///< Closing Auction Order has been activated.
426  CAOOrderInactivated = 150, ///< Closing Auction Order has been inactivated.
427  OAOOrderActivated = 151, ///< Opening Auction Order has been activated.
428  OAOOrderInactivated = 152, ///< Opening Auction Order has been inactivated.
429  AAOOrderActivated = 153, ///< Any Auction Order has been activated.
430  AAOOrderInactivated = 154, ///< Any Auction Order has been inactivated.
431  OCOOrderTriggered = 164, ///< One-cancels-the-other Order has been triggered.
432  StopOrderTriggered = 172, ///< Stop Order has been triggered.
433  OwnershipChanged = 181, ///< Ownership Changed.
434  OrderCancellationPending = 197, ///< Pending order deletion.
435  PendingCancellationExecuted = 199, ///< Pending order cancellation processed (end of FREEZE state).
436  BOCOrderCancelled = 212, ///< Book or Cancel Order accepted.
437  PanicCancel = 261, ///< Panic Cancel.
438  MarketOrderUncrossing = 302, ///< Market Order uncrossing.
439  CLIPExecution = 340, ///< CLIP execution after improvement period.
440  CLIPArrangementTimeOut = 343, ///< CLIP Request deleted by arrangement time out.
441  CLIPArrangementValidation = 344, ///< CLIP Request deleted by arrangement validation.
442  CrossOrderAdded = 346, ///< Cross order added.
443  CrossOrderCancelled = 347, ///< Cross order cancelled.
444  };
445 };
446 
447 /// Returns string representation.
448 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ExecRestatementReason::Enum);
449 
450 /// The reason why this message was generated.
451 struct ONIXS_EUREX_ETI_EXPORT ExecType
452 {
453  /// \copydoc ExecType
454  enum Enum
455  {
456  NoValue = 0x00, ///< No value.
457  New = '0', ///< New.
458  Canceled = '4', ///< Cancelled.
459  Replaced = '5', ///< Replaced.
460  PendingCancelE = '6', ///< Pending Cancel (e.g. result of Order Cancel Request).
461  Suspended = '9', ///< Suspended.
462  Restated = 'D', ///< Restated.
463  Triggered = 'L', ///< Triggered.
464  Trade = 'F', ///< Trade.
465  };
466 };
467 
468 /// Returns string representation.
469 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ExecType::Enum);
470 
471 /// Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos.
472 struct ONIXS_EUREX_ETI_EXPORT ExecutingTraderQualifier
473 {
474  /// \copydoc ExecutingTraderQualifier
475  enum Enum
476  {
477  NoValue = 0xFF, ///< No value.
478  Algo = 22, ///< Algo.
479  Human = 24, ///< Human/Natural person.
480  };
481 };
482 
483 /// Returns string representation.
484 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ExecutingTraderQualifier::Enum);
485 
486 /// Type of exercise of an instrument.
487 struct ONIXS_EUREX_ETI_EXPORT ExerciseStyle
488 {
489  /// \copydoc ExerciseStyle
490  enum Enum
491  {
492  NoValue = 0xFF, ///< No value.
493  European = 0, ///< European.
494  American = 1, ///< American.
495  };
496 };
497 
498 /// Returns string representation.
499 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ExerciseStyle::Enum);
500 
501 /// Indicates whether the order added or removed liquidity.
502 struct ONIXS_EUREX_ETI_EXPORT FillLiquidityInd
503 {
504  /// \copydoc FillLiquidityInd
505  enum Enum
506  {
507  NoValue = 0xFF, ///< No value.
508  AddedLiquidity = 1, ///< Added Liquidity.
509  RemovedLiquidity = 2, ///< Removed Liquidity.
510  Auction = 4, ///< Auction.
511  TriggeredStopOrder = 5, ///< Triggered Stop Order.
512  TriggeredOCOOrder = 6, ///< Triggered OCO Order.
513  TriggeredMarketOrder = 7, ///< Triggered Market Order.
514  };
515 };
516 
517 /// Returns string representation.
518 ONIXS_EUREX_ETI_EXPORT std::string enumToString(FillLiquidityInd::Enum);
519 
520 /// Instruction to show FreeText5.
521 struct ONIXS_EUREX_ETI_EXPORT FreeText5DisclosureInstruction
522 {
523  /// \copydoc FreeText5DisclosureInstruction
524  enum Enum
525  {
526  NoValue = 0xFF, ///< No value.
527  No = 0, ///< No.
528  Yes = 1, ///< Yes.
529  };
530 };
531 
532 /// Returns string representation.
533 ONIXS_EUREX_ETI_EXPORT std::string enumToString(FreeText5DisclosureInstruction::Enum);
534 
535 /// Status of ETI Gateway.
536 struct ONIXS_EUREX_ETI_EXPORT GatewayStatus
537 {
538  /// \copydoc GatewayStatus
539  enum Enum
540  {
541  NoValue = 0xFF, ///< No value.
542  Standby = 0, ///< Standby.
543  Active = 1, ///< Active.
544  };
545 };
546 
547 /// Returns string representation.
548 ONIXS_EUREX_ETI_EXPORT std::string enumToString(GatewayStatus::Enum);
549 
550 /// Hedging method.
551 struct ONIXS_EUREX_ETI_EXPORT HedgeType
552 {
553  /// \copydoc HedgeType
554  enum Enum
555  {
556  NoValue = 0xFF, ///< No value.
557  DurationHedge = 0, ///< Duration Hedge.
558  NominalHedge = 1, ///< Nominal Hedge.
559  PriceFactorHedge = 2, ///< Price Factor Hedge.
560  };
561 };
562 
563 /// Returns string representation.
564 ONIXS_EUREX_ETI_EXPORT std::string enumToString(HedgeType::Enum);
565 
566 /// Indication for the hedge transaction.
567 struct ONIXS_EUREX_ETI_EXPORT HedgingInstruction
568 {
569  /// \copydoc HedgingInstruction
570  enum Enum
571  {
572  NoValue = 0xFF, ///< No value.
573  OnClose = 1, ///< Execute hedge transaction in the closing auction of the underlying.
574  };
575 };
576 
577 /// Returns string representation.
578 ONIXS_EUREX_ETI_EXPORT std::string enumToString(HedgingInstruction::Enum);
579 
580 /// Indicates whether a option strategy synthetic BBO is used for the price improvement check.
581 struct ONIXS_EUREX_ETI_EXPORT ImpliedCheckPriceIndicator
582 {
583  /// \copydoc ImpliedCheckPriceIndicator
584  enum Enum
585  {
586  NoValue = 0xFF, ///< No value.
587  No = 0, ///< No.
588  Yes = 1, ///< Yes.
589  };
590 };
591 
592 /// Returns string representation.
593 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ImpliedCheckPriceIndicator::Enum);
594 
595 /// Indicates that an implied market to be created for either the legs of a multi-leg instrument (Implied-in) or for the
596 /// multi-leg instrument based on the existence of the legs (Implied-out).
597 struct ONIXS_EUREX_ETI_EXPORT ImpliedMarketIndicator
598 {
599  /// \copydoc ImpliedMarketIndicator
600  enum Enum
601  {
602  NoValue = 0xFF, ///< No value.
603  NotImplied = 0, ///< Not implied.
604  ImpliedInOut = 3, ///< Both Implied-in and Implied-out.
605  };
606 };
607 
608 /// Returns string representation.
609 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ImpliedMarketIndicator::Enum);
610 
611 /// Role on/for a message.
612 struct ONIXS_EUREX_ETI_EXPORT InputSource
613 {
614  /// \copydoc InputSource
615  enum Enum
616  {
617  NoValue = 0xFF, ///< No value.
618  ClientBroker = 1, ///< Client Broker.
619  ProprietaryBroker = 2, ///< Proprietary Broker.
620  };
621 };
622 
623 /// Returns string representation.
624 ONIXS_EUREX_ETI_EXPORT std::string enumToString(InputSource::Enum);
625 
626 /// Code to represent the type of instrument attribute.
627 struct ONIXS_EUREX_ETI_EXPORT InstrAttribType
628 {
629  /// \copydoc InstrAttribType
630  enum Enum
631  {
632  NoValue = 0xFF, ///< No value.
633  VariableRate = 5, ///< Variable rate.
634  CouponRate = 100, ///< Coupon rate.
635  OffsetToTheVariableCouponRate = 101, ///< Offset to the variable coupon rate.
636  SwapCustomer1 = 102, ///< Swap Customer 1.
637  SwapCustomer2 = 103, ///< Swap Customer 2.
638  CashBasketReference = 104, ///< Cash Basket Reference.
639  };
640 };
641 
642 /// Returns string representation.
643 ONIXS_EUREX_ETI_EXPORT std::string enumToString(InstrAttribType::Enum);
644 
645 /// Indicator for checking open orders and quotes.
646 struct ONIXS_EUREX_ETI_EXPORT InventoryCheckType
647 {
648  /// \copydoc InventoryCheckType
649  enum Enum
650  {
651  NoValue = 0xFF, ///< No value.
652  DoNotCheck = 0, ///< Do not check.
653  Check = 1, ///< Check.
654  };
655 };
656 
657 /// Returns string representation.
658 ONIXS_EUREX_ETI_EXPORT std::string enumToString(InventoryCheckType::Enum);
659 
660 /// Indicates whether this message is the last fragment (part) of a sequence of messages belonging to one dedicated
661 /// transaction.
662 struct ONIXS_EUREX_ETI_EXPORT LastFragment
663 {
664  /// \copydoc LastFragment
665  enum Enum
666  {
667  NoValue = 0xFF, ///< No value.
668  NotLastMessage = 0, ///< Not Last Message.
669  LastMessage = 1, ///< Last Message.
670  };
671 };
672 
673 /// Returns string representation.
674 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LastFragment::Enum);
675 
676 /// Last market.
677 struct ONIXS_EUREX_ETI_EXPORT LastMkt
678 {
679  /// \copydoc LastMkt
680  enum Enum
681  {
682  NoValue = 0xFF, ///< No value.
683  XEUR = 1, ///< XEUR.
684  XEEE = 2, ///< XEEE.
685  NODX = 12, ///< NODX.
686  };
687 };
688 
689 /// Returns string representation.
690 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LastMkt::Enum);
691 
692 /// Instruction to show last deal price.
693 struct ONIXS_EUREX_ETI_EXPORT LastPxDisclosureInstruction
694 {
695  /// \copydoc LastPxDisclosureInstruction
696  enum Enum
697  {
698  NoValue = 0xFF, ///< No value.
699  No = 0, ///< No.
700  Yes = 1, ///< Yes.
701  };
702 };
703 
704 /// Returns string representation.
705 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LastPxDisclosureInstruction::Enum);
706 
707 /// Instruction to show last deal quantity. Can only be set to 1 (Yes) if LastQtyDisclosureInstruction = 1 (Yes).
708 struct ONIXS_EUREX_ETI_EXPORT LastQtyDisclosureInstruction
709 {
710  /// \copydoc LastQtyDisclosureInstruction
711  enum Enum
712  {
713  NoValue = 0xFF, ///< No value.
714  No = 0, ///< No.
715  Yes = 1, ///< Yes.
716  };
717 };
718 
719 /// Returns string representation.
720 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LastQtyDisclosureInstruction::Enum);
721 
722 /// Leaves quantity disclosure instruction.
723 struct ONIXS_EUREX_ETI_EXPORT LeavesQtyDisclosureInstruction
724 {
725  /// \copydoc LeavesQtyDisclosureInstruction
726  enum Enum
727  {
728  NoValue = 0xFF, ///< No value.
729  No = 0, ///< No.
730  Yes = 1, ///< Yes.
731  };
732 };
733 
734 /// Returns string representation.
735 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LeavesQtyDisclosureInstruction::Enum);
736 
737 /// Role on/for a message.
738 struct ONIXS_EUREX_ETI_EXPORT LegInputSource
739 {
740  /// \copydoc LegInputSource
741  enum Enum
742  {
743  NoValue = 0xFF, ///< No value.
744  ClientBroker = 1, ///< Client Broker.
745  ProprietaryBroker = 2, ///< Proprietary Broker.
746  BuySide = 3, ///< Buy side.
747  SellSide = 4, ///< Sell side.
748  };
749 };
750 
751 /// Returns string representation.
752 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LegInputSource::Enum);
753 
754 /// Leg-specific field used for Eurex position management purposes and indicates whether the leg is submitted to open or
755 /// close a position.
756 struct ONIXS_EUREX_ETI_EXPORT LegPositionEffect
757 {
758  /// \copydoc LegPositionEffect
759  enum Enum
760  {
761  NoValue = 0x00, ///< No value.
762  Close = 'C', ///< Close.
763  Open = 'O', ///< Open.
764  };
765 };
766 
767 /// Returns string representation.
768 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LegPositionEffect::Enum);
769 
770 /// Indicates type of leg.
771 struct ONIXS_EUREX_ETI_EXPORT LegSecurityType
772 {
773  /// \copydoc LegSecurityType
774  enum Enum
775  {
776  NoValue = 0xFF, ///< No value.
777  MultilegInstrument = 1, ///< Multileg Instrument.
778  UnderlyingLeg = 2, ///< Underlying Leg.
779  };
780 };
781 
782 /// Returns string representation.
783 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LegSecurityType::Enum);
784 
785 /// The side of the individual leg of a strategy.
786 struct ONIXS_EUREX_ETI_EXPORT LegSide
787 {
788  /// \copydoc LegSide
789  enum Enum
790  {
791  NoValue = 0xFF, ///< No value.
792  Buy = 1, ///< Buy.
793  Sell = 2, ///< Sell.
794  };
795 };
796 
797 /// Returns string representation.
798 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LegSide::Enum);
799 
800 /// List update action.
801 struct ONIXS_EUREX_ETI_EXPORT ListUpdateAction
802 {
803  /// \copydoc ListUpdateAction
804  enum Enum
805  {
806  NoValue = 0x00, ///< No value.
807  Add = 'A', ///< Add (Invocation).
808  Delete = 'D', ///< Delete (Release).
809  };
810 };
811 
812 /// Returns string representation.
813 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ListUpdateAction::Enum);
814 
815 /// Type of market data.
816 struct ONIXS_EUREX_ETI_EXPORT MDBookType
817 {
818  /// \copydoc MDBookType
819  enum Enum
820  {
821  NoValue = 0xFF, ///< No value.
822  TopOfBook = 1, ///< Top of book.
823  PriceDepth = 2, ///< Price depth (aggregated).
824  };
825 };
826 
827 /// Returns string representation.
828 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MDBookType::Enum);
829 
830 /// Sub-type (qualifier) of market data.
831 struct ONIXS_EUREX_ETI_EXPORT MDSubBookType
832 {
833  /// \copydoc MDSubBookType
834  enum Enum
835  {
836  NoValue = 0xFF, ///< No value.
837  Implied = 1, ///< Implied.
838  VolumeWeightedAverage = 2, ///< Volume Weighted Average.
839  };
840 };
841 
842 /// Returns string representation.
843 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MDSubBookType::Enum);
844 
845 /// Market ID.
846 struct ONIXS_EUREX_ETI_EXPORT MarketId
847 {
848  /// \copydoc MarketId
849  enum Enum
850  {
851  NoValue = 0xFF, ///< No value.
852  XEUR = 1, ///< XEUR.
853  XEEE = 2, ///< XEEE.
854  NODX = 12, ///< NODX.
855  };
856 };
857 
858 /// Returns string representation.
859 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MarketId::Enum);
860 
861 /// Reason for mass cancellation.
862 struct ONIXS_EUREX_ETI_EXPORT MassActionReason
863 {
864  /// \copydoc MassActionReason
865  enum Enum
866  {
867  NoValue = 0xFF, ///< No value.
868  NoSpecialReason = 0, ///< No special reason.
869  StopTrading = 1, ///< Trading was stopped.
870  Emergency = 2, ///< Emergency.
871  MarketMakerProtection = 3, ///< Market Maker Protection.
872  SessionLoss = 6, ///< Session loss or logout.
873  DuplicateSessionLogin = 7, ///< Duplicate Session Login.
874  ClearingRiskControl = 8, ///< Clearing Risk Control.
875  InternalConnectionLoss = 100, ///< Internal connection loss.
876  ProductStateHalt = 105, ///< Product State Halt.
877  ProductStateHoliday = 106, ///< Product State Holiday.
878  InstrumentSuspended = 107, ///< Instrument Suspended.
879  ComplexInstrumentDeletion = 109, ///< Complex Instrument Deletion.
880  VolatilityInterruption = 110, ///< Volatility Interruption.
881  ProductTemporarilyNotTradeable = 111, ///< Product temporarily not tradeable.
882  MemberDisable = 117, ///< Member has been disabled.
883  ScaledSimpleInstrumentDeletion = 121, ///< Scaled Simple Instrument Deletion.
884  };
885 };
886 
887 /// Returns string representation.
888 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MassActionReason::Enum);
889 
890 /// Restriction for MassActionType (1373) = Release_quotes (2).
891 struct ONIXS_EUREX_ETI_EXPORT MassActionSubType
892 {
893  /// \copydoc MassActionSubType
894  enum Enum
895  {
896  NoValue = 0xFF, ///< No value.
897  BookOrCancel = 1, ///< Book or cancel.
898  };
899 };
900 
901 /// Returns string representation.
902 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MassActionSubType::Enum);
903 
904 /// Specifies the type of action requested.
905 struct ONIXS_EUREX_ETI_EXPORT MassActionType
906 {
907  /// \copydoc MassActionType
908  enum Enum
909  {
910  NoValue = 0xFF, ///< No value.
911  SuspendQuotes = 1, ///< Suspend quotes.
912  ReleaseQuotes = 2, ///< Release quotes from suspension.
913  SuspendDeleteQuotes = 3, ///< Suspend and delete Quotes.
914  };
915 };
916 
917 /// Returns string representation.
918 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MassActionType::Enum);
919 
920 /// Indicates the auction type the trade originates from.
921 struct ONIXS_EUREX_ETI_EXPORT MatchSubType
922 {
923  /// \copydoc MatchSubType
924  enum Enum
925  {
926  NoValue = 0xFF, ///< No value.
927  OpeningAuction = 1, ///< Opening auction.
928  ClosingAuction = 2, ///< Closing auction.
929  IntradayAuction = 3, ///< Intraday auction.
930  CircuitBreakerAuction = 4, ///< Circuit Breaker auction.
931  OutsideBBO = 6, ///< CLIP matching outside BBO.
932  };
933 };
934 
935 /// Returns string representation.
936 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MatchSubType::Enum);
937 
938 /// The point in the matching process at which this trade was matched.
939 struct ONIXS_EUREX_ETI_EXPORT MatchType
940 {
941  /// \copydoc MatchType
942  enum Enum
943  {
944  NoValue = 0xFF, ///< No value.
945  ConfirmedTradeReport = 3, ///< Confirmed Trade Report (reporting from recognized markets).
946  AutoMatchIncoming = 4, ///< Auto-match incoming order.
947  CrossAuction = 5, ///< Cross Auction.
948  CallAuction = 7, ///< Call Auction.
949  AutoMatchResting = 11, ///< Auto match resting order.
950  LiquidityImprovementCross = 13, ///< Liquidity Improvement Cross.
951  };
952 };
953 
954 /// Returns string representation.
955 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MatchType::Enum);
956 
957 /// Informs if trading is active for grouping of Eurex products.
958 struct ONIXS_EUREX_ETI_EXPORT MatchingEngineStatus
959 {
960  /// \copydoc MatchingEngineStatus
961  enum Enum
962  {
963  NoValue = 0xFF, ///< No value.
964  Unavailable = 0, ///< Unavailable.
965  Available = 1, ///< Available.
966  };
967 };
968 
969 /// Returns string representation.
970 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MatchingEngineStatus::Enum);
971 
972 /// Receiver of a message.
973 struct ONIXS_EUREX_ETI_EXPORT MessageEventSource
974 {
975  /// \copydoc MessageEventSource
976  enum Enum
977  {
978  NoValue = 0x00, ///< No value.
979  BroadcastToInitiator = 'I', ///< Broadcast to initiator.
980  BroadcastToApprover = 'A', ///< Broadcast to approver.
981  BroadcastToRequester = 'R', ///< Broadcast to requester.
982  BroadcastToQuoteSubmitter = 'Q', ///< Broadcast to quote submitter.
983  };
984 };
985 
986 /// Returns string representation.
987 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MessageEventSource::Enum);
988 
989 /// Indicates if the trade resulted from a single order or a multi leg order.
990 struct ONIXS_EUREX_ETI_EXPORT MultiLegReportingType
991 {
992  /// \copydoc MultiLegReportingType
993  enum Enum
994  {
995  NoValue = 0xFF, ///< No value.
996  SingleSecurity = 1, ///< Single instrument.
997  IndividualLegOfAMultilegSecurity = 2, ///< Complex instrument.
998  };
999 };
1000 
1001 /// Returns string representation.
1002 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MultiLegReportingType::Enum);
1003 
1004 /// Specifies if a strategy is temporarily (user-defined) or permanently (predefined) available.
1005 struct ONIXS_EUREX_ETI_EXPORT MultilegModel
1006 {
1007  /// \copydoc MultilegModel
1008  enum Enum
1009  {
1010  NoValue = 0xFF, ///< No value.
1011  PredefinedMultilegSecurity = 0, ///< Predefined Multileg Security.
1012  UserDefinedMultleg = 1, ///< User-defined Multleg Security.
1013  };
1014 };
1015 
1016 /// Returns string representation.
1017 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MultilegModel::Enum);
1018 
1019 /// Price decomposition method for legs of a complex instrument.
1020 struct ONIXS_EUREX_ETI_EXPORT MultilegPriceModel
1021 {
1022  /// \copydoc MultilegPriceModel
1023  enum Enum
1024  {
1025  NoValue = 0xFF, ///< No value.
1026  Standard = 0, ///< leg level prices provided by system.
1027  UserDefined = 1, ///< leg level prices provided by user.
1028  };
1029 };
1030 
1031 /// Returns string representation.
1032 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MultilegPriceModel::Enum);
1033 
1034 /// State of the News Retransmission Service.
1035 struct ONIXS_EUREX_ETI_EXPORT NewsRtmServiceStatus
1036 {
1037  /// \copydoc NewsRtmServiceStatus
1038  enum Enum
1039  {
1040  NoValue = 0xFF, ///< No value.
1041  Unavailable = 0, ///< Unavailable.
1042  Available = 1, ///< Available.
1043  };
1044 };
1045 
1046 /// Returns string representation.
1047 ONIXS_EUREX_ETI_EXPORT std::string enumToString(NewsRtmServiceStatus::Enum);
1048 
1049 /// Instruction to show total number of Respondents in a SRQS event.
1050 struct ONIXS_EUREX_ETI_EXPORT NumberOfRespDisclosureInstruction
1051 {
1052  /// \copydoc NumberOfRespDisclosureInstruction
1053  enum Enum
1054  {
1055  NoValue = 0xFF, ///< No value.
1056  No = 0, ///< No.
1057  Yes = 1, ///< Yes.
1058  };
1059 };
1060 
1061 /// Returns string representation.
1062 ONIXS_EUREX_ETI_EXPORT std::string enumToString(NumberOfRespDisclosureInstruction::Enum);
1063 
1064 /// OfferPx is locked.
1065 struct ONIXS_EUREX_ETI_EXPORT OfferPxIsLocked
1066 {
1067  /// \copydoc OfferPxIsLocked
1068  enum Enum
1069  {
1070  NoValue = 0xFF, ///< No value.
1071  No = 0, ///< No.
1072  Yes = 1, ///< Yes.
1073  };
1074 };
1075 
1076 /// Returns string representation.
1077 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OfferPxIsLocked::Enum);
1078 
1079 /// Conveys the current status of an order.
1080 struct ONIXS_EUREX_ETI_EXPORT OrdStatus
1081 {
1082  /// \copydoc OrdStatus
1083  enum Enum
1084  {
1085  NoValue = 0x00, ///< No value.
1086  New = '0', ///< New.
1087  PartiallyFilled = '1', ///< Partially filled.
1088  Filled = '2', ///< Filled.
1089  Canceled = '4', ///< Cancelled.
1090  PendingCancel = '6', ///< Pending Cancel (i.e. result of Order Cancel Request).
1091  Suspended = '9', ///< Suspended.
1092  };
1093 };
1094 
1095 /// Returns string representation.
1096 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrdStatus::Enum);
1097 
1098 /// Order type.
1099 struct ONIXS_EUREX_ETI_EXPORT OrdType
1100 {
1101  /// \copydoc OrdType
1102  enum Enum
1103  {
1104  NoValue = 0xFF, ///< No value.
1105  Market = 1, ///< Market.
1106  Limit = 2, ///< Limit.
1107  Stop = 3, ///< Stop.
1108  StopLimit = 4, ///< Stop Limit.
1109  };
1110 };
1111 
1112 /// Returns string representation.
1113 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrdType::Enum);
1114 
1115 /// Order attribute liquidity provision.
1116 struct ONIXS_EUREX_ETI_EXPORT OrderAttributeLiquidityProvision
1117 {
1118  /// \copydoc OrderAttributeLiquidityProvision
1119  enum Enum
1120  {
1121  NoValue = 0xFF, ///< No value.
1122  Y = 1, ///< Liquidity provision.
1123  N = 0, ///< No liquidity provision.
1124  };
1125 };
1126 
1127 /// Returns string representation.
1128 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderAttributeLiquidityProvision::Enum);
1129 
1130 /// Order attribute risk reduction.
1131 struct ONIXS_EUREX_ETI_EXPORT OrderAttributeRiskReduction
1132 {
1133  /// \copydoc OrderAttributeRiskReduction
1134  enum Enum
1135  {
1136  NoValue = 0xFF, ///< No value.
1137  Y = 1, ///< Risk reduction.
1138  N = 0, ///< No risk reduction.
1139  };
1140 };
1141 
1142 /// Returns string representation.
1143 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderAttributeRiskReduction::Enum);
1144 
1145 /// Indicates if the trade notification results from an order or quote.
1146 struct ONIXS_EUREX_ETI_EXPORT OrderCategory
1147 {
1148  /// \copydoc OrderCategory
1149  enum Enum
1150  {
1151  NoValue = 0x00, ///< No value.
1152  Order = '1', ///< Order.
1153  Quote = '2', ///< Quote.
1154  };
1155 };
1156 
1157 /// Returns string representation.
1158 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderCategory::Enum);
1159 
1160 /// Action that caused the event to occur.
1161 struct ONIXS_EUREX_ETI_EXPORT OrderEventReason
1162 {
1163  /// \copydoc OrderEventReason
1164  enum Enum
1165  {
1166  NoValue = 0xFF, ///< No value.
1167  SMP = 100, ///< SMP event.
1168  };
1169 };
1170 
1171 /// Returns string representation.
1172 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderEventReason::Enum);
1173 
1174 /// Order origination, MiFID field - to indicate order received from a direct access or sponsored access customer.
1175 struct ONIXS_EUREX_ETI_EXPORT OrderOrigination
1176 {
1177  /// \copydoc OrderOrigination
1178  enum Enum
1179  {
1180  NoValue = 0xFF, ///< No value.
1181  DirectAccessOrSponsoredAccessCustomer = 5, ///< Order received from a direct access customer.
1182  };
1183 };
1184 
1185 /// Returns string representation.
1186 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderOrigination::Enum);
1187 
1188 /// Instruction to show total quantity.
1189 struct ONIXS_EUREX_ETI_EXPORT OrderQtyDisclosureInstruction
1190 {
1191  /// \copydoc OrderQtyDisclosureInstruction
1192  enum Enum
1193  {
1194  NoValue = 0xFF, ///< No value.
1195  No = 0, ///< No.
1196  Yes = 1, ///< Yes.
1197  };
1198 };
1199 
1200 /// Returns string representation.
1201 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderQtyDisclosureInstruction::Enum);
1202 
1203 /// OrderQty is locked.
1204 struct ONIXS_EUREX_ETI_EXPORT OrderQtyIsLocked
1205 {
1206  /// \copydoc OrderQtyIsLocked
1207  enum Enum
1208  {
1209  NoValue = 0xFF, ///< No value.
1210  No = 0, ///< No.
1211  Yes = 1, ///< Yes.
1212  };
1213 };
1214 
1215 /// Returns string representation.
1216 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderQtyIsLocked::Enum);
1217 
1218 /// Indicates if the participant application is an order routing system.
1219 struct ONIXS_EUREX_ETI_EXPORT OrderRoutingIndicator
1220 {
1221  /// \copydoc OrderRoutingIndicator
1222  enum Enum
1223  {
1224  NoValue = 0x00, ///< No value.
1225  Yes = 'Y', ///< Yes.
1226  No = 'N', ///< No.
1227  };
1228 };
1229 
1230 /// Returns string representation.
1231 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderRoutingIndicator::Enum);
1232 
1233 /// Side of the order in the original Eurex strategy.
1234 struct ONIXS_EUREX_ETI_EXPORT OrderSide
1235 {
1236  /// \copydoc OrderSide
1237  enum Enum
1238  {
1239  NoValue = 0xFF, ///< No value.
1240  Buy = 1, ///< Buy.
1241  Sell = 2, ///< Sell.
1242  };
1243 };
1244 
1245 /// Returns string representation.
1246 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderSide::Enum);
1247 
1248 /// Ownership indicator.
1249 struct ONIXS_EUREX_ETI_EXPORT OwnershipIndicator
1250 {
1251  /// \copydoc OwnershipIndicator
1252  enum Enum
1253  {
1254  NoValue = 0xFF, ///< No value.
1255  NoChangeOfOwnership = 0, ///< Do not change ownership.
1256  ChangeToExecutingTrader = 1, ///< Change ownership to executing party (User ID).
1257  };
1258 };
1259 
1260 /// Returns string representation.
1261 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OwnershipIndicator::Enum);
1262 
1263 /// Party action type.
1264 struct ONIXS_EUREX_ETI_EXPORT PartyActionType
1265 {
1266  /// \copydoc PartyActionType
1267  enum Enum
1268  {
1269  NoValue = 0xFF, ///< No value.
1270  HaltTrading = 1, ///< Halt trading.
1271  Reinstate = 2, ///< Reinstate.
1272  };
1273 };
1274 
1275 /// Returns string representation.
1276 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyActionType::Enum);
1277 
1278 /// Party detail role qualifier.
1279 struct ONIXS_EUREX_ETI_EXPORT PartyDetailRoleQualifier
1280 {
1281  /// \copydoc PartyDetailRoleQualifier
1282  enum Enum
1283  {
1284  NoValue = 0xFF, ///< No value.
1285  Trader = 10, ///< Trader.
1286  HeadTrader = 11, ///< Head Trader.
1287  Supervisor = 12, ///< Supervisor.
1288  };
1289 };
1290 
1291 /// Returns string representation.
1292 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyDetailRoleQualifier::Enum);
1293 
1294 /// Party detail status.
1295 struct ONIXS_EUREX_ETI_EXPORT PartyDetailStatus
1296 {
1297  /// \copydoc PartyDetailStatus
1298  enum Enum
1299  {
1300  NoValue = 0xFF, ///< No value.
1301  Active = 0, ///< Active.
1302  Suspend = 1, ///< Suspend.
1303  Rejected = 2, ///< Rejected.
1304  };
1305 };
1306 
1307 /// Returns string representation.
1308 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyDetailStatus::Enum);
1309 
1310 /// Reason for a responder reject.
1311 struct ONIXS_EUREX_ETI_EXPORT PartyDetailStatusInformation
1312 {
1313  /// \copydoc PartyDetailStatusInformation
1314  enum Enum
1315  {
1316  NoValue = 0xFF, ///< No value.
1317  TRRTHRESHOLDTOOBIG = 1, ///< High TRR (TradeToRequestRatio) threshold.
1318  BLOCKALLANONYMOUS = 2, ///< Anonymous negotiation blocked by responder.
1319  };
1320 };
1321 
1322 /// Returns string representation.
1323 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyDetailStatusInformation::Enum);
1324 
1325 /// Entering Business Unit.
1326 struct ONIXS_EUREX_ETI_EXPORT PartyIdEnteringFirm
1327 {
1328  /// \copydoc PartyIdEnteringFirm
1329  enum Enum
1330  {
1331  NoValue = 0xFF, ///< No value.
1332  Participant = 1, ///< Participant.
1333  MarketSupervision = 2, ///< Market Supervision.
1334  };
1335 };
1336 
1337 /// Returns string representation.
1338 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyIdEnteringFirm::Enum);
1339 
1340 /// Party ID origination market.
1341 struct ONIXS_EUREX_ETI_EXPORT PartyIdOriginationMarket
1342 {
1343  /// \copydoc PartyIdOriginationMarket
1344  enum Enum
1345  {
1346  NoValue = 0xFF, ///< No value.
1347  XKFE = 1, ///< Korea Exchange.
1348  };
1349 };
1350 
1351 /// Returns string representation.
1352 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyIdOriginationMarket::Enum);
1353 
1354 /// Settlement institution.
1355 struct ONIXS_EUREX_ETI_EXPORT PartyIdSettlementLocation
1356 {
1357  /// \copydoc PartyIdSettlementLocation
1358  enum Enum
1359  {
1360  NoValue = 0xFF, ///< No value.
1361  ClearstremBankingFrankfurt = 1, ///< Clearstrem Banking Frankfurt.
1362  ClearstremBankingLuxemburg = 2, ///< Clearstrem Banking Luxemburg.
1363  CLSGroup = 3, ///< CLS Group.
1364  Euroclear = 4, ///< Euroclear.
1365  };
1366 };
1367 
1368 /// Returns string representation.
1369 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyIdSettlementLocation::Enum);
1370 
1371 /// Party ID investment decision maker qualifier.
1372 struct ONIXS_EUREX_ETI_EXPORT PartyIdInvestmentDecisionMakerQualifier
1373 {
1374  /// \copydoc PartyIdInvestmentDecisionMakerQualifier
1375  enum Enum
1376  {
1377  NoValue = 0xFF, ///< No value.
1378  Algo = 22, ///< Algo.
1379  Human = 24, ///< Human/Natural person.
1380  };
1381 };
1382 
1383 /// Returns string representation.
1384 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyIdInvestmentDecisionMakerQualifier::Enum);
1385 
1386 /// Instruction to show buy-side user information.
1387 struct ONIXS_EUREX_ETI_EXPORT PartyOrderOriginationDisclosureInstruction
1388 {
1389  /// \copydoc PartyOrderOriginationDisclosureInstruction
1390  enum Enum
1391  {
1392  NoValue = 0xFF, ///< No value.
1393  No = 0, ///< No.
1394  Yes = 1, ///< Yes.
1395  };
1396 };
1397 
1398 /// Returns string representation.
1399 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyOrderOriginationDisclosureInstruction::Enum);
1400 
1401 /// Party sub-type.
1402 struct ONIXS_EUREX_ETI_EXPORT PartySubIdType
1403 {
1404  /// \copydoc PartySubIdType
1405  enum Enum
1406  {
1407  NoValue = 0xFF, ///< No value.
1408  Buyer = 14001, ///< Buyer.
1409  Seller = 14002, ///< Seller.
1410  };
1411 };
1412 
1413 /// Returns string representation.
1414 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartySubIdType::Enum);
1415 
1416 /// Field is used for Eurex position management purposes and indicates whether the order is submitted to open or close a
1417 /// position.
1418 struct ONIXS_EUREX_ETI_EXPORT PositionEffect
1419 {
1420  /// \copydoc PositionEffect
1421  enum Enum
1422  {
1423  NoValue = 0x00, ///< No value.
1424  Close = 'C', ///< Close.
1425  Open = 'O', ///< Open.
1426  };
1427 };
1428 
1429 /// Returns string representation.
1430 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PositionEffect::Enum);
1431 
1432 /// Price disclosure instruction.
1433 struct ONIXS_EUREX_ETI_EXPORT PriceDisclosureInstruction
1434 {
1435  /// \copydoc PriceDisclosureInstruction
1436  enum Enum
1437  {
1438  NoValue = 0xFF, ///< No value.
1439  No = 0, ///< No.
1440  Yes = 1, ///< Yes.
1441  };
1442 };
1443 
1444 /// Returns string representation.
1445 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PriceDisclosureInstruction::Enum);
1446 
1447 /// Indicator how price validity check should be performed by the exchange.
1448 struct ONIXS_EUREX_ETI_EXPORT PriceValidityCheckType
1449 {
1450  /// \copydoc PriceValidityCheckType
1451  enum Enum
1452  {
1453  NoValue = 0xFF, ///< No value.
1454  None = 0, ///< None.
1455  Optional = 1, ///< Optional.
1456  Mandatory = 2, ///< Mandatory.
1457  };
1458 };
1459 
1460 /// Returns string representation.
1461 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PriceValidityCheckType::Enum);
1462 
1463 /// This field qualifies an instrument type on Eurex.
1464 struct ONIXS_EUREX_ETI_EXPORT ProductComplex
1465 {
1466  /// \copydoc ProductComplex
1467  enum Enum
1468  {
1469  NoValue = 0xFF, ///< No value.
1470  SimpleInstrument = 1, ///< Simple instrument.
1471  StandardOptionStrategy = 2, ///< Standard Option Strategy.
1472  NonStandardOptionStrategy = 3, ///< Non-Standard Option Strategy.
1473  VolatilityStrategy = 4, ///< Volatility Strategy.
1474  FuturesSpread = 5, ///< Futures Spread.
1475  InterProductSpread = 6, ///< Inter-Product Spread.
1476  StandardFutureStrategy = 7, ///< Standard Future Strategy.
1477  PackAndBundle = 8, ///< Pack and Bundle.
1478  Strip = 9, ///< Strip.
1479  FlexibleSimpleInstrument = 10, ///< Flexible Simple Instrument.
1480  CommodityStrip = 11, ///< Commodity Strip.
1481  ScaledSimpleInstrument = 12, ///< Scaled Simple Instrument.
1482  NonStandardVolatilityStrategy = 13, ///< Non-Standard Volatility Strategy.
1483  };
1484 };
1485 
1486 /// Returns string representation.
1487 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ProductComplex::Enum);
1488 
1489 /// Indicates whether an option contract is a put or call.
1490 struct ONIXS_EUREX_ETI_EXPORT PutOrCall
1491 {
1492  /// \copydoc PutOrCall
1493  enum Enum
1494  {
1495  NoValue = 0xFF, ///< No value.
1496  Put = 0, ///< Put.
1497  Call = 1, ///< Call.
1498  };
1499 };
1500 
1501 /// Returns string representation.
1502 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PutOrCall::Enum);
1503 
1504 /// Reason for quote cancellation.
1505 struct ONIXS_EUREX_ETI_EXPORT QuoteCancelReason
1506 {
1507  /// \copydoc QuoteCancelReason
1508  enum Enum
1509  {
1510  NoValue = 0xFF, ///< No value.
1511  Expired = 5, ///< Expired.
1512  };
1513 };
1514 
1515 /// Returns string representation.
1516 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteCancelReason::Enum);
1517 
1518 /// Status of the quote.
1519 struct ONIXS_EUREX_ETI_EXPORT QuoteCondition
1520 {
1521  /// \copydoc QuoteCondition
1522  enum Enum
1523  {
1524  NoValue = 0x00, ///< No value.
1525  Active = 'A', ///< Active.
1526  Closed = 'B', ///< Closed.
1527  Suspended = 'z', ///< Suspended.
1528  Expired = '8', ///< Expired.
1529  };
1530 };
1531 
1532 /// Returns string representation.
1533 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteCondition::Enum);
1534 
1535 /// Reason code indicating why the quote entry has been rejected.
1536 struct ONIXS_EUREX_ETI_EXPORT QuoteEntryRejectReason
1537 {
1538  /// \copydoc QuoteEntryRejectReason
1539  enum Enum
1540  {
1541  NoValue = 0xFF, ///< No value.
1542  UnknownSecurity = 1, ///< Unknown security.
1543  DuplicateQuote = 6, ///< Duplicate quote.
1544  InvalidPrice = 8, ///< Invalid price.
1545  NoReferencePriceAvailable = 16, ///< Reference price not available.
1546  NoSingleSidedQuotes = 100, ///< Single sided quotes not allowed.
1547  InvalidQuotingModel = 103, ///< Invalid usage of quoting model.
1548  InvalidSize = 106, ///< Invalid size.
1549  InvalidUnderlyingPrice = 107, ///< Invalid underlying price.
1550  BidPriceNotReasonable = 108, ///< Bid price not reasonable.
1551  AskPriceNotReasonable = 109, ///< Ask price not reasonable.
1552  BidPriceExceedsRange = 110, ///< Bid price exceeds extended price range.
1553  AskPriceExceedsRange = 111, ///< Ask price exceeds extended price range.
1554  InstrumentStateFreeze = 115, ///< Instrument state freeze.
1555  DeletionAlreadyPending = 116, ///< Deletion already pending.
1556  EntitlementNotAssignedForUnderlying = 119, ///< Entitlement not assigned for underlying.
1557  CurrentlyNotTradeableOnBook = 124, ///< Instrument is currently not tradeable on book.
1558  QuantityLimitExceeded = 125, ///< Quantity exceeds trader specific limit.
1559  ValueLimitExceeded = 126, ///< Value exceeds trader specific limit.
1560  InvalidQuoteSpread = 127, ///< Invalid quote spread.
1561  BookOrCancel = 128, ///< Book-or-Cancel quote type.
1562  CantProcInCurrInstrState = 131, ///< Instrument state does not allow processing.
1563  InvalidQuoteType = 134, ///< Invalid quote type.
1564  TradingIndicationRunningForTrader = 143, ///< Trading indication running for trader.
1565  OnBookTradingDisabledForInstrumentType = 144, ///< On-Book trading disabled for instrument type.
1566  LiquidityProviderProtectionBidSideCancelled = 147, ///< Liquidity provider protection bid side cancelled.
1567  LiquidityProviderProtectionAskSideCancelled = 148, ///< Liquidity provider protection ask side cancelled.
1568  OutsideQuotingPeriod = 155, ///< Quote entry outside quoting period not allowed.
1569  MatchPriceNotOnPriceStep =
1570  156, ///< Match price resulting from entry of the matching quote is not a valid price step.
1571  QuantityLimitExceedsTSL = 161, ///< Quantity exceeds transaction size limit.
1572  TooManyOrdersAndQuotesInOrderBook = 163, ///< Too many orders and quotes in order book.
1573  ContractCannotBeTradedDueToInsufficientEligibility =
1574  166, ///< Contract cannot be traded due to insufficient eligibility.
1575  UnderlyingPriceTimeout = 167, ///< the VF underlying price timed out, rejection of quote.
1576  BUSuspendARPLevel3SoftBreach = 168, ///< the BU is suspended due to an ARP level 3 soft breach.
1577  NoClearingProductAssignment = 169, ///< incoming quote pair rejected due to no clearing product assignment.
1578  };
1579 };
1580 
1581 /// Returns string representation.
1582 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEntryRejectReason::Enum);
1583 
1584 /// Identifies the status of an individual quote.
1585 struct ONIXS_EUREX_ETI_EXPORT QuoteEntryStatus
1586 {
1587  /// \copydoc QuoteEntryStatus
1588  enum Enum
1589  {
1590  NoValue = 0xFF, ///< No value.
1591  Accepted = 0, ///< Accepted with warning.
1592  Rejected = 5, ///< Rejected.
1593  RemovedAndRejected = 6, ///< Removed from Market.
1594  Pending = 10, ///< Pending.
1595  };
1596 };
1597 
1598 /// Returns string representation.
1599 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEntryStatus::Enum);
1600 
1601 /// Indicates whether the quote added or removed liquidity.
1602 struct ONIXS_EUREX_ETI_EXPORT QuoteEventLiquidityInd
1603 {
1604  /// \copydoc QuoteEventLiquidityInd
1605  enum Enum
1606  {
1607  NoValue = 0xFF, ///< No value.
1608  AddedLiquidity = 1, ///< Added Liquidity.
1609  RemovedLiquidity = 2, ///< Removed Liquidity.
1610  Auction = 4, ///< Auction.
1611  };
1612 };
1613 
1614 /// Returns string representation.
1615 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEventLiquidityInd::Enum);
1616 
1617 /// Additional information why quote side was removed.
1618 struct ONIXS_EUREX_ETI_EXPORT QuoteEventReason
1619 {
1620  /// \copydoc QuoteEventReason
1621  enum Enum
1622  {
1623  NoValue = 0xFF, ///< No value.
1624  PendingCancellationExecuted = 14, ///< Pending Cancellation Executed.
1625  InvalidPrice = 15, ///< Invalid Price.
1626  CrossRejected = 16, ///< Quote subject to crossing and match prevented.
1627  BookOrCancel = 17, ///< Quote deleted due to Book-or-Cancel quote type.
1628  PLP = 18, ///< Quote deleted due to passive liquidity protection.
1629  };
1630 };
1631 
1632 /// Returns string representation.
1633 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEventReason::Enum);
1634 
1635 /// Side of the quote.
1636 struct ONIXS_EUREX_ETI_EXPORT QuoteEventSide
1637 {
1638  /// \copydoc QuoteEventSide
1639  enum Enum
1640  {
1641  NoValue = 0xFF, ///< No value.
1642  Buy = 1, ///< Buy.
1643  Sell = 2, ///< Sell.
1644  };
1645 };
1646 
1647 /// Returns string representation.
1648 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEventSide::Enum);
1649 
1650 /// Conveys the quote event type.
1651 struct ONIXS_EUREX_ETI_EXPORT QuoteEventType
1652 {
1653  /// \copydoc QuoteEventType
1654  enum Enum
1655  {
1656  NoValue = 0xFF, ///< No value.
1657  ModifiedQuoteSide = 2, ///< Modified side.
1658  RemovedQuoteSide = 3, ///< Removed Quote Side.
1659  PartiallyFilled = 4, ///< Partially Filled.
1660  Filled = 5, ///< Filled.
1661  RemovedQuantity = 6, ///< Quantity removed.
1662  };
1663 };
1664 
1665 /// Returns string representation.
1666 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEventType::Enum);
1667 
1668 /// Quoting instruction.
1669 struct ONIXS_EUREX_ETI_EXPORT QuoteInstruction
1670 {
1671  /// \copydoc QuoteInstruction
1672  enum Enum
1673  {
1674  NoValue = 0xFF, ///< No value.
1675  DoNotQuote = 0, ///< Do not re-quote.
1676  Quote = 1, ///< (Re-)Quote.
1677  };
1678 };
1679 
1680 /// Returns string representation.
1681 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteInstruction::Enum);
1682 
1683 /// Identifies the quoting model.
1684 struct ONIXS_EUREX_ETI_EXPORT QuoteSizeType
1685 {
1686  /// \copydoc QuoteSizeType
1687  enum Enum
1688  {
1689  NoValue = 0xFF, ///< No value.
1690  TotalSize = 1, ///< Total Size (Quote Modification).
1691  OpenSize = 2, ///< Open Size(Quote Entry).
1692  };
1693 };
1694 
1695 /// Returns string representation.
1696 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteSizeType::Enum);
1697 
1698 /// Sub-type or qualifier of QuoteType.
1699 struct ONIXS_EUREX_ETI_EXPORT QuoteSubType
1700 {
1701  /// \copydoc QuoteSubType
1702  enum Enum
1703  {
1704  NoValue = 0xFF, ///< No value.
1705  WorkingDelta = 1, ///< Working Delta.
1706  BasisTrade = 2, ///< Basis Trade.
1707  Regular = 3, ///< Regular LDS Negotiation.
1708  NegotiateUnderlyingOutsideExchange = 4, ///< Negotiate the underlying outside the exchange.
1709  VolaStrategyFix = 5, ///< Option Volatility Strategy with fixed Underlying price and delta.
1710  VolaStrategyNegotiateUnderlying =
1711  6, ///< Option Volatility Strategy - Underlying price is negotiated on exchange.
1712  };
1713 };
1714 
1715 /// Returns string representation.
1716 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteSubType::Enum);
1717 
1718 /// Quote type.
1719 struct ONIXS_EUREX_ETI_EXPORT QuoteType
1720 {
1721  /// \copydoc QuoteType
1722  enum Enum
1723  {
1724  NoValue = 0xFF, ///< No value.
1725  Indicative = 0, ///< Indicative (for Continuous Auction Issuer trading model and Eurex/Xetra EnLight only).
1726  Tradeable = 1, ///< Tradeable.
1727  TradeableBOC = 100, ///< Tradeable(BOC).
1728  };
1729 };
1730 
1731 /// Returns string representation.
1732 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteType::Enum);
1733 
1734 /// Quoting status for the executing party.
1735 struct ONIXS_EUREX_ETI_EXPORT QuotingStatus
1736 {
1737  /// \copydoc QuotingStatus
1738  enum Enum
1739  {
1740  NoValue = 0xFF, ///< No value.
1741  OpenActive = 1, ///< Open/Active.
1742  OpenIdle = 2, ///< Open/Working.
1743  ClosedInactive = 3, ///< Closed/Inactive.
1744  };
1745 };
1746 
1747 /// Returns string representation.
1748 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuotingStatus::Enum);
1749 
1750 /// Reference to the unique application identifier.
1751 struct ONIXS_EUREX_ETI_EXPORT RefApplId
1752 {
1753  /// \copydoc RefApplId
1754  enum Enum
1755  {
1756  NoValue = 0xFF, ///< No value.
1757  Trade = 1, ///< Trade.
1758  News = 2, ///< News.
1759  ServiceAvailability = 3, ///< Service Availability.
1760  SessionData = 4, ///< Session Data.
1761  ListenerData = 5, ///< Listener Data.
1762  RiskControl = 6, ///< Risk Control.
1763  TESMaintenance = 7, ///< TES Maintenance.
1764  TESTrade = 8, ///< TES Trade.
1765  SRQSMaintenance = 9, ///< SRQS Maintenance.
1766  ServiceAvailabilityMarket = 10, ///< Service Availability Market.
1767  };
1768 };
1769 
1770 /// Returns string representation.
1771 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RefApplId::Enum);
1772 
1773 /// Instrument type of the original Eurex strategy.
1774 struct ONIXS_EUREX_ETI_EXPORT RelatedProductComplex
1775 {
1776  /// \copydoc RelatedProductComplex
1777  enum Enum
1778  {
1779  NoValue = 0xFF, ///< No value.
1780  StandardOptionStrategy = 2, ///< Standard Option Strategy.
1781  NonStandardOptionStrategy = 3, ///< Non-Standard Option Strategy.
1782  VolatilityStrategy = 4, ///< Volatility Strategy.
1783  FuturesSpread = 5, ///< Futures Spread.
1784  InterProductSpread = 6, ///< Inter-Product Spread.
1785  StandardFutureStrategy = 7, ///< Standard Future Strategy.
1786  PackAndBundle = 8, ///< Pack and Bundle.
1787  Strip = 9, ///< Strip.
1788  CommodityStrip = 11, ///< Commodity Strip.
1789  ScaledSimpleInstrument = 12, ///< Scaled Simple Instrument.
1790  NonStandardVolatilityStrategy = 13, ///< Non-Standard Volatility Strategy.
1791  };
1792 };
1793 
1794 /// Returns string representation.
1795 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RelatedProductComplex::Enum);
1796 
1797 /// Requesting party ID entering firm.
1798 struct ONIXS_EUREX_ETI_EXPORT RequestingPartyIdEnteringFirm
1799 {
1800  /// \copydoc RequestingPartyIdEnteringFirm
1801  enum Enum
1802  {
1803  NoValue = 0xFF, ///< No value.
1804  Participant = 1, ///< Participant.
1805  MarketSupervision = 2, ///< Market Supervision.
1806  };
1807 };
1808 
1809 /// Returns string representation.
1810 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RequestingPartyIdEnteringFirm::Enum);
1811 
1812 /// System ID (1 = Eurex Clearing).
1813 struct ONIXS_EUREX_ETI_EXPORT RequestingPartyIdExecutingSystem
1814 {
1815  /// \copydoc RequestingPartyIdExecutingSystem
1816  enum Enum
1817  {
1818  NoValue = 0xFF, ///< No value.
1819  EurexClearing = 1, ///< Eurex Clearing.
1820  T7 = 2, ///< T7 trading system.
1821  };
1822 };
1823 
1824 /// Returns string representation.
1825 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RequestingPartyIdExecutingSystem::Enum);
1826 
1827 /// Party type initiating SRQS deal deletion.
1828 struct ONIXS_EUREX_ETI_EXPORT RequestingPartySubIdType
1829 {
1830  /// \copydoc RequestingPartySubIdType
1831  enum Enum
1832  {
1833  NoValue = 0xFF, ///< No value.
1834  Requester = 5000, ///< Requester.
1835  Responder = 5001, ///< Responder.
1836  Both = 5002, ///< Both (Requester and Responder).
1837  System = 5003, ///< System.
1838  };
1839 };
1840 
1841 /// Returns string representation.
1842 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RequestingPartySubIdType::Enum);
1843 
1844 /// Specifies the type of respondents requested.
1845 struct ONIXS_EUREX_ETI_EXPORT RespondentType
1846 {
1847  /// \copydoc RespondentType
1848  enum Enum
1849  {
1850  NoValue = 0xFF, ///< No value.
1851  AllMarketParticipants = 1, ///< Respondents are known during a negotiation.
1852  Anonymous =
1853  102, ///< Respondents are anonymized after negotiation start, Requester will remain anonymous from start.
1854  };
1855 };
1856 
1857 /// Returns string representation.
1858 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RespondentType::Enum);
1859 
1860 /// Reversal cancellation reason.
1861 struct ONIXS_EUREX_ETI_EXPORT ReversalCancellationReason
1862 {
1863  /// \copydoc ReversalCancellationReason
1864  enum Enum
1865  {
1866  NoValue = 0xFF, ///< No value.
1867  TASChange = 1, ///< TES Activity State Change.
1868  IntradayExpiration = 2, ///< Instrument Expiration.
1869  InstrumentDeletion = 3, ///< Instrument Deletion.
1870  InstrumentSuspension = 4, ///< Instrument Suspension.
1871  };
1872 };
1873 
1874 /// Returns string representation.
1875 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ReversalCancellationReason::Enum);
1876 
1877 /// Indicator whether the reversal of the TES trade is electronically requested or not.
1878 struct ONIXS_EUREX_ETI_EXPORT ReversalIndicator
1879 {
1880  /// \copydoc ReversalIndicator
1881  enum Enum
1882  {
1883  NoValue = 0xFF, ///< No value.
1884  No = 0, ///< No.
1885  Yes = 1, ///< Yes.
1886  };
1887 };
1888 
1889 /// Returns string representation.
1890 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ReversalIndicator::Enum);
1891 
1892 /// State of the Risk Control Retransmission Service.
1893 struct ONIXS_EUREX_ETI_EXPORT RiskControlRtmServiceStatus
1894 {
1895  /// \copydoc RiskControlRtmServiceStatus
1896  enum Enum
1897  {
1898  NoValue = 0xFF, ///< No value.
1899  Unavailable = 0, ///< Unavailable.
1900  Available = 1, ///< Available.
1901  };
1902 };
1903 
1904 /// Returns string representation.
1905 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskControlRtmServiceStatus::Enum);
1906 
1907 /// Risk limit action.
1908 struct ONIXS_EUREX_ETI_EXPORT RiskLimitAction
1909 {
1910  /// \copydoc RiskLimitAction
1911  enum Enum
1912  {
1913  NoValue = 0xFF, ///< No value.
1914  QueueInbound = 0, ///< Queue Inbound.
1915  Reject = 2, ///< Reject.
1916  Warning = 4, ///< Warning.
1917  };
1918 };
1919 
1920 /// Returns string representation.
1921 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitAction::Enum);
1922 
1923 /// Scope for Pre-Trade risk limits.
1924 struct ONIXS_EUREX_ETI_EXPORT RiskLimitPlatform
1925 {
1926  /// \copydoc RiskLimitPlatform
1927  enum Enum
1928  {
1929  NoValue = 0xFF, ///< No value.
1930  OnBook = 0, ///< On-Book.
1931  OffBook = 1, ///< Off-Book(TES).
1932  };
1933 };
1934 
1935 /// Returns string representation.
1936 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitPlatform::Enum);
1937 
1938 /// Requesting party role for a pre-trade risk limit.
1939 struct ONIXS_EUREX_ETI_EXPORT RiskLimitRequestingPartyRole
1940 {
1941  /// \copydoc RiskLimitRequestingPartyRole
1942  enum Enum
1943  {
1944  NoValue = 0xFF, ///< No value.
1945  ClearingFirm = 4, ///< requested by Clearing firm.
1946  Exchange = 22, ///< requested by Exchange.
1947  ExecutingUnit = 59, ///< requested by Executing firm.
1948  };
1949 };
1950 
1951 /// Returns string representation.
1952 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitRequestingPartyRole::Enum);
1953 
1954 /// Risk Limit Result for failed events.
1955 struct ONIXS_EUREX_ETI_EXPORT RiskLimitResult
1956 {
1957  /// \copydoc RiskLimitResult
1958  enum Enum
1959  {
1960  NoValue = 0xFF, ///< No value.
1961  DisabledForBu = 10580, ///< Margin Based Risk Limits not enabled for business unit.
1962  LowRRAEventID = 10581, ///< Received Remaining Risk Allowance event ID is lower than lowest entry in Temporary
1963  ///< Transaction List.
1964  HighRRAEventID =
1965  10582, ///< Received Remaining Risk Allowance event ID exceeds last entry in Temporary Transaction List.
1966  };
1967 };
1968 
1969 /// Returns string representation.
1970 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitResult::Enum);
1971 
1972 /// Type of risk limits.
1973 struct ONIXS_EUREX_ETI_EXPORT RiskLimitType
1974 {
1975  /// \copydoc RiskLimitType
1976  enum Enum
1977  {
1978  NoValue = 0xFF, ///< No value.
1979  LongLimit = 4, ///< Long limit.
1980  ShortLimit = 5, ///< Short limit.
1981  };
1982 };
1983 
1984 /// Returns string representation.
1985 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitType::Enum);
1986 
1987 /// Indicator for a pre-trade risk limit violation.
1988 struct ONIXS_EUREX_ETI_EXPORT RiskLimitViolationIndicator
1989 {
1990  /// \copydoc RiskLimitViolationIndicator
1991  enum Enum
1992  {
1993  NoValue = 0xFF, ///< No value.
1994  No = 0, ///< No.
1995  Yes = 1, ///< Yes.
1996  };
1997 };
1998 
1999 /// Returns string representation.
2000 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitViolationIndicator::Enum);
2001 
2002 /// Qualifier for field PartyIdInvestmentDecisionMaker. Members/participants will have the possibility to specify an
2003 /// Investment qualifier value to distinguish between natural persons and Algos.
2004 struct ONIXS_EUREX_ETI_EXPORT RootPartyIdInvestmentDecisionMakerQualifier
2005 {
2006  /// \copydoc RootPartyIdInvestmentDecisionMakerQualifier
2007  enum Enum
2008  {
2009  NoValue = 0xFF, ///< No value.
2010  Algo = 22, ///< Algo.
2011  Human = 24, ///< Human/Natural person.
2012  };
2013 };
2014 
2015 /// Returns string representation.
2016 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RootPartyIdInvestmentDecisionMakerQualifier::Enum);
2017 
2018 /// RootParty sub-type.
2019 struct ONIXS_EUREX_ETI_EXPORT RootPartySubIdType
2020 {
2021  /// \copydoc RootPartySubIdType
2022  enum Enum
2023  {
2024  NoValue = 0xFF, ///< No value.
2025  Buyer = 4001, ///< Buyer.
2026  Seller = 4002, ///< Seller.
2027  Broker = 4003, ///< Broker.
2028  };
2029 };
2030 
2031 /// Returns string representation.
2032 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RootPartySubIdType::Enum);
2033 
2034 /// Status of Secondary ETI Gateway.
2035 struct ONIXS_EUREX_ETI_EXPORT SecondaryGatewayStatus
2036 {
2037  /// \copydoc SecondaryGatewayStatus
2038  enum Enum
2039  {
2040  NoValue = 0xFF, ///< No value.
2041  Standby = 0, ///< Standby.
2042  Active = 1, ///< Active.
2043  };
2044 };
2045 
2046 /// Returns string representation.
2047 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SecondaryGatewayStatus::Enum);
2048 
2049 /// State of the Selective Service for Quote Retransmission Service.
2050 struct ONIXS_EUREX_ETI_EXPORT SelectiveRequestForQuoteRtmServiceStatus
2051 {
2052  /// \copydoc SelectiveRequestForQuoteRtmServiceStatus
2053  enum Enum
2054  {
2055  NoValue = 0xFF, ///< No value.
2056  Unavailable = 0, ///< Unavailable.
2057  Available = 1, ///< Available.
2058  };
2059 };
2060 
2061 /// Returns string representation.
2062 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SelectiveRequestForQuoteRtmServiceStatus::Enum);
2063 
2064 /// State of the selective service for quote service.
2065 struct ONIXS_EUREX_ETI_EXPORT SelectiveRequestForQuoteServiceStatus
2066 {
2067  /// \copydoc SelectiveRequestForQuoteServiceStatus
2068  enum Enum
2069  {
2070  NoValue = 0xFF, ///< No value.
2071  Unavailable = 0, ///< Unavailable.
2072  Available = 1, ///< Available.
2073  };
2074 };
2075 
2076 /// Returns string representation.
2077 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SelectiveRequestForQuoteServiceStatus::Enum);
2078 
2079 /// Indicate the instruction for SMP. If MatchInstCrossID (28744) is set then the default value for
2080 /// SelfMatchPreventionInstruction is 100 (Reject cross on business unit level).
2081 struct ONIXS_EUREX_ETI_EXPORT SelfMatchPreventionInstruction
2082 {
2083  /// \copydoc SelfMatchPreventionInstruction
2084  enum Enum
2085  {
2086  NoValue = 0xFF, ///< No value.
2087  CrossRejectedBU = 100, ///< Reject cross on business unit level.
2088  CrossRejectedMarket = 101, ///< Reject cross on market level.
2089  };
2090 };
2091 
2092 /// Returns string representation.
2093 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SelfMatchPreventionInstruction::Enum);
2094 
2095 /// Type of Eurex ETI session.
2096 struct ONIXS_EUREX_ETI_EXPORT SessionMode
2097 {
2098  /// \copydoc SessionMode
2099  enum Enum
2100  {
2101  NoValue = 0xFF, ///< No value.
2102  ETIHF = 1, ///< ETI HF.
2103  ETILF = 2, ///< ETI LF.
2104  GUI = 3, ///< GUI.
2105  FIXLF = 4, ///< FIX LF.
2106  };
2107 };
2108 
2109 /// Returns string representation.
2110 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SessionMode::Enum);
2111 
2112 /// Error code.
2113 struct ONIXS_EUREX_ETI_EXPORT SessionRejectReason
2114 {
2115  /// \copydoc SessionRejectReason
2116  enum Enum
2117  {
2118  NoValue = 0xFF, ///< No value.
2119  RequiredTagMissing = 1, ///< Required Tag Missing.
2120  ValueIsIncorrect = 5, ///< Value is incorrect (out of range) for this tag.
2121  DecryptionProblem = 7, ///< Decryption problem.
2122  InvalidMsgID = 11, ///< Invalid TemplateID.
2123  IncorrectNumInGroupCount = 16, ///< Incorrect NumInGroup count for repeating group.
2124  Other = 99, ///< Other.
2125  ThrottleLimitExceeded = 100, ///< Throttle limit exceeded.
2126  ExposureLimitExceeded = 101, ///< Stale request was not forwarded to T7.
2127  ServiceTemporarilyNotAvailable = 102, ///< Service temporarily not available.
2128  ServiceNotAvailable = 103, ///< Service not available.
2129  OutboundConversionError = 105, ///< Error converting response or broadcast.
2130  HeartbeatViolation = 152, ///< Heartbeat violation error.
2131  InternalTechnicalError = 200, ///< Internal technical error.
2132  ValidationError = 210, ///< Validation Error.
2133  UserAlreadyLoggedIn = 211, ///< User already logged in.
2134  GatewayIsStandby = 216, ///< Gateway is standby.
2135  SessionLoginLimitReached = 217, ///< Session login limit (per time interval) reached.
2136  UserEntitlementDataTimeout = 223, ///< User Entitlement Data time out.
2137  PSGatewaySessionLimitReached = 224, ///< Session limit reached (per PS Gateway and Business Unit).
2138  UserLoginLimitReached = 225, ///< User login tries limit (per time interval) reached.
2139  OutstandingLoginsBuLimitReached =
2140  226, ///< Limit of outstanding session/user logins reached (per Business Unit).
2141  OutstandingLoginsSessionLimitReached = 227, ///< Limit of outstanding session/user logins reached (per Session).
2142  PasswordTimestampNotInGracePeriod = 228, ///< Password timestamp not in grace period.
2143  OrderNotFound = 10000, ///< Order not found.
2144  PriceNotReasonable = 10001, ///< Price not reasonable.
2145  ClientOrderIDNotUnique = 10002, ///< Duplicate Order (ClOrdID).
2146  QuoteActivationInProgress =
2147  10003, ///< another quote activation request is pending for the same Product / Instrument Type / SessionID.
2148  StopBidPriceNotReasonable = 10006, ///< Stop buy price not reasonable.
2149  StopAskPriceNotReasonable = 10007, ///< Stop sell price not reasonable.
2150  OrderNotExecutableWithinValidity = 10008, ///< GFD order is not executable on current business day.
2151  CreateCIThrottleExceeded = 10010, ///< Throttle limit for creation of complex instrument exceeded.
2152  TransactionNotAllowedInCurrentState = 10011, ///< Order maintenance not allowed in current state.
2153  RequiredMinLotSizeNotReached = 10013, ///< Required min lot size not reached.
2154  };
2155 };
2156 
2157 /// Returns string representation.
2158 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SessionRejectReason::Enum);
2159 
2160 /// Status of an ETI session.
2161 struct ONIXS_EUREX_ETI_EXPORT SessionStatus
2162 {
2163  /// \copydoc SessionStatus
2164  enum Enum
2165  {
2166  NoValue = 0xFF, ///< No value.
2167  Active = 0, ///< Session active.
2168  Logout = 4, ///< Session logout complete.
2169  };
2170 };
2171 
2172 /// Returns string representation.
2173 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SessionStatus::Enum);
2174 
2175 /// Session sub mode.
2176 struct ONIXS_EUREX_ETI_EXPORT SessionSubMode
2177 {
2178  /// \copydoc SessionSubMode
2179  enum Enum
2180  {
2181  NoValue = 0xFF, ///< No value.
2182  RegularTradingSession = 0, ///< Regular Trading Session.
2183  RegularBackOfficeSession = 2, ///< Regular Back Office Session.
2184  };
2185 };
2186 
2187 /// Returns string representation.
2188 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SessionSubMode::Enum);
2189 
2190 /// Settlement method for a contract or instrument.
2191 struct ONIXS_EUREX_ETI_EXPORT SettlMethod
2192 {
2193  /// \copydoc SettlMethod
2194  enum Enum
2195  {
2196  NoValue = 0x00, ///< No value.
2197  CashSettlement = 'C', ///< Cash Settlement.
2198  PhysicalSettlement = 'P', ///< Physical Settlement.
2199  };
2200 };
2201 
2202 /// Returns string representation.
2203 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SettlMethod::Enum);
2204 
2205 /// Instruction to show last deal information after negotiation closure.
2206 struct ONIXS_EUREX_ETI_EXPORT ShowLastDealOnClosure
2207 {
2208  /// \copydoc ShowLastDealOnClosure
2209  enum Enum
2210  {
2211  NoValue = 0xFF, ///< No value.
2212  No = 0, ///< No.
2213  Yes = 1, ///< Yes.
2214  };
2215 };
2216 
2217 /// Returns string representation.
2218 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ShowLastDealOnClosure::Enum);
2219 
2220 /// Side of the order.
2221 struct ONIXS_EUREX_ETI_EXPORT Side
2222 {
2223  /// \copydoc Side
2224  enum Enum
2225  {
2226  NoValue = 0xFF, ///< No value.
2227  Buy = 1, ///< Buy.
2228  Sell = 2, ///< Sell.
2229  };
2230 };
2231 
2232 /// Returns string representation.
2233 ONIXS_EUREX_ETI_EXPORT std::string enumToString(Side::Enum);
2234 
2235 /// Instruction to show side.
2236 struct ONIXS_EUREX_ETI_EXPORT SideDisclosureInstruction
2237 {
2238  /// \copydoc SideDisclosureInstruction
2239  enum Enum
2240  {
2241  NoValue = 0xFF, ///< No value.
2242  No = 0, ///< No.
2243  Yes = 1, ///< Yes.
2244  };
2245 };
2246 
2247 /// Returns string representation.
2248 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SideDisclosureInstruction::Enum);
2249 
2250 /// Side is locked.
2251 struct ONIXS_EUREX_ETI_EXPORT SideIsLocked
2252 {
2253  /// \copydoc SideIsLocked
2254  enum Enum
2255  {
2256  NoValue = 0xFF, ///< No value.
2257  No = 0, ///< No.
2258  Yes = 1, ///< Yes.
2259  };
2260 };
2261 
2262 /// Returns string representation.
2263 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SideIsLocked::Enum);
2264 
2265 /// Order initiator is passive or aggressor.
2266 struct ONIXS_EUREX_ETI_EXPORT SideLiquidityInd
2267 {
2268  /// \copydoc SideLiquidityInd
2269  enum Enum
2270  {
2271  NoValue = 0xFF, ///< No value.
2272  AddedLiquidity = 1, ///< Added liquidity (passive).
2273  RemovedLiquidity = 2, ///< Removed liquidity (aggressive, includes triggered orders).
2274  Auction = 4, ///< Auction.
2275  };
2276 };
2277 
2278 /// Returns string representation.
2279 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SideLiquidityInd::Enum);
2280 
2281 /// Sub-type of a trade type.
2282 struct ONIXS_EUREX_ETI_EXPORT SideTrdSubTyp
2283 {
2284  /// \copydoc SideTrdSubTyp
2285  enum Enum
2286  {
2287  NoValue = 0xFF, ///< No value.
2288  BlockTrade = 2001, ///< Block Trade.
2289  TradeAtMarket = 2004, ///< Trade at Market.
2290  };
2291 };
2292 
2293 /// Returns string representation.
2294 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SideTrdSubTyp::Enum);
2295 
2296 /// Indicator to skip validations.
2297 struct ONIXS_EUREX_ETI_EXPORT SkipValidations
2298 {
2299  /// \copydoc SkipValidations
2300  enum Enum
2301  {
2302  NoValue = 0xFF, ///< No value.
2303  False = 0, ///< False.
2304  True = 1, ///< True.
2305  };
2306 };
2307 
2308 /// Returns string representation.
2309 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SkipValidations::Enum);
2310 
2311 /// Swap clearer for EFS Trades only.
2312 struct ONIXS_EUREX_ETI_EXPORT SwapClearer
2313 {
2314  /// \copydoc SwapClearer
2315  enum Enum
2316  {
2317  NoValue = 0xFF, ///< No value.
2318  ECAG = 0, ///< Eurex Clearing.
2319  NONECAG = 1, ///< Non-Eurex Clearing.
2320  };
2321 };
2322 
2323 /// Returns string representation.
2324 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SwapClearer::Enum);
2325 
2326 /// Informs if Trade Entry Retransmission Service is active for grouping of Eurex products.
2327 struct ONIXS_EUREX_ETI_EXPORT T7EntryServiceRtmStatus
2328 {
2329  /// \copydoc T7EntryServiceRtmStatus
2330  enum Enum
2331  {
2332  NoValue = 0xFF, ///< No value.
2333  Unavailable = 0, ///< Unavailable.
2334  Available = 1, ///< Available.
2335  };
2336 };
2337 
2338 /// Returns string representation.
2339 ONIXS_EUREX_ETI_EXPORT std::string enumToString(T7EntryServiceRtmStatus::Enum);
2340 
2341 /// Informs if Trade Entry Service is active for grouping of Eurex products.
2342 struct ONIXS_EUREX_ETI_EXPORT T7EntryServiceStatus
2343 {
2344  /// \copydoc T7EntryServiceStatus
2345  enum Enum
2346  {
2347  NoValue = 0xFF, ///< No value.
2348  Unavailable = 0, ///< Unavailable.
2349  Available = 1, ///< Available.
2350  };
2351 };
2352 
2353 /// Returns string representation.
2354 ONIXS_EUREX_ETI_EXPORT std::string enumToString(T7EntryServiceStatus::Enum);
2355 
2356 /// Execution and trading restriction parameters supported by Eurex.
2357 struct ONIXS_EUREX_ETI_EXPORT TimeInForce
2358 {
2359  /// \copydoc TimeInForce
2360  enum Enum
2361  {
2362  NoValue = 0xFF, ///< No value.
2363  Day = 0, ///< Day (GFD).
2364  GTC = 1, ///< Good Till Cancelled (GTC) - Standard Orders only.
2365  IOC = 3, ///< Immediate or Cancel (IOC).
2366  FOK = 4, ///< Fill Or Kill (FOK).
2367  GTD = 6, ///< Good Till Date (GTD) - Standard Orders only.
2368  };
2369 };
2370 
2371 /// Returns string representation.
2372 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TimeInForce::Enum);
2373 
2374 /// Trading session event type.
2375 struct ONIXS_EUREX_ETI_EXPORT TradSesEvent
2376 {
2377  /// \copydoc TradSesEvent
2378  enum Enum
2379  {
2380  NoValue = 0xFF, ///< No value.
2381  StartOfService = 101, ///< Start of Service.
2382  MarketReset = 102, ///< Market Reset.
2383  EndOfRestatement = 103, ///< End of Restatement.
2384  EndOfDayService = 104, ///< End of Service.
2385  ServiceResumed = 105, ///< Service Resumed.
2386  };
2387 };
2388 
2389 /// Returns string representation.
2390 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradSesEvent::Enum);
2391 
2392 /// Trading session mode.
2393 struct ONIXS_EUREX_ETI_EXPORT TradSesMode
2394 {
2395  /// \copydoc TradSesMode
2396  enum Enum
2397  {
2398  NoValue = 0xFF, ///< No value.
2399  Testing = 1, ///< Development.
2400  Simulated = 2, ///< Simulation.
2401  Production = 3, ///< Production.
2402  Acceptance = 4, ///< Acceptance.
2403  DisasterRecovery = 5, ///< Disaster Recovery.
2404  };
2405 };
2406 
2407 /// Returns string representation.
2408 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradSesMode::Enum);
2409 
2410 /// Trade Aggregation Identifier.
2411 struct ONIXS_EUREX_ETI_EXPORT TradeAggregationTransType
2412 {
2413  /// \copydoc TradeAggregationTransType
2414  enum Enum
2415  {
2416  NoValue = 0xFF, ///< No value.
2417  New = 0, ///< New.
2418  };
2419 };
2420 
2421 /// Returns string representation.
2422 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeAggregationTransType::Enum);
2423 
2424 /// Status of an allocation in a Trade Entry Service trade.
2425 struct ONIXS_EUREX_ETI_EXPORT TradeAllocStatus
2426 {
2427  /// \copydoc TradeAllocStatus
2428  enum Enum
2429  {
2430  NoValue = 0xFF, ///< No value.
2431  Pending = 1, ///< Pending.
2432  Approved = 2, ///< Approved.
2433  AutoApproved = 3, ///< Auto Approved.
2434  Uploaded = 4, ///< Uploaded.
2435  Canceled = 5, ///< Canceled.
2436  PendingReversal = 7, ///< Pending Reversal.
2437  ApprovedReversal = 8, ///< Side Approved Reversal.
2438  Reversed = 9, ///< Reversed.
2439  CancelledReversal = 10, ///< Cancelled Reversal.
2440  };
2441 };
2442 
2443 /// Returns string representation.
2444 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeAllocStatus::Enum);
2445 
2446 /// Informs if trade broadcast dissemination is active for a grouping of Eurex products.
2447 struct ONIXS_EUREX_ETI_EXPORT TradeManagerStatus
2448 {
2449  /// \copydoc TradeManagerStatus
2450  enum Enum
2451  {
2452  NoValue = 0xFF, ///< No value.
2453  Unavailable = 0, ///< Unavailable.
2454  Available = 1, ///< Available.
2455  };
2456 };
2457 
2458 /// Returns string representation.
2459 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeManagerStatus::Enum);
2460 
2461 /// Indicates trade platform. Can only be used for EEX.
2462 struct ONIXS_EUREX_ETI_EXPORT TradePlatform
2463 {
2464  /// \copydoc TradePlatform
2465  enum Enum
2466  {
2467  NoValue = 0xFF, ///< No value.
2468  OffBook = 0, ///< Off-Book.
2469  OnBook = 1, ///< On-Book.
2470  };
2471 };
2472 
2473 /// Returns string representation.
2474 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradePlatform::Enum);
2475 
2476 /// Indicates if a trade should be reported via the market reporting service.
2477 struct ONIXS_EUREX_ETI_EXPORT TradePublishIndicator
2478 {
2479  /// \copydoc TradePublishIndicator
2480  enum Enum
2481  {
2482  NoValue = 0xFF, ///< No value.
2483  DoNotPublishTrade = 0, ///< Do not publish trade.
2484  PublishTrade = 1, ///< Publish trade.
2485  DeferredPublication = 2, ///< Deferred publication to market.
2486  Published = 3, ///< Published to market.
2487  };
2488 };
2489 
2490 /// Returns string representation.
2491 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradePublishIndicator::Enum);
2492 
2493 /// Identifies the type of trade notification.
2494 struct ONIXS_EUREX_ETI_EXPORT TradeReportType
2495 {
2496  /// \copydoc TradeReportType
2497  enum Enum
2498  {
2499  NoValue = 0xFF, ///< No value.
2500  Submit = 0, ///< Submit.
2501  Alleged = 1, ///< Alleged.
2502  Accept = 2, ///< Accept.
2503  Decline = 3, ///< Decline.
2504  NoWasReplaced = 5, ///< No/Was (Replaced).
2505  TradeReportCancel = 6, ///< Trade Report Cancel.
2506  TradeBreak = 7, ///< (Locked-In) Trade Break.
2507  AllegedNew = 11, ///< Alleged New.
2508  AllegedNoWas = 13, ///< Alleged No/Was.
2509  };
2510 };
2511 
2512 /// Returns string representation.
2513 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeReportType::Enum);
2514 
2515 /// Trade request transaction type.
2516 struct ONIXS_EUREX_ETI_EXPORT TradeRequestResult
2517 {
2518  /// \copydoc TradeRequestResult
2519  enum Enum
2520  {
2521  NoValue = 0xFF, ///< No value.
2522  CancelPending = 100, ///< Deal cancellation pending.
2523  CancelDeclined = 101, ///< Deal cancellation declined.
2524  CancelApproved = 102, ///< Deal cancellation approved.
2525  };
2526 };
2527 
2528 /// Returns string representation.
2529 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeRequestResult::Enum);
2530 
2531 /// Trade to Quote Ratio (TQR) Ranking.
2532 struct ONIXS_EUREX_ETI_EXPORT TradeToQuoteRatioRanking
2533 {
2534  /// \copydoc TradeToQuoteRatioRanking
2535  enum Enum
2536  {
2537  NoValue = 0xFF, ///< No value.
2538  Low = 1, ///< Low.
2539  Medium = 2, ///< Medium.
2540  High = 3, ///< High.
2541  };
2542 };
2543 
2544 /// Returns string representation.
2545 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeToQuoteRatioRanking::Enum);
2546 
2547 /// This field designates if the trader is acting in the capacity of agent, trading for its own account or acting as a
2548 /// market maker.
2549 struct ONIXS_EUREX_ETI_EXPORT TradingCapacity
2550 {
2551  /// \copydoc TradingCapacity
2552  enum Enum
2553  {
2554  NoValue = 0xFF, ///< No value.
2555  Customer = 1, ///< Customer (Agency).
2556  Principal = 5, ///< Principal (Proprietary).
2557  MarketMaker = 6, ///< Market Maker.
2558  };
2559 };
2560 
2561 /// Returns string representation.
2562 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradingCapacity::Enum);
2563 
2564 /// Marks a a certain order as a closing auction one.
2565 struct ONIXS_EUREX_ETI_EXPORT TradingSessionSubId
2566 {
2567  /// \copydoc TradingSessionSubId
2568  enum Enum
2569  {
2570  NoValue = 0xFF, ///< No value.
2571  OpeningAuction = 2, ///< Opening or opening auction.
2572  ClosingAuction = 4, ///< Closing or closing auction.
2573  AnyAuction = 8, ///< Any auction.
2574  };
2575 };
2576 
2577 /// Returns string representation.
2578 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradingSessionSubId::Enum);
2579 
2580 /// Indicator for a delayed transaction.
2581 struct ONIXS_EUREX_ETI_EXPORT TransactionDelayIndicator
2582 {
2583  /// \copydoc TransactionDelayIndicator
2584  enum Enum
2585  {
2586  NoValue = 0xFF, ///< No value.
2587  NotDelayed = 0, ///< Transaction not delayed.
2588  Delayed = 1, ///< Transaction delayed.
2589  };
2590 };
2591 
2592 /// Returns string representation.
2593 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TransactionDelayIndicator::Enum);
2594 
2595 /// Identifies the role for which the trade notification is received.
2596 struct ONIXS_EUREX_ETI_EXPORT TransferReason
2597 {
2598  /// \copydoc TransferReason
2599  enum Enum
2600  {
2601  NoValue = 0xFF, ///< No value.
2602  Owner = 1, ///< Owner.
2603  Clearer = 2, ///< Clearer.
2604  };
2605 };
2606 
2607 /// Returns string representation.
2608 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TransferReason::Enum);
2609 
2610 /// SRQS deal status.
2611 struct ONIXS_EUREX_ETI_EXPORT TrdRptStatus
2612 {
2613  /// \copydoc TrdRptStatus
2614  enum Enum
2615  {
2616  NoValue = 0xFF, ///< No value.
2617  Accepted = 0, ///< Accepted.
2618  Rejected = 1, ///< Rejected.
2619  Cancelled = 2, ///< Cancelled.
2620  PendingNew = 4, ///< Pending new.
2621  PendingCancel = 5, ///< Pending Cancel.
2622  Terminated = 7, ///< Terminated.
2623  DeemedVerified = 9, ///< Deemed verified.
2624  };
2625 };
2626 
2627 /// Returns string representation.
2628 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TrdRptStatus::Enum);
2629 
2630 /// Indicates if a trade should be reported via the market reporting service.
2631 struct ONIXS_EUREX_ETI_EXPORT TrdType
2632 {
2633  /// \copydoc TrdType
2634  enum Enum
2635  {
2636  NoValue = 0xFF, ///< No value.
2637  BlockTrade = 1, ///< Block Trade.
2638  ExchangeForSwap = 12, ///< Exchange for Swap.
2639  VolaTrade = 1000, ///< Vola Trade.
2640  EFPFinTrade = 1001, ///< EFP-Fin Trade.
2641  EFPIndexFuturesTrade = 1002, ///< EFP-Index Futures Trade.
2642  TradeAtMarket = 1004, ///< Trade at Market.
2643  Enlight = 1006, ///< Eurex/Xetra Enlight triggered trade.
2644  BLOCKQTPIP = 1007, ///< QTPIP BLOCK TRADE.
2645  BTRF = 1010, ///< Basket of Equity Total Return Futures.
2646  EBB = 1011, ///< Equity Bespoke Baskets.
2647  DeltaNeutralTradeAtMarket = 1017, ///< Delta Neutral Trade at Market.
2648  };
2649 };
2650 
2651 /// Returns string representation.
2652 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TrdType::Enum);
2653 
2654 /// Indicates if an order has been previously triggered.
2655 struct ONIXS_EUREX_ETI_EXPORT Triggered
2656 {
2657  /// \copydoc Triggered
2658  enum Enum
2659  {
2660  NoValue = 0xFF, ///< No value.
2661  NotTriggered = 0, ///< Not Triggered.
2662  TriggeredStop = 1, ///< Triggered Stop.
2663  TriggeredOCO = 2, ///< Triggered OCO.
2664  };
2665 };
2666 
2667 /// Returns string representation.
2668 ONIXS_EUREX_ETI_EXPORT std::string enumToString(Triggered::Enum);
2669 
2670 /// User status.
2671 struct ONIXS_EUREX_ETI_EXPORT UserStatus
2672 {
2673  /// \copydoc UserStatus
2674  enum Enum
2675  {
2676  NoValue = 0xFF, ///< No value.
2677  UserForcedLogout = 7, ///< Forced user logout by exchange.
2678  UserStopped = 10, ///< Admission to trading suspended .
2679  UserReleased = 11, ///< Suspension revoked.
2680  };
2681 };
2682 
2683 /// Returns string representation.
2684 ONIXS_EUREX_ETI_EXPORT std::string enumToString(UserStatus::Enum);
2685 
2686 /// Indicator for checking the Minimum Lot Size by the exchange. Only used for EEX. Mandatory if TrdRptStatus=4
2687 /// (Pending_New).
2688 struct ONIXS_EUREX_ETI_EXPORT ValueCheckTypeMinLotSize
2689 {
2690  /// \copydoc ValueCheckTypeMinLotSize
2691  enum Enum
2692  {
2693  NoValue = 0xFF, ///< No value.
2694  DoNotCheck = 0, ///< Do not check.
2695  Check = 1, ///< Check.
2696  };
2697 };
2698 
2699 /// Returns string representation.
2700 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ValueCheckTypeMinLotSize::Enum);
2701 
2702 /// Indicator for checking the maximum order or quote quantity by the exchange.
2703 struct ONIXS_EUREX_ETI_EXPORT ValueCheckTypeQuantity
2704 {
2705  /// \copydoc ValueCheckTypeQuantity
2706  enum Enum
2707  {
2708  NoValue = 0xFF, ///< No value.
2709  DoNotCheck = 0, ///< Do not check.
2710  Check = 1, ///< Check.
2711  };
2712 };
2713 
2714 /// Returns string representation.
2715 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ValueCheckTypeQuantity::Enum);
2716 
2717 /// Indicator for checking the maximum order/quote value by the exchange.
2718 struct ONIXS_EUREX_ETI_EXPORT ValueCheckTypeValue
2719 {
2720  /// \copydoc ValueCheckTypeValue
2721  enum Enum
2722  {
2723  NoValue = 0xFF, ///< No value.
2724  DoNotCheck = 0, ///< Do not check.
2725  Check = 1, ///< Check.
2726  };
2727 };
2728 
2729 /// Returns string representation.
2730 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ValueCheckTypeValue::Enum);
2731 
2732 /// Template IDs.
2733 struct ONIXS_EUREX_ETI_EXPORT TemplateId
2734 {
2735  /// \copydoc TemplateId
2736  enum Enum
2737  {
2738  Unknown = 0, ///< Unknown.
2739  AddComplexInstrumentRequest = 10301, ///< Add Complex Instrument Request.
2740  AddComplexInstrumentResponse = 10302, ///< Add Complex Instrument Response.
2741  AddFlexibleInstrumentRequest = 10309, ///< Add Flexible Instrument Request.
2742  AddFlexibleInstrumentResponse = 10310, ///< Add Flexible Instrument Response.
2743  AddScaledSimpleInstrumentRequest = 10327, ///< Add Scaled Simple Instrument Request.
2744  AddScaledSimpleInstrumentResponse = 10328, ///< Add Scaled Simple Instrument Response.
2745  AmendBasketTradeRequest = 10629, ///< Amend Basket Trade Request.
2746  ApproveBasketTradeRequest = 10623, ///< Approve Basket Trade Request.
2747  ApproveReverseTESTradeRequest = 10631, ///< Approve Reverse TES Trade Request.
2748  ApproveTESTradeRequest = 10603, ///< Approve TES Trade Request.
2749  BasketApproveBroadcast = 10627, ///< Basket Approve Broadcast.
2750  BasketBroadcast = 10625, ///< Basket Broadcast.
2751  BasketDeleteBroadcast = 10626, ///< Basket Delete Broadcast.
2752  BasketExecutionBroadcast = 10628, ///< Basket Execution Broadcast.
2753  BasketResponse = 10624, ///< Basket Response.
2754  BroadcastErrorNotification = 10032, ///< Broadcast Error Notification.
2755  CLIPDeletionNotification = 10134, ///< CLIP Deletion Notification.
2756  CLIPExecutionNotification = 10135, ///< CLIP Execution Notification.
2757  CLIPResponse = 10133, ///< CLIP Response.
2758  CrossRequest = 10118, ///< Cross Request.
2759  CrossRequestResponse = 10119, ///< Cross Request Response.
2760  DeleteAllOrderBroadcast = 10122, ///< Delete All Order Broadcast.
2761  DeleteAllOrderNRResponse = 10124, ///< Delete All Order NR Response.
2762  DeleteAllOrderQuoteEventBroadcast = 10308, ///< Delete All Order Quote Event Broadcast.
2763  DeleteAllOrderRequest = 10120, ///< Delete All Order Request.
2764  DeleteAllOrderResponse = 10121, ///< Delete All Order Response.
2765  DeleteAllQuoteBroadcast = 10410, ///< Delete All Quote Broadcast.
2766  DeleteAllQuoteRequest = 10408, ///< Delete All Quote Request.
2767  DeleteAllQuoteResponse = 10409, ///< Delete All Quote Response.
2768  DeleteBasketTradeRequest = 10622, ///< Delete Basket Trade Request.
2769  DeleteCLIPRequest = 10132, ///< Delete CLIP Request.
2770  DeleteOrderBroadcast = 10112, ///< Delete Order Broadcast.
2771  DeleteOrderComplexRequest = 10123, ///< Delete Order Complex Request.
2772  DeleteOrderNRResponse = 10111, ///< Delete Order NR Response.
2773  DeleteOrderRequest = 10142, ///< Delete Order Request.
2774  DeleteOrderResponse = 10110, ///< Delete Order Response.
2775  DeleteOrderSingleRequest = 10109, ///< Delete Order Single Request.
2776  DeleteTESTradeRequest = 10602, ///< Delete TES Trade Request.
2777  EnterBasketTradeRequest = 10620, ///< Enter Basket Trade Request.
2778  EnterCLIPRequest = 10131, ///< Enter CLIP Request.
2779  EnterTESTradeRequest = 10600, ///< Enter TES Trade Request.
2780  ForcedLogoutNotification = 10012, ///< Forced Logout Notification.
2781  ForcedUserLogoutNotification = 10043, ///< Forced User Logout Notification.
2782  Heartbeat = 10011, ///< Heartbeat.
2783  HeartbeatNotification = 10023, ///< Heartbeat Notification.
2784  InquireEnrichmentRuleIdListRequest = 10040, ///< Inquire Enrichment Rule Id List Request.
2785  InquireEnrichmentRuleIdListResponse = 10041, ///< Inquire Enrichment Rule Id List Response.
2786  InquireMMParameterRequest = 10305, ///< Inquire MM Parameter Request.
2787  InquireMMParameterResponse = 10306, ///< Inquire MM Parameter Response.
2788  InquireMarginBasedRiskLimitRequest = 10323, ///< Inquire Margin Based Risk Limit Request.
2789  InquireMarginBasedRiskLimitResponse = 10324, ///< Inquire Margin Based Risk Limit Response.
2790  InquirePreTradeRiskLimitsRequest = 10311, ///< Inquire Pre Trade Risk Limits Request.
2791  InquireSessionListRequest = 10035, ///< Inquire Session List Request.
2792  InquireSessionListResponse = 10036, ///< Inquire Session List Response.
2793  InquireUserRequest = 10038, ///< Inquire User Request.
2794  InquireUserResponse = 10039, ///< Inquire User Response.
2795  LegalNotificationBroadcast = 10037, ///< Legal Notification Broadcast.
2796  LogonRequest = 10000, ///< Logon Request.
2797  LogonRequestEncrypted = 19000, ///< Logon Request Encrypted.
2798  LogonResponse = 10001, ///< Logon Response.
2799  LogoutRequest = 10002, ///< Logout Request.
2800  LogoutResponse = 10003, ///< Logout Response.
2801  MMParameterDefinitionRequest = 10303, ///< MM Parameter Definition Request.
2802  MMParameterDefinitionResponse = 10304, ///< MM Parameter Definition Response.
2803  MassOrder = 10115, ///< Mass Order.
2804  MassOrderAck = 10116, ///< Mass Order Ack.
2805  MassQuoteRequest = 10405, ///< Mass Quote Request.
2806  MassQuoteResponse = 10406, ///< Mass Quote Response.
2807  ModifyBasketTradeRequest = 10621, ///< Modify Basket Trade Request.
2808  ModifyOrderComplexRequest = 10114, ///< Modify Order Complex Request.
2809  ModifyOrderComplexShortRequest = 10130, ///< Modify Order Complex Short Request.
2810  ModifyOrderNRResponse = 10108, ///< Modify Order NR Response.
2811  ModifyOrderRequest = 10140, ///< Modify Order Request.
2812  ModifyOrderResponse = 10107, ///< Modify Order Response.
2813  ModifyOrderShortRequest = 10141, ///< Modify Order Short Request.
2814  ModifyOrderSingleRequest = 10106, ///< Modify Order Single Request.
2815  ModifyOrderSingleShortRequest = 10126, ///< Modify Order Single Short Request.
2816  ModifyTESTradeRequest = 10601, ///< Modify TES Trade Request.
2817  NewOrderComplexRequest = 10113, ///< New Order Complex Request.
2818  NewOrderComplexShortRequest = 10129, ///< New Order Complex Short Request.
2819  NewOrderNRResponse = 10102, ///< New Order NR Response.
2820  NewOrderRequest = 10138, ///< New Order Request.
2821  NewOrderResponse = 10101, ///< New Order Response.
2822  NewOrderShortRequest = 10139, ///< New Order Short Request.
2823  NewOrderSingleRequest = 10100, ///< New Order Single Request.
2824  NewOrderSingleShortRequest = 10125, ///< New Order Single Short Request.
2825  NewsBroadcast = 10031, ///< News Broadcast.
2826  OrderExecNotification = 10104, ///< Order Exec Notification.
2827  OrderExecReportBroadcast = 10117, ///< Order Exec Report Broadcast.
2828  OrderExecResponse = 10103, ///< Order Exec Response.
2829  PartyActionReport = 10042, ///< Party Action Report.
2830  PartyEntitlementsUpdateReport = 10034, ///< Party Entitlements Update Report.
2831  PingRequest = 10320, ///< Ping Request.
2832  PingResponse = 10321, ///< Ping Response.
2833  PreTradeRiskLimitResponse = 10313, ///< Pre Trade Risk Limit Response.
2834  PreTradeRiskLimitsDefinitionRequest = 10312, ///< Pre Trade Risk Limits Definition Request.
2835  QuoteActivationNotification = 10411, ///< Quote Activation Notification.
2836  QuoteActivationRequest = 10403, ///< Quote Activation Request.
2837  QuoteActivationResponse = 10404, ///< Quote Activation Response.
2838  QuoteExecutionReport = 10407, ///< Quote Execution Report.
2839  RFQRequest = 10401, ///< RFQ Request.
2840  RFQResponse = 10402, ///< RFQ Response.
2841  Reject = 10010, ///< Reject.
2842  RetransmitMEMessageRequest = 10026, ///< Retransmit ME Message Request.
2843  RetransmitMEMessageResponse = 10027, ///< Retransmit ME Message Response.
2844  RetransmitRequest = 10008, ///< Retransmit Request.
2845  RetransmitResponse = 10009, ///< Retransmit Response.
2846  ReverseTESTradeRequest = 10630, ///< Reverse TES Trade Request.
2847  RiskNotificationBroadcast = 10033, ///< Risk Notification Broadcast.
2848  SRQSCreateDealNotification = 10708, ///< SRQS Create Deal Notification.
2849  SRQSDealNotification = 10709, ///< SRQS Deal Notification.
2850  SRQSDealResponse = 10705, ///< SRQS Deal Response.
2851  SRQSEnterQuoteRequest = 10702, ///< SRQS Enter Quote Request.
2852  SRQSHitQuoteRequest = 10704, ///< SRQS Hit Quote Request.
2853  SRQSInquireSmartRespondentRequest = 10718, ///< SRQS Inquire Smart Respondent Request.
2854  SRQSInquireSmartRespondentResponse = 10719, ///< SRQS Inquire Smart Respondent Response.
2855  SRQSNegotiationNotification = 10713, ///< SRQS Negotiation Notification.
2856  SRQSNegotiationRequesterNotification = 10712, ///< SRQS Negotiation Requester Notification.
2857  SRQSNegotiationStatusNotification = 10715, ///< SRQS Negotiation Status Notification.
2858  SRQSOpenNegotiationNotification = 10711, ///< SRQS Open Negotiation Notification.
2859  SRQSOpenNegotiationRequest = 10700, ///< SRQS Open Negotiation Request.
2860  SRQSOpenNegotiationRequesterNotification = 10710, ///< SRQS Open Negotiation Requester Notification.
2861  SRQSQuoteNotification = 10707, ///< SRQS Quote Notification.
2862  SRQSQuoteResponse = 10703, ///< SRQS Quote Response.
2863  SRQSQuoteSnapshotNotification = 10723, ///< SRQS Quote Snapshot Notification.
2864  SRQSQuoteSnapshotRequest = 10720, ///< SRQS Quote Snapshot Request.
2865  SRQSQuotingStatusRequest = 10717, ///< SRQS Quoting Status Request.
2866  SRQSResponse = 10722, ///< SRQS Response.
2867  SRQSStatusBroadcast = 10714, ///< SRQS Status Broadcast.
2868  SRQSUpdateDealStatusRequest = 10706, ///< SRQS Update Deal Status Request.
2869  SRQSUpdateNegotiationRequest = 10701, ///< SRQS Update Negotiation Request.
2870  ServiceAvailabilityBroadcast = 10030, ///< Service Availability Broadcast.
2871  ServiceAvailabilityMarketBroadcast = 10044, ///< Service Availability Market Broadcast.
2872  StatusBroadcast = 10045, ///< Status Broadcast.
2873  SubscribeRequest = 10025, ///< Subscribe Request.
2874  SubscribeResponse = 10005, ///< Subscribe Response.
2875  TESApproveBroadcast = 10607, ///< TES Approve Broadcast.
2876  TESBroadcast = 10604, ///< TES Broadcast.
2877  TESDeleteBroadcast = 10606, ///< TES Delete Broadcast.
2878  TESExecutionBroadcast = 10610, ///< TES Execution Broadcast.
2879  TESResponse = 10611, ///< TES Response.
2880  TESReversalBroadcast = 10632, ///< TES Reversal Broadcast.
2881  TESTradeBroadcast = 10614, ///< TES Trade Broadcast.
2882  TESTradingSessionStatusBroadcast = 10615, ///< TES Trading Session Status Broadcast.
2883  TESUploadBroadcast = 10613, ///< TES Upload Broadcast.
2884  TMTradingSessionStatusBroadcast = 10501, ///< TM Trading Session Status Broadcast.
2885  ThrottleUpdateNotification = 10028, ///< Throttle Update Notification.
2886  TradeBroadcast = 10500, ///< Trade Broadcast.
2887  TradingSessionStatusBroadcast = 10307, ///< Trading Session Status Broadcast.
2888  UnsubscribeRequest = 10006, ///< Unsubscribe Request.
2889  UnsubscribeResponse = 10007, ///< Unsubscribe Response.
2890  UpdateRemainingRiskAllowanceBaseRequest = 10325, ///< Update Remaining Risk Allowance Base Request.
2891  UpdateRemainingRiskAllowanceBaseResponse = 10326, ///< Update Remaining Risk Allowance Base Response.
2892  UploadTESTradeRequest = 10612, ///< Upload TES Trade Request.
2893  UserLoginRequest = 10018, ///< User Login Request.
2894  UserLoginRequestEncrypted = 19018, ///< User Login Request Encrypted.
2895  UserLoginResponse = 10019, ///< User Login Response.
2896  UserLogoutRequest = 10029, ///< User Logout Request.
2897  UserLogoutResponse = 10024, ///< User Logout Response.
2898  };
2899 };
2900 
2901 /// Returns string representation.
2902 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TemplateId::Enum);
2903 
2904 }}} // namespace OnixS::Eurex::Trading
Reason for quote cancellation.
Enum
Price decomposition method for legs of a complex instrument.
Enum
Indicates if the participant application is an order routing system.
RFQ Response Message.
Definition: RFQResponse.h:35
Enum
Party ID investment decision maker qualifier.
Conveys the quote event type.
Enum
Indicates if the order is a Lean Order or a Standard (non lean) Order.
Definition: Enumerations.h:85
Type of the Cross Request.
Definition: Enumerations.h:223
Enum
Indicates a retransmission message.
Definition: Enumerations.h:70
Indicates whether an option contract is a put or call.
Execution and trading restriction parameters supported by Eurex.
Enum
Instruction to show buy-side user information.
Enum
Indication for the hedge transaction.
Definition: Enumerations.h:570
Swap clearer for EFS Trades only.
Indicates if the participant application is an order routing system.
Enum
Used to indicate anonymized trades in baskets.
Definition: Enumerations.h:150
Indicates the auction type the trade originates from.
Definition: Enumerations.h:921
Indicator for a pre-trade risk limit violation.
Enum
Side of the order in the original Eurex strategy.
Identifies the status of an individual quote.
Enum
Indicator whether the reversal of the TES trade is electronically requested or not.
Enum
State of the Risk Control Retransmission Service.
Prioritization of a cross order.
Definition: Enumerations.h:208
Instrument type of the original Eurex strategy.
State of the selective service for quote service.
Enum
Leaves quantity disclosure instruction.
Definition: Enumerations.h:726
Enum
Reference to the unique application identifier.
Enum
Informs if Trade Entry Service is active for grouping of Eurex products.
Enum
Side of the order.
Mass Order Message.
Definition: MassOrder.h:71
Indicator for checking the maximum order or quote quantity by the exchange.
Logon Response Message.
Definition: LogonResponse.h:18
Indicator to skip validations.
Settlement method for a contract or instrument.
Enum
The point in the matching process at which this trade was matched.
Definition: Enumerations.h:942
Enum
Indicator how price validity check should be performed by the exchange.
Enum
Specifies the type of respondents requested.
Enum
Type of the Cross Request.
Definition: Enumerations.h:226
Enum
Indicates if a trade should be reported via the market reporting service.
Trading session event type.
Enlight RFQ Average Response Rate Ranking.
Definition: Enumerations.h:327
Enum
Indicates whether an option contract is a put or call.
Enum
The side of the individual leg of a strategy.
Definition: Enumerations.h:789
Type of exercise of an instrument.
Definition: Enumerations.h:487
Informs if Trade Entry Retransmission Service is active for grouping of Eurex products.
Trade request transaction type.
Instructions for order handling, represented as a bit map.
Definition: Enumerations.h:390
New Order Request Message.
Enum
Instruction to show total quantity.
Enum
Sub-type (qualifier) of market data.
Definition: Enumerations.h:834
Enum
Informs if Trade Entry Retransmission Service is active for grouping of Eurex products.
Enum
Indicator for a delayed transaction.
Enum
Scope for Pre-Trade risk limits.
Enum
Informs if trading is active for grouping of Eurex products.
Definition: Enumerations.h:961
Enum
Role on/for a message.
Definition: Enumerations.h:615
Reason for mass cancellation.
Definition: Enumerations.h:862
Action that caused the event to occur.
State of the Selective Service for Quote Retransmission Service.
Informs if trading is active for grouping of Eurex products.
Definition: Enumerations.h:958
Enum
The reason why this message was generated.
Definition: Enumerations.h:454
Enum
Indicator for a pre-trade risk limit violation.
RFQ Request Message.
Definition: RFQRequest.h:35
Enum
Trade to Quote Ratio (TQR) Ranking.
Enlight RFQ Average Response Time Ranking.
Definition: Enumerations.h:343
Enum
Code to represent the type of instrument attribute.
Definition: Enumerations.h:630
Mass Quote Request Message.
Enum
This field qualifies an instrument type on Eurex.
Enum
State of the Selective Service for Quote Retransmission Service.
Enum
Instructions for order handling, represented as a bit map.
Definition: Enumerations.h:393
Enum
Swap clearer for EFS Trades only.
Enum
Requesting party role for a pre-trade risk limit.
Leaves quantity disclosure instruction.
Definition: Enumerations.h:723
Enum
Indicates if a trade should be reported via the market reporting service.
Enum
Identifies the status of an individual quote.
Enum
State of the News Retransmission Service.
Enum
Instruction to show last deal quantity. Can only be set to 1 (Yes) if LastQtyDisclosureInstruction = ...
Definition: Enumerations.h:711
Enum
Status of an allocation in a Trade Entry Service trade.
Reason code indicating why the quote entry has been rejected.
Enum
Order origination, MiFID field - to indicate order received from a direct access or sponsored access ...
Specifies the type of action requested.
Definition: Enumerations.h:905
Ping Response Message.
Definition: PingResponse.h:35
Reject Message.
Definition: Reject.h:35
Enum
Settlement method for a contract or instrument.
Enum
Status of an ETI session.
Enum
Instruction to show last deal price.
Definition: Enumerations.h:696
Enum
Indicator for checking open orders and quotes.
Definition: Enumerations.h:649
Enum
Party type initiating SRQS deal deletion.
State of the News Retransmission Service.
Enum
Risk Limit Result for failed events.
Indicates if an order has been previously triggered.
Side of the order in the original Eurex strategy.
Enum
Restriction for MassActionType (1373) = Release_quotes (2).
Definition: Enumerations.h:894
Status of an allocation in a Trade Entry Service trade.
Party type initiating SRQS deal deletion.
Enum
Code to further qualify the field ExecType (150) of the Execution Report (8) message.
Definition: Enumerations.h:411
State of the Risk Control Retransmission Service.
CLIP Response Message.
Definition: CLIPResponse.h:62
Enum
Indicates if an order has been previously triggered.
Sub-type of a trade type.
Indicates if the trade resulted from a single order or a multi leg order.
Definition: Enumerations.h:990
Indicates whether a option strategy synthetic BBO is used for the price improvement check...
Definition: Enumerations.h:581
Enum
Indicates whether the quote added or removed liquidity.
Instruction to show last deal information after negotiation closure.
Party ID investment decision maker qualifier.
Sub-type (qualifier) of market data.
Definition: Enumerations.h:831
Enum
Specifies the type of action requested.
Definition: Enumerations.h:908
Indicates if the trade notification results from an order or quote.
Enum
Identifies the quoting model.
Instruction to show buy-side user information.
User Login Request Message.
Indicates if a trade should be reported via the market reporting service.
Indicator for checking the maximum order/quote value by the exchange.
Code to represent the type of instrument attribute.
Definition: Enumerations.h:627
Identifies the type of trade notification.
Trade to Quote Ratio (TQR) Ranking.
Indicates whether the order added or removed liquidity.
Definition: Enumerations.h:502
TES Response Message.
Definition: TESResponse.h:35
Instruction to show total number of Respondents in a SRQS event.
Enum
Transaction effect on a basket.
Definition: Enumerations.h:315
Code to further qualify the field ExecType (150) of the Execution Report (8) message.
Definition: Enumerations.h:408
Enum
Instruction to show last deal information after negotiation closure.
Enum
Indicates if the trade notification results from an order or quote.
Requesting party role for a pre-trade risk limit.
Side of the order.
Enum
Indicator for checking the maximum order/quote value by the exchange.
Indicator for checking open orders and quotes.
Definition: Enumerations.h:646
Specifies if a strategy is temporarily (user-defined) or permanently (predefined) available...
Enum
State of the selective service for quote service.
Informs if trade broadcast dissemination is active for a grouping of Eurex products.
Enum
Instruction to show total number of Respondents in a SRQS event.
Type of quote processing.
Definition: Enumerations.h:130
Enum
Type of quote processing.
Definition: Enumerations.h:133
Indicates whether the quote added or removed liquidity.
Marks a a certain order as a closing auction one.
New Order Response Message.
Enum
Trading session event type.
Indicator whether the reversal of the TES trade is electronically requested or not.
Enum
Reason code indicating why the quote entry has been rejected.
Enum
Identifier for subscription and retransmission of an ETI data stream.
Definition: Enumerations.h:33
The reason why this message was generated.
Definition: Enumerations.h:451
Instruction to show last deal quantity. Can only be set to 1 (Yes) if LastQtyDisclosureInstruction = ...
Definition: Enumerations.h:708
Code to represent the type of event.
Definition: Enumerations.h:375
Role on/for a message.
Definition: Enumerations.h:612
Enum
Code to represent the type of event.
Definition: Enumerations.h:378
Instruction to show total quantity.
Ping Request Message.
Definition: PingRequest.h:35
Specifies the type of respondents requested.
Enum
Reason for quote cancellation.
Additional information why quote side was removed.
Indicates trade platform. Can only be used for EEX.
Informs if Trade Entry Service is active for grouping of Eurex products.
Enum
Prioritization of a cross order.
Definition: Enumerations.h:211
Reference to the unique application identifier.
Enum
Additional information why quote side was removed.
Indicator for a delayed transaction.
Enum
Sub-type of a trade type.
News Broadcast Message.
Definition: NewsBroadcast.h:35
Mass Order Ack Message.
Definition: MassOrderAck.h:35
Sub-type or qualifier of QuoteType.
Enum
Indicates trade platform. Can only be used for EEX.
Enum
Reason for mass cancellation.
Definition: Enumerations.h:865
Order initiator is passive or aggressor.
Enum
Indicator to skip validations.
Enum
Trade request transaction type.
Identifies the quoting model.
Enum
Order initiator is passive or aggressor.
Enum
Specifies if a strategy is temporarily (user-defined) or permanently (predefined) available...
The side of the individual leg of a strategy.
Definition: Enumerations.h:786
Enum
Indicates if the trade resulted from a single order or a multi leg order.
Definition: Enumerations.h:993
Order origination, MiFID field - to indicate order received from a direct access or sponsored access ...
Enum
Type of cross being submitted to a market.
Definition: Enumerations.h:241
Indicates SMP involvement.
Definition: Enumerations.h:254
Enum
Indicates whether a option strategy synthetic BBO is used for the price improvement check...
Definition: Enumerations.h:584
Enum
Type of order processing.
Definition: Enumerations.h:116
Cross Request Message.
Definition: CrossRequest.h:35
Enum
Indicator for checking the maximum order or quote quantity by the exchange.
Indicates a retransmission message.
Definition: Enumerations.h:67
Used to indicate anonymized trades in baskets.
Definition: Enumerations.h:147
New Order NR Response Message.
std::string enumToString(ConnectionState::Enum)
Returns string representation of ConnectionState value.
Risk Limit Result for failed events.
Enum
Informs if trade broadcast dissemination is active for a grouping of Eurex products.
Instruction to show last deal price.
Definition: Enumerations.h:693
Enum
Conveys the current status of an order.
Indication for the hedge transaction.
Definition: Enumerations.h:567
Status of an ETI session.
Enum
Indicates SMP involvement.
Definition: Enumerations.h:257
Enum
Identifies the role for which the trade notification is received.
Enum
Type of exercise of an instrument.
Definition: Enumerations.h:490
Enum
Identifies the type of trade notification.
Enum
Enlight RFQ Average Response Rate Ranking.
Definition: Enumerations.h:330
Enum
Indicates whether the order added or removed liquidity.
Definition: Enumerations.h:505
Price decomposition method for legs of a complex instrument.
Enum
Status of Secondary ETI Gateway.
The point in the matching process at which this trade was matched.
Definition: Enumerations.h:939
Enum
Enlight RFQ Average Response Time Ranking.
Definition: Enumerations.h:346
Restriction for MassActionType (1373) = Release_quotes (2).
Definition: Enumerations.h:891
Conveys the current status of an order.
Quoting status for the executing party.
Transaction effect on a basket.
Definition: Enumerations.h:312
Enum
Instrument type of the original Eurex strategy.
Type of order processing.
Definition: Enumerations.h:113
Type of cross being submitted to a market.
Definition: Enumerations.h:238
Indicates if a trade should be reported via the market reporting service.
Identifies the role for which the trade notification is received.
Enum
Sub-type or qualifier of QuoteType.
Enum
Marks a a certain order as a closing auction one.
Indicator how price validity check should be performed by the exchange.
Indicates if the order is a Lean Order or a Standard (non lean) Order.
Definition: Enumerations.h:82
Identifier for subscription and retransmission of an ETI data stream.
Definition: Enumerations.h:30
Enum
Execution and trading restriction parameters supported by Eurex.
Enum
Indicates the auction type the trade originates from.
Definition: Enumerations.h:924
SRQS Deal Response Message.
This field qualifies an instrument type on Eurex.
Scope for Pre-Trade risk limits.
Enum
Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos...
Definition: Enumerations.h:475
Enum
Conveys the quote event type.
Enum
Type of Eurex ETI session.
Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos...
Definition: Enumerations.h:472
Enum
Quoting status for the executing party.
Status of Secondary ETI Gateway.
Type of Eurex ETI session.
SRQS Hit Quote Request Message.
Enum
Action that caused the event to occur.