OnixS C++ MTS Bond Vision SDP Handler  1.2.0
API documentation
SMP.Classes.TI_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 BondVision {
38 namespace SDP {
39 
40 
41 
42 ///
43 class ONIXS_MTS_BONDVISION_SDP_API TI_INSTRUMENT : public Class
44 {
45 public:
47  {
48  instrumentCode.reserve(12);
49  instrumentDesc.reserve(36);
50  bondTypology.reserve(6);
51  currencyCode.reserve(3);
52  settlCurrencyCode.reserve(3);
53  alternativeCode.reserve(16);
54  }
55 
56  virtual ~TI_INSTRUMENT() {}
57 
58  /// Class id
59  virtual ClassId::Enum id() const
60  {
62  }
63 
64  /// Unique ID of the financial instrument (Bond)
66 
67  /// Alphanumeric ID code of the instrument (ISIN coding)
68  std::string instrumentCode; // maxSize = 12
69 
70  /// Description of the instrument
71  std::string instrumentDesc; // maxSize = 36
72 
73  /// ID of the type of instrument (for example, Corporate)
75 
76  /// Unique ID of the issuing body
78 
79  /// Date of issue of the instrument
81 
82  /// Date of payment of the instrument
84 
85  /// Current coupon rate, expressed as a percentage
86  Double couponRate; // DOUBLE presentation
87 
88  /// Frequency of the coupon. Number of months between the payments of the coupons. Not set for instrument class related to instruments with no coupon
90 
91  /// ID of the type of coupon
93 
94  /// Date on which the first coupon was detached
96 
97  /// Date on which the last coupon was detached before the instrument is paid
99 
100  /// ID of the group to which the instrument belongs, defined as a function of its maturity
102 
103  /// ID of the residual maturity of the instrument on the current date
105 
106  /// Number of days to the maturity of the instrument
108 
109  /// Start date of interest accrual
111 
112  /// Auction price of the instrument
113  Double auctionInstrumentPrice; // DOUBLE presentation
114 
115  /// Yield of the instrument at the time of the auction expressed as a percentage
116  Double auctionInstrumentYield; // DOUBLE presentation
117 
118  /// Redemption price of the instrument
119  Double redemptionPrice; // DOUBLE presentation
120 
121  /// Flag indicating whether the instrument under examination is of the benchmark type or not
123 
124  /// Time interval between the date on which trading took place and the date on which the operation was settled expressed as a number of working days
126 
127  /// Time interval allowed to conclude the settlement of the operation, expressed as a number of working days
129 
130  /// First date of settlement of the instrument
132 
133  /// Number of working days between the start date of the exception period and the date on which the coupon was detached
135 
136  /// Number of working days between the stop date of the exception period and the date on which the coupon was detached
138 
139  /// Unique ID code of the type of exception date of the coupon
141 
142  /// Unique ID code of the method for calculating the price or yield of the instrument
144 
145  /// Unique ID code of the method for calculating the discount rate of the instrument
147 
148  /// Unique ID code of the type of calculation of the accrual
150 
151  /// Field used by the Calculation Engine
153 
154  /// Unique ID of the Inflation Index
156 
157  /// It indicates the financial group (for example, BTP, CCT, BTA, BTC, etc.)
158  std::string bondTypology; // maxSize = 6
159 
160  /// Unique ID code of the Trading Currency related to the instrument
161  std::string currencyCode; // maxSize = 3
162 
163  /// Unique ID code of the Settlement Currency related to the instrument
164  std::string settlCurrencyCode; // maxSize = 3
165 
166  /// Base Point Value
167  Double bPV; // DOUBLE presentation
168 
169  /// MTS classification of the financial instrument
171 
172  /// MIC code of the financial instrument
173  std::string alternativeCode; // maxSize = 16
174 
175  /// Issued amount
176  Double outstanding; // DOUBLE presentation
177 
178  /// Allows counterparties with CCP to close a trade in a Bilateral modality
180 
181 
182  ///
183  size_t deserialize(const void* buf, size_t inLen);
184 
185  /// Provides string presentation
186  virtual std::string toString () const;
187 
188  ///
189  virtual size_t serializationBufSize() const { return 260; }
190 
191  ///
192  virtual TI_INSTRUMENT* clone() const;
193 
194  virtual TI_INSTRUMENT* clone(void*) const;
195 
196 private:
197  virtual size_t serialize(void* buf) const;
198 
199 };
200 
201 
202 }
203 }
204 }
205 }
UInt16 settlExpiryPeriod
Time interval allowed to conclude the settlement of the operation, expressed as a number of working d...
Double auctionInstrumentYield
Yield of the instrument at the time of the auction expressed as a percentage.
TI_FLAG::Enum cCPEligibleFg
Allows counterparties with CCP to close a trade in a Bilateral modality.
TI_FLAG::Enum benchmarkFlag
Flag indicating whether the instrument under examination is of the benchmark type or not...
UInt32 financialInstrumentId
Unique ID of the financial instrument (Bond)
UInt16 stopExceptionDays
Number of working days between the stop date of the exception period and the date on which the coupon...
UInt32 lastCouponDate
Date on which the last coupon was detached before the instrument is paid.
UInt32 residualMaturityDays
Number of days to the maturity of the instrument.
std::string alternativeCode
MIC code of the financial instrument.
UInt16 inflationIndexId
Unique ID of the Inflation Index.
UInt32 maturityDate
Date of payment of the instrument.
UInt16 couponFrequency
Frequency of the coupon. Number of months between the payments of the coupons. Not set for instrument...
TI_DAY_COUNT_CONVENTION_TYPE::Enum dayCountConventionType
Unique ID code of the type of calculation of the accrual.
std::string instrumentCode
Alphanumeric ID code of the instrument (ISIN coding)
Double redemptionPrice
Redemption price of the instrument.
UInt32 issueDate
Date of issue of the instrument.
std::string settlCurrencyCode
Unique ID code of the Settlement Currency related to the instrument.
UInt32 firstCouponDate
Date on which the first coupon was detached.
std::string instrumentDesc
Description of the instrument.
virtual ClassId::Enum id() const
Class id.
TI_YIELD_FORMULA_TYPE::Enum yieldFormulaType
Unique ID code of the method for calculating the price or yield of the instrument.
Double couponRate
Current coupon rate, expressed as a percentage.
UInt32 firstAccrualDate
Start date of interest accrual.
TI_EXCEPTION_DATE_TYPE::Enum exceptionDateType
Unique ID code of the type of exception date of the coupon.
UInt32 issuerId
Unique ID of the issuing body.
UInt16 baseCoefficientIndex
Field used by the Calculation Engine.
UInt16 maturityBucket
ID of the group to which the instrument belongs, defined as a function of its maturity.
TI_COUPON_TYPE::Enum couponType
ID of the type of coupon.
TI_INSTRUMENT_TYPOLOGY::Enum instrumentTipology
ID of the type of instrument (for example, Corporate)
UInt16 startExceptionDays
Number of working days between the start date of the exception period and the date on which the coupo...
Double auctionInstrumentPrice
Auction price of the instrument.
UInt32 firstSettlDate
First date of settlement of the instrument.
std::string currencyCode
Unique ID code of the Trading Currency related to the instrument.
UInt16 settlPeriod
Time interval between the date on which trading took place and the date on which the operation was se...
UInt16 mTSClassification
MTS classification of the financial instrument.
std::string bondTypology
It indicates the financial group (for example, BTP, CCT, BTA, BTC, etc.)
UInt32 residualMaturityId
ID of the residual maturity of the instrument on the current date.
unsigned short UInt16
Definition: Defines.h:45
TI_DISCOUNT_RATE_FORMULA_TYPE::Enum discountRateFormulaType
Unique ID code of the method for calculating the discount rate of the instrument. ...