OnixS C++ MTS Bond Vision SDP Handler  1.2.0
API documentation
SMP.Classes.BV_ORDER_STAGING.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>
37 
38 
39 namespace OnixS {
40 namespace Mts {
41 namespace BondVision {
42 namespace SDP {
43 
44 
45 
46 ///
47 class ONIXS_MTS_BONDVISION_SDP_API BV_ORDER_STAGING : public Class
48 {
49 public:
51  dealerList(50)
52 
53  {
54  clientOrderId.reserve(50);
55  clientPreAllocationId.reserve(100);
56  clientPreAllocationTraderName.reserve(12);
57  linkId.reserve(50);
58  currency.reserve(3);
59  externalTraderId.reserve(50);
60  userInfo1.reserve(200);
61  userInfo2.reserve(200);
62  micCode.reserve(12);
63  autoDeleteReasonCode.reserve(250);
64  }
65 
66  virtual ~BV_ORDER_STAGING() {}
67 
68  /// Class id
69  virtual ClassId::Enum id() const
70  {
72  }
73 
74  /// Order info
76 
77  /// Unique ID of the order within the client institution.
78  std::string clientOrderId; // maxSize = 50
79 
80  /// Unique ID of the pre-allocation or of the allocation during the trade splitting phase
82 
83  /// Pre-allocation Id for client use
84  std::string clientPreAllocationId; // maxSize = 100
85 
86  /// Unique ID of the trader who performed the Pre-Allocation.
88 
89  /// Name of the trader who performed the Pre-Allocation.
90  std::string clientPreAllocationTraderName; // maxSize = 12
91 
92  /// Specifies the protocol used to send the order
94 
95  /// ID of the member sending trhe order staging request.
97 
98  /// If specified defines how this order should be executed in the market.
100 
101  /// User Defined ID of the RFCQ within the client institution.
102  std::string linkId; // maxSize = 50
103 
104  /// Specifies whether the order has been linked by the originator
106 
107  /// Data regarding the tradable instrument
109 
110  /// Specifies whether it is a buy or sell order. (Referred to the member who receives the information)
112 
113  /// Quantity
114  Double qty; // DOUBLE presentation
115 
116  /// Quantity specified as Nominal Value.
117  Double nominalQty; // DOUBLE presentation
118 
119  /// Quantity left after fill or partial fill
120  Double remainingQty; // DOUBLE presentation
121 
122  /// Quantity left after fill or partial fill, specified as Nominal Value
123  Double remainingNominalQty; // DOUBLE presentation
124 
125  /// Total executed quantity after fill or partial fill
126  Double cumQty; // DOUBLE presentation
127 
128  /// Total executed quantity after fill or partial fill, specified as Nominal Value
129  Double cumNominalQty; // DOUBLE presentation
130 
131  /// Weighted Average Price, calculated after fill or partial fill
132  Double averagePrice; // DOUBLE presentation
133 
134  /// Currency
135  std::string currency; // maxSize = 3
136 
137  /// Limit Quotation Type specified by the client
139 
140  /// Limit Price/Yield specified by the client
141  Double clientLimitQuotation; // DOUBLE presentation
142 
143  /// Limit Quotation Type specified by the central system
145 
146  /// Limit Price/Yield specified by the central system
147  Double limitQuotation; // DOUBLE presentation
148 
149  /// Order execution time optionally defined by the Trader.
150  UInt64 executionTime; // UTIME presentation
151 
152  /// Order execution modality optionally defined by the Trader. None by default.
154 
155  /// Settlement offset espressed as number of days starting from the trading date.
157 
158  /// Settlement date
160 
161  /// Flag indicating whether the date can be modified or not
163 
164  /// Account information.
166 
167  /// Flag stating whether the order must be completely filled. This flag can be set to No (the order can be partially executed) even if there is a pre-allocation linked to the order (the AllocationId field is specified).
169 
170  /// Flag stating whether the order has been partially filled
172 
173  /// If true, the GUI will signal the user when the limit price is reached.
175 
176  /// Action applied to the order
178 
179  /// Order Status
181 
182  /// Type of order
184 
185  /// Unique ID of the trader, belonging to the same member, that must execute the order
187 
188  /// Unique ID of the working trader, belonging to the same member
190 
191  /// Specifies whether there is work in progress on this order
193 
194  /// External Trader ID of the Stage Order Owner
195  std::string externalTraderId; // maxSize = 50
196 
197  /// Specifies if the dealer list type
199 
200  /// Number of dealers in the dealer list
202 
203  /// List of dealers that must be included or excluded when executing the Stage Order
204  static const size_t dealerListSize = 50;
205  std::vector<BV_ORDER_STAGING_DEALER_INFO> dealerList;
206 
207  /// Client free text
208  std::string userInfo1; // maxSize = 200
209 
210  /// Client free text, or short selling indicator code, or a combination of the two.
211  std::string userInfo2; // maxSize = 200
212 
213  /// Last update time
214  UInt64 editTime; // UTIME presentation
215 
216  /// Waiver Indicator
218 
219  /// MIC code
220  std::string micCode; // maxSize = 12
221 
222  /// Auto delete reason code
223  std::string autoDeleteReasonCode; // maxSize = 250
224 
225 
226  ///
227  size_t deserialize(const void* buf, size_t inLen);
228 
229  /// Provides string presentation
230  virtual std::string toString () const;
231 
232  ///
233  virtual size_t serializationBufSize() const { return 1660; }
234 
235  ///
236  virtual BV_ORDER_STAGING* clone() const;
237 
238  virtual BV_ORDER_STAGING* clone(void*) const;
239 
240 private:
241  virtual size_t serialize(void* buf) const;
242 
243 };
244 
245 
246 }
247 }
248 }
249 }
BV_ORDER_STAGING_DEALER_LIST_TYPE::Enum dealerListType
Specifies if the dealer list type.
TI_FLAG::Enum noPartialFill
Flag stating whether the order must be completely filled. This flag can be set to No (the order can b...
Double remainingNominalQty
Quantity left after fill or partial fill, specified as Nominal Value.
BV_INSTRUMENT_INFO instrument
Data regarding the tradable instrument.
TI_TRADING_TYPE::Enum limitQuotationType
Limit Quotation Type specified by the central system.
UInt32 execTraderId
Unique ID of the trader, belonging to the same member, that must execute the order.
TI_VERB::Enum verb
Specifies whether it is a buy or sell order. (Referred to the member who receives the information) ...
std::string externalTraderId
External Trader ID of the Stage Order Owner.
TI_TRADING_TYPE::Enum clientLimitQuotationType
Limit Quotation Type specified by the client.
Double remainingQty
Quantity left after fill or partial fill.
TI_FLAG::Enum warningOnLimitPrice
If true, the GUI will signal the user when the limit price is reached.
BV_ORDER_STAGING_TYPE::Enum orderType
Type of order.
std::string linkId
User Defined ID of the RFCQ within the client institution.
Double cumNominalQty
Total executed quantity after fill or partial fill, specified as Nominal Value.
UInt16 dealerListNum
Number of dealers in the dealer list.
Double nominalQty
Quantity specified as Nominal Value.
BV_ORDER_STAGING_EXEC_TYPE::Enum executionType
If specified defines how this order should be executed in the market.
TI_FLAG::Enum settlDateModifyFlag
Flag indicating whether the date can be modified or not.
virtual ClassId::Enum id() const
Class id.
Double cumQty
Total executed quantity after fill or partial fill.
BV_ORDER_STAGING_STATUS::Enum status
Order Status.
BV_MEMBER_INFO memberInfo
ID of the member sending trhe order staging request.
std::string userInfo2
Client free text, or short selling indicator code, or a combination of the two.
UInt16 settlementOffset
Settlement offset espressed as number of days starting from the trading date.
TI_FLAG::Enum workInProgressFg
Specifies whether there is work in progress on this order.
std::string clientPreAllocationId
Pre-allocation Id for client use.
std::string autoDeleteReasonCode
Auto delete reason code.
TI_FLAG::Enum partiallyExecutedFg
Flag stating whether the order has been partially filled.
std::vector< BV_ORDER_STAGING_DEALER_INFO > dealerList
TI_PROTOCOL_SOURCE::Enum orderSource
Specifies the protocol used to send the order.
std::string clientOrderId
Unique ID of the order within the client institution.
UInt32 workingTraderId
Unique ID of the working trader, belonging to the same member.
std::string clientPreAllocationTraderName
Name of the trader who performed the Pre-Allocation.
TI_FLAG::Enum linkedByOriginatorFg
Specifies whether the order has been linked by the originator.
BV_HANDLING_INSTRUCTION::Enum handlingInstruction
Order execution modality optionally defined by the Trader. None by default.
UInt64 executionTime
Order execution time optionally defined by the Trader.
BV_ORDER_STAGING_EVENT::Enum event
Action applied to the order.
Double clientLimitQuotation
Limit Price/Yield specified by the client.
UInt32 clientPreAllocationTraderId
Unique ID of the trader who performed the Pre-Allocation.
UInt32 allocationId
Unique ID of the pre-allocation or of the allocation during the trade splitting phase.
unsigned long long UInt64
Definition: Defines.h:47
BV_WAIVER_INDICATOR::Enum waiverIndicator
Waiver Indicator.
unsigned short UInt16
Definition: Defines.h:45
Double averagePrice
Weighted Average Price, calculated after fill or partial fill.
Double limitQuotation
Limit Price/Yield specified by the central system.