OnixS BME SENAF Handler C++ library  2.2.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 part
13  * of this source code or associated reference material to any other location for further reproduction
14  * or redistribution, and any amendments to this copyright notice, are expressly prohibited.
15  *
16  * Any reproduction or redistribution for sale or hiring of the Software not in accordance with
17  * the terms of the Agreement is a violation of copyright law.
18  */
19 
20 #pragma once
21 
22 #include <OnixS/Senaf/MarketData/Export.h>
23 
24 #include <string>
25 
26 namespace OnixS { namespace Senaf { namespace MarketData {
27 
28 /// Flow Type.
29 struct ONIXS_BME_SENAF_EXPORT FlowType
30 {
31  /// \copydoc FlowType
32  enum Enum
33  {
34  /// Undefined.
35  Undefined = 0x0,
36 
37  /// Back-Office.
38  BackOffice = 0x01,
39 
40  /// Non-Operative Short Market.
41  NonOperativeShortMarket = 0x05,
42 
43  /// Short Market.
44  ShortMarket = 0x06
45  };
46 
47  /// Deserializes constant from string representation.
48  static Enum deserialize(const char*);
49 
50  /// Returns string representation.
51  static const char* toString(Enum);
52 };
53 
54 /// System Error Code.
55 struct ONIXS_BME_SENAF_EXPORT SystemErrorCode
56 {
57  /// \copydoc SystemErrorCode
58  enum Enum
59  {
60  /// Unknown.
61  Unknown = 0,
62 
63  /// Terminal Error.
64  TerminalError = 1,
65 
66  /// Server Error.
67  ServerError = 2,
68 
69  /// Senaf Error.
70  SenafError = 3
71  };
72 
73  /// Deserializes constant from string representation.
74  static Enum deserialize(const char*);
75 
76  /// Returns string representation.
77  static const char* toString(Enum);
78 };
79 
80 /// Side.
81 struct ONIXS_BME_SENAF_EXPORT Side
82 {
83  /// \copydoc Side
84  enum Enum
85  {
86  /// Undefined.
87  Undefined = 0,
88 
89  /// Bid.
90  Bid = 1,
91 
92  /// Ask.
93  Ask = 2
94  };
95 
96  /// Deserializes constant from string representation.
97  static Enum deserialize(const char*);
98 
99  /// Returns string representation.
100  static const char* toString(Enum);
101 };
102 
103 /// Buy / Sell.
104 struct ONIXS_BME_SENAF_EXPORT BuySell
105 {
106  /// \copydoc BuySell
107  enum Enum
108  {
109  /// Undefined.
110  Undefined = 0,
111 
112  /// Sell.
113  Sell = 1,
114 
115  /// Buy.
116  Buy = 2
117  };
118 
119  /// Deserializes constant from string representation.
120  static Enum deserialize(const char*);
121 
122  /// Returns string representation.
123  static const char* toString(Enum);
124 };
125 
126 /// Instrument Types.
127 struct ONIXS_BME_SENAF_EXPORT InstrumentType
128 {
129  /// \copydoc InstrumentType
130  enum Enum
131  {
132  /// Undefined.
133  Undefined = 0x0,
134 
135  /// Bonds.
136  Bonds = 0x1,
137 
138  /// Strips.
139  Strips = 0x2,
140 
141  /// Letras ("Bills").
142  Letras = 0x3,
143 
144  /// Treasury Repo MEFE (Meffclear-Iberclear).
145  TreasuryRepoMEFE = 0x4,
146 
147  /// Treasury Repo CNET (Clearnet-Iberclear).
148  TreasuryRepoCNET = 0x5,
149 
150  /// Repo deliverable.
151  RepoDeliverable = 0x6,
152 
153  /// Switch.
154  Switch = 0x7,
155 
156  /// Bilateral Treasury Repo (No CCP-Iberclear).
157  BilateralTreasuryRepo = 0x8,
158 
159  /// GGB (Government Guaranteed Corporate Bond).
160  GGB = 0x9,
161 
162  /// Corporate New Issues.
163  CorporateNewIssues = 0xA,
164 
165  /// Cedulas.
166  Cedulas = 0xB,
167 
168  /// FROB Bonds.
169  FROBBonds = 0xC,
170 
171  /// Reserved for other possible Repo instruments.
172  /// For instance, GGB Repo MEFE, Treasury Repo LCH (LCH-EuroClear), ...
173  Reserved1 = 0x10,
174 
175  /// Reserved for other possible Repo instruments.
176  /// For instance, GGB Repo MEFE, Treasury Repo LCH (LCH-EuroClear), ...
177  Reserved2 = 0x12,
178 
179  /// Reserved for other possible Repo instruments.
180  /// For instance, GGB Repo MEFE, Treasury Repo LCH (LCH-EuroClear), ...
181  Reserved3 = 0x1F
182  };
183 
184  /// Deserializes constant from string representation.
185  static Enum deserialize(const char*);
186 
187  /// Returns string representation.
188  static const char* toString(Enum);
189 };
190 
191 /// Confirmation Types.
192 struct ONIXS_BME_SENAF_EXPORT ConfirmationType
193 {
194  /// \copydoc ConfirmationType
195  enum Enum
196  {
197  /// Undefined.
198  Undefined = 0x0,
199 
200  /// New.
201  New = 0x1,
202 
203  /// New Cross Trade.
204  NewCrossTrade = 0x2,
205 
206  /// Seller rejection.
207  SellerRejection = 0x3,
208 
209  /// Buyer rejection.
210  BuyerRejection = 0x4,
211 
212  /// Time to reject expired.
213  TimeToRejectExpired = 0x5,
214 
215  /// Delivery.
216  Delivery = 0x6,
217 
218  /// Trade Modification.
219  TradeModification = 0x7,
220 
221  /// Trade Cancellation.
222  TradeCancellation = 0x8
223  };
224 
225  /// Deserializes constant from string representation.
226  static Enum deserialize(const char*);
227 
228  /// Returns string representation.
229  static const char* toString(Enum);
230 };
231 
232 /// Trade Status.
233 struct ONIXS_BME_SENAF_EXPORT TradeStatus
234 {
235  /// \copydoc TradeStatus
236  enum Enum
237  {
238  /// Undefined.
239  Undefined = 0x0,
240 
241  /// Confirmed.
242  Confirmed = 0x1,
243 
244  /// Partially Confirmed.
245  PartiallyConfirmed = 0x2,
246 
247  /// Pending on Delivery.
248  PendingOnDelivery = 0x3,
249 
250  /// Pending on possible rejection.
251  PendingOnPossibleRejection = 0x4,
252 
253  /// Rejected.
254  Rejected = 0x5,
255 
256  /// Modificated.
257  Modificated = 0x6,
258 
259  /// Cancellated.
260  Cancellated = 0x7
261  };
262 
263  /// Deserializes constant from string representation.
264  static Enum deserialize(const char*);
265 
266  /// Returns string representation.
267  static const char* toString(Enum);
268 };
269 
270 /// Cash / Term.
271 struct ONIXS_BME_SENAF_EXPORT CashTerm
272 {
273  /// \copydoc CashTerm
274  enum Enum
275  {
276  /// Undefined.
277  Undefined = 0,
278 
279  /// Cash.
280  Cash = 1,
281 
282  /// Term.
283  Term = 2
284  };
285 
286  /// Deserializes constant from string representation.
287  static Enum deserialize(const char*);
288 
289  /// Returns string representation.
290  static const char* toString(Enum);
291 };
292 
293 /// Delivery restrictions.
294 struct ONIXS_BME_SENAF_EXPORT DeliveryRestrictions
295 {
296  /// \copydoc DeliveryRestrictions
297  enum Enum
298  {
299  /// No restriction.
300  NoRestriction = 0x00,
301 
302  /// Not accepted:
303  /// - Deliverables with maturity greater than 10 years.
304  SUB10 = 0x01,
305 
306  /// Not accepted:
307  /// - Letras ("Bills").
308  NO_LT = 0x02,
309 
310  /// Not accepted:
311  /// - Deliverables with maturity greater than 10 years.
312  /// - Letras ("Bills").
313  SUB10_NO_LT = 0x03,
314 
315  /// Not accepted:
316  /// - Strips.
317  NO_ST = 0x04,
318 
319  /// Not accepted:
320  /// - Deliverables with maturity greater than 10 years.
321  /// - Strips.
322  SUB10_NO_ST = 0x05,
323 
324  /// Not accepted:
325  /// - Letras ("Bills").
326  /// - Strips.
327  NO_LT_NO_ST = 0x06,
328 
329  /// Not accepted:
330  /// - Deliverables with maturity greater than 10 years.
331  /// - Letras ("Bills").
332  /// - Strips.
333  SUB10_NO_LT_NO_ST = 0x07,
334  };
335 
336  /// Deserializes constant from string representation.
337  static Enum deserialize(const char*);
338 
339  /// Returns string representation.
340  static const char* toString(Enum);
341 };
342 
343 /// Currency.
344 struct ONIXS_BME_SENAF_EXPORT Currency
345 {
346  /// \copydoc Currency
347  enum Enum
348  {
349  /// Undefined.
350  Undefined = 0x00,
351 
352  /// Cents of Euro.
353  CentsOfEuro = 0x01,
354 
355  /// Cents of Dollar.
356  CentsOfDollar = 0x02,
357  };
358 
359  /// Deserializes constant from string representation.
360  static Enum deserialize(const char*);
361 
362  /// Returns string representation.
363  static const char* toString(Enum);
364 };
365 
366 /// Country.
367 struct ONIXS_BME_SENAF_EXPORT Country
368 {
369  /// \copydoc Country
370  enum Enum
371  {
372  /// Undefined.
373  Undefined = 0x00,
374 
375  /// Spain.
376  Spain = 0x01,
377 
378  /// Germany.
379  Germany = 0x02,
380 
381  /// Italy.
382  Italy = 0x03,
383  };
384 
385  /// Deserializes constant from string representation.
386  static Enum deserialize(const char*);
387 
388  /// Returns string representation.
389  static const char* toString(Enum);
390 };
391 
392 /// CCP.
393 struct ONIXS_BME_SENAF_EXPORT CCP
394 {
395  /// \copydoc CCP
396  enum Enum
397  {
398  /// No CCP.
399  NoCCP = 0x00,
400 
401  /// BME Clearing.
402  BMEClearing = 0x01,
403 
404  /// Eurex clearing AG.
405  EurexClearingAG = 0x02,
406 
407  /// LCH.Clearnet SA.
408  LCHClearnetSA = 0x03,
409  };
410 
411  /// Deserializes constant from string representation.
412  static Enum deserialize(const char*);
413 
414  /// Returns string representation.
415  static const char* toString(Enum);
416 };
417 
418 /// Yield, Price and Cash calculate.
419 struct ONIXS_BME_SENAF_EXPORT YieldCalculation
420 {
421  /// \copydoc YieldCalculation
422  enum Enum
423  {
424  /// No yield calculation.
425  NoYieldCalculation = 0x00,
426 
427  /// Recommendation of EFFAS (actual/actual ICMA).
428  RecommendationOfEFFAS = 0x01,
429 
430  /// True money market.
431  TrueMoneyMarket = 0x02,
432 
433  /// ISMA.
434  ISMA = 0x03,
435  };
436 
437  /// Deserializes constant from string representation.
438  static Enum deserialize(const char*);
439 
440  /// Returns string representation.
441  static const char* toString(Enum);
442 };
443 
444 /// Leg Number.
445 struct ONIXS_BME_SENAF_EXPORT LegNumber
446 {
447  /// \copydoc LegNumber
448  enum Enum
449  {
450  /// Undefined.
451  Undefined = 0x00,
452 
453  /// First Leg.
454  FirstLeg = 0x01,
455 
456  /// Second Leg.
457  SecondLeg = 0x02,
458  };
459 
460  /// Deserializes constant from string representation.
461  static Enum deserialize(const char*);
462 
463  /// Returns string representation.
464  static const char* toString(Enum);
465 };
466 
467 }}}
Yield, Price and Cash calculate.
Definition: Enumerations.h:419
Enum
Yield, Price and Cash calculate.
Definition: Enumerations.h:422