OnixS C++ MTS Repo SDP Handler  1.3.2.8
API documentation
SMP.Classes.REPO_INSTRUMENT.h
Go to the documentation of this file.
1 #pragma once
2 /*
3 * Copyright Onix Solutions Limited [OnixS]. All rights reserved.
4 *
5 * This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
6 * and international copyright treaties.
7 *
8 * Access to and use of the software is governed by the terms of the applicable ONIXS Software
9 * Services Agreement (the Agreement) and Customer end user license agreements granting
10 * a non-assignable, non-transferable and non-exclusive license to use the software
11 * for it's own data processing purposes under the terms defined in the Agreement.
12 *
13 * Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
14 * of this source code or associated reference material to any other location for further reproduction
15 * or redistribution, and any amendments to this copyright notice, are expressly 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 
22 /*
23 --------------
24 GENERATED FILE
25 --------------
26 */
27 
28 
29 #include <string>
33 
34 
35 namespace OnixS {
36 namespace Mts {
37 namespace Repo {
38 namespace SDP {
39 
40 
41 
42 ///
44 {
45 public:
47  {
48  instrumentCode.reserve(12);
49  instrumentDesc.reserve(36);
50  }
51 
52  virtual ~REPO_INSTRUMENT() {}
53 
54  /// Class id
55  virtual ClassId::Enum id() const
56  {
58  }
59 
60  /// Unique ID of the REPO bond
62 
63  /// Alphanumeric code of the REPO bond. This code could be different from the InstrumentCode in the TI_INSTRUMENT_EXT class
64  std::string instrumentCode; // maxSize = 12
65 
66  /// Description of the REPO bond. This description could be different from the InstrumentDesc in the TI_INSTRUMENT_EXT class
67  std::string instrumentDesc; // maxSize = 36
68 
69  /// Unique ID of the financial instrument (Bond) in the TI_INSTRUMENT_EXT class (external reference key)
71 
72  /// Unique ID of the instrument class
74 
75  /// Unique ID of the section
77 
78  /// Unit value of the lot
79  Double lotValue; // DOUBLE presentation
80 
81  /// CAT minimum tradable quantity
82  Double catIncrementQty; // DOUBLE presentation
83 
84  /// RFCQ Minimum quantity increment and minimum tradable quantity
85  Double rfcqIncrementQty; // DOUBLE presentation
86 
87  /// Minimum rate variation
88  Double catMinRateTick; // DOUBLE presentation
89 
90  /// RFCQ minimum rate variation
91  Double rfcqMinRateTick; // DOUBLE presentation
92 
93  /// Minimum variation to the spread when the instrument is traded against a floating rate
94  Double catMinSpreadTick; // DOUBLE presentation
95 
96  /// RFCQ Minimum variation to the spread when the instrument is traded against a floating rate
97  Double rfcqMinSpreadTick; // DOUBLE presentation
98 
99  /// Number of decimals (precision) to be used in the accrued interest calculations
101 
102  /// Unique ID of the Settlement Group
104 
105  /// Indicates whether the bond is only used for the definition of the General Collateral or it is also tradable as Special.
107 
108  /// ID of the rate type (fixed or fixed and variable). If no value is specified, the bond is tradable against fixed rate type. If a value is specified, the bond is tradable against fixed rate or variable rate type
110 
111  /// Instrument sorting number
113 
114  /// Start of validity date
116 
117  /// End of validity date
119 
120  /// Convention to be used to calculate REPO interest
122 
123  /// Reference market for calculating the spot price
125 
126  /// Number of decimals (precision) to be used in the calculation of the forward price
128 
129  /// CAT Minimum drip quantity - applies to quotes
130  Double catMinimumDripQuantity; // DOUBLE presentation
131 
132  /// Specifies whether the tradable instrument can be part of the general collateral basket when trades have been closed CCP only
134 
135 
136  ///
137  size_t deserialize(const void* buf, size_t inLen);
138 
139  /// Provides string presentation
140  virtual std::string toString () const;
141 
142  ///
143  virtual size_t serializationBufSize() const { return 180; }
144 
145  ///
146  virtual REPO_INSTRUMENT* clone() const;
147 
148  virtual REPO_INSTRUMENT* clone(void*) const;
149 
150 private:
151  virtual size_t serialize(void* buf) const;
152 
153 };
154 
155 
156 }
157 }
158 }
159 }
UInt32 floatRateId
ID of the rate type (fixed or fixed and variable). If no value is specified, the bond is tradable aga...
UInt16 spotPriceMktRef
Reference market for calculating the spot price.
UInt32 instrumentClassId
Unique ID of the instrument class.
UInt32 sortNumber
Instrument sorting number.
std::string instrumentCode
Alphanumeric code of the REPO bond. This code could be different from the InstrumentCode in the TI_IN...
unsigned short UInt16
Definition: Defines.h:45
UInt16 termPricePrecision
Number of decimals (precision) to be used in the calculation of the forward price.
Double rfcqIncrementQty
RFCQ Minimum quantity increment and minimum tradable quantity.
Double rfcqMinSpreadTick
RFCQ Minimum variation to the spread when the instrument is traded against a floating rate...
Double catIncrementQty
CAT minimum tradable quantity.
virtual ClassId::Enum id() const
Class id.
UInt32 instrumentId
Unique ID of the REPO bond.
unsigned int UInt32
Definition: Defines.h:46
UInt16 accIntPrecision
Number of decimals (precision) to be used in the accrued interest calculations.
UInt32 settlGroupId
Unique ID of the Settlement Group.
Double rfcqMinRateTick
RFCQ minimum rate variation.
Double catMinimumDripQuantity
CAT Minimum drip quantity - applies to quotes.
Double catMinSpreadTick
Minimum variation to the spread when the instrument is traded against a floating rate.
UInt32 sectionId
Unique ID of the section.
std::string instrumentDesc
Description of the REPO bond. This description could be different from the InstrumentDesc in the TI_I...
REPO_DAY_COUNT::Enum dayCountConvForRepoInter
Convention to be used to calculate REPO interest.
TI_FLAG::Enum cCPEligibleFg
Specifies whether the tradable instrument can be part of the general collateral basket when trades ha...
#define ONIXS_MTS_REPO_SDP_API
Definition: ABI.h:49
UInt32 financialInstrumentId
Unique ID of the financial instrument (Bond) in the TI_INSTRUMENT_EXT class (external reference key) ...
REPO_NEGOTIATION_TYPE::Enum repoNegotiationType
Indicates whether the bond is only used for the definition of the General Collateral or it is also tr...