OnixS C++ MTS Bond Vision SDP Handler  1.2.0
API documentation
SMP.Classes.BV_RFCQ_BUY_SIDE_SUMMARY.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>
40 
41 
42 namespace OnixS {
43 namespace Mts {
44 namespace BondVision {
45 namespace SDP {
46 
47 
48 
49 ///
50 class ONIXS_MTS_BONDVISION_SDP_API BV_RFCQ_BUY_SIDE_SUMMARY : public Class
51 {
52 public:
54  legSummary(3)
55  , providerInfo(20)
56  , inventoryDepthBid(20)
57  , inventoryDepthAsk(20)
58  , iOIDepthBid(20)
59  , iOIDepthAsk(20)
60 
61  {
62  sellSideTraderName.reserve(12);
63  clientRfcqId.reserve(50);
64  comment.reserve(100);
65  userInfo1.reserve(200);
66  userInfo2.reserve(200);
67  }
68 
70 
71  /// Class id
72  virtual ClassId::Enum id() const
73  {
75  }
76 
77  /// Unique ID of the member to whom the RFCQ summary is addressed
79 
80  /// Unique ID of the trader of the Buy Side Member
82 
83  /// Message Info (Unique ID) of the Rfcq Request
85 
86  /// RFCQ Type (Outright, Switch, Butterfly, MultiLeg, ...)
88 
89  /// RFCQ Origin(From Scratch, From Single Dealer Page, From Inventory)
91 
92  /// Specifies if the RFCQ is sent to one and only provider.
94 
95  /// Specifies whether the RFCQ will be subject to pre-trade transparency
97 
98  /// Unique ID of the Voice Registration
100 
101  /// Unique ID of the Sell side member in case of RfcqOrigin equal to 'FromSingleDealerPage' or 'FromInventory'
103 
104  /// Number of seconds the RFCQ will be deferred (for Multileg RFCQ)
106 
107  /// Time at which the MultiLeg RFCQ will start
108  UInt64 dueInTimeout; // UTIME presentation
109 
110  /// Type of quantity calculation carried out by the Buy Side member
112 
113  /// Unique ID of the trading list of bonds
115 
116  /// Unique ID of the trading leg
118 
119  /// Number of quotes triggering auto-matching when best price matches IOI (for Outright RFCQ or Multileg RFCQ)
121 
122  /// If True, messages have been exchanged during the RFCQ among the Buy Side Member and one or more Sell Side Members.
124 
125  /// In case of accepted RFCQ, it the ID of the Sell Side Member with whom the deal has been made.
127 
128  /// Unique name of the trader of the Sell Side Member with whom the deal has been made.
129  std::string sellSideTraderName; // maxSize = 12
130 
131  /// Specifies the final status of the RFCQ
133 
134  /// Closing time of the RFCQ
135  UInt64 closingTime; // UTIME presentation
136 
137  /// Number of Sell Side Members to whom the RFCQ was addressed
139 
140  /// Number of Sell Side Members that took part in the RFCQ
142 
143  /// Client specific information
144  std::string clientRfcqId; // maxSize = 50
145 
146  /// Delay between the RFCQ creation time and the time at which the first quote was received
148 
149  /// In case of accepted RFCQ, it's the timestamp of the RFCQ book that contained the quote hit or lifted.
150  UInt64 bookTimestamp; // UTIME presentation
151 
152  /// Price cover value (only for Outright, Multileg and Double-sided RFCQs)
153  Double priceCoverValue; // DOUBLE presentation
154 
155  /// Proceeds cover value (only for Switch RFCQs) or Proceeds weighted yield cover value (only for Butterfly RFCQs)
156  Double proceedsCoverValue; // DOUBLE presentation
157 
158  /// Gross yield cover value (only for Switchg and Butterfly RFCQs)
159  Double grossYieldCoverValue; // DOUBLE presentation
160 
161  /// Duration weighted yield cover value (only for Butterfly RFCQs)
162  Double durWeightedYieldCoverValue; // DOUBLE presentation
163 
164  /// Only valid for Switch and Butterfly RFCQ
165  Double grossYieldSpread; // DOUBLE presentation
166 
167  /// Only valid for Switch (Proceeds Spread) and Butterfly RFCQ (Proceeds Weighted Spread)
168  Double proceedsSpread; // DOUBLE presentation
169 
170  /// Only valid for Butterfly RFCQ
171  Double riskWeightedYieldSpread; // DOUBLE presentation
172 
173  /// Specifies if the value in the LimitSpread field is meaningful
175 
176  /// Limit value for the spread in case of RFCQ Switch or Butterfly negotiation
177  Double limitSpread; // DOUBLE presentation
178 
179  /// Trading List - Number of legs
181 
182  /// Leg summay information
183  static const size_t legSummarySize = 3;
184  std::vector<BV_RFCQ_BUY_SIDE_LEG_SUMMARY> legSummary;
185 
186  /// Provider information
187  static const size_t providerInfoSize = 20;
188  std::vector<BV_RFCQ_PROVIDER_INFO> providerInfo;
189 
190  /// Inventory Depth - bid side
191  static const size_t inventoryDepthBidSize = 20;
192  std::vector<BV_INVENTORY_TRADING_INFO> inventoryDepthBid;
193 
194  /// Inventory Depth - ask side
195  static const size_t inventoryDepthAskSize = 20;
196  std::vector<BV_INVENTORY_TRADING_INFO> inventoryDepthAsk;
197 
198  /// IOI trading info - bid side
199  static const size_t iOIDepthBidSize = 20;
200  std::vector<BV_IOI_TRADING_INFO> iOIDepthBid;
201 
202  /// IOI trading info - ask side
203  static const size_t iOIDepthAskSize = 20;
204  std::vector<BV_IOI_TRADING_INFO> iOIDepthAsk;
205 
206  /// Unique ID of the Buy Side Member Area Code
208 
209  /// Free text
210  std::string comment; // maxSize = 100
211 
212  /// Client free text
213  std::string userInfo1; // maxSize = 200
214 
215  /// Client free text
216  std::string userInfo2; // maxSize = 200
217 
218  /// Specifies if the RFCQ is automatically generated
220 
221  /// Rule Id of the Autoexecution
223 
224  /// Override manual start time
225  UInt64 manualOverrideStartTime; // UTIME presentation
226 
227  /// Override manual end time
228  UInt64 manualOverrideEndTime; // UTIME presentation
229 
230 
231  ///
232  size_t deserialize(const void* buf, size_t inLen);
233 
234  /// Provides string presentation
235  virtual std::string toString () const;
236 
237  ///
238  virtual size_t serializationBufSize() const { return 53184; }
239 
240  ///
241  virtual BV_RFCQ_BUY_SIDE_SUMMARY* clone() const;
242 
243  virtual BV_RFCQ_BUY_SIDE_SUMMARY* clone(void*) const;
244 
245 private:
246  virtual size_t serialize(void* buf) const;
247 
248 };
249 
250 
251 }
252 }
253 }
254 }
UInt16 iOIMatchingQuotes
Number of quotes triggering auto-matching when best price matches IOI (for Outright RFCQ or Multileg ...
UInt64 bookTimestamp
In case of accepted RFCQ, it&#39;s the timestamp of the RFCQ book that contained the quote hit or lifted...
UInt32 delay
Delay between the RFCQ creation time and the time at which the first quote was received.
UInt32 sellSideMemberId
In case of accepted RFCQ, it the ID of the Sell Side Member with whom the deal has been made...
TI_RFCQ_QUANTITY_CALCULATION::Enum quantityCalculation
Type of quantity calculation carried out by the Buy Side member.
UInt16 participatingSellSideNr
Number of Sell Side Members that took part in the RFCQ.
TI_FLAG::Enum preAgreedFg
Specifies if the RFCQ is sent to one and only provider.
UInt16 areaCodeId
Unique ID of the Buy Side Member Area Code.
TI_RFCQ_REQUEST_STATUS::Enum finalStatus
Specifies the final status of the RFCQ.
UInt16 sellSideNr
Number of Sell Side Members to whom the RFCQ was addressed.
Double grossYieldCoverValue
Gross yield cover value (only for Switchg and Butterfly RFCQs)
UInt16 dueInTime
Number of seconds the RFCQ will be deferred (for Multileg RFCQ)
UInt32 buySideMemberId
Unique ID of the member to whom the RFCQ summary is addressed.
UInt64 dueInTimeout
Time at which the MultiLeg RFCQ will start.
Double priceCoverValue
Price cover value (only for Outright, Multileg and Double-sided RFCQs)
Double proceedsCoverValue
Proceeds cover value (only for Switch RFCQs) or Proceeds weighted yield cover value (only for Butterf...
TI_FLAG::Enum preTradeFg
Specifies whether the RFCQ will be subject to pre-trade transparency.
TI_FLAG::Enum msgFg
If True, messages have been exchanged during the RFCQ among the Buy Side Member and one or more Sell ...
TI_FLAG::Enum autoExecutionFg
Specifies if the RFCQ is automatically generated.
UInt32 buySideTraderId
Unique ID of the trader of the Buy Side Member.
Double durWeightedYieldCoverValue
Duration weighted yield cover value (only for Butterfly RFCQs)
TI_FLAG::Enum limitSpreadFg
Specifies if the value in the LimitSpread field is meaningful.
std::string sellSideTraderName
Unique name of the trader of the Sell Side Member with whom the deal has been made.
Double grossYieldSpread
Only valid for Switch and Butterfly RFCQ.
Double limitSpread
Limit value for the spread in case of RFCQ Switch or Butterfly negotiation.
TI_RFCQ_ORIGIN::Enum rfcqOrigin
RFCQ Origin(From Scratch, From Single Dealer Page, From Inventory)
UInt32 originSellSideMemberId
Unique ID of the Sell side member in case of RfcqOrigin equal to &#39;FromSingleDealerPage&#39; or &#39;FromInven...
TI_MSG_INFO rfcqReqMsgInfo
Message Info (Unique ID) of the Rfcq Request.
Double proceedsSpread
Only valid for Switch (Proceeds Spread) and Butterfly RFCQ (Proceeds Weighted Spread) ...
unsigned long long UInt64
Definition: Defines.h:47
unsigned short UInt16
Definition: Defines.h:45
TI_RFCQ_TYPE::Enum rfcqType
RFCQ Type (Outright, Switch, Butterfly, MultiLeg, ...)