OnixS C++ Eurex T7 Market and Reference Data (EMDI, MDI, RDI, EOBI) Handlers
17.0.1
API documentation
Home
Contents
Namespaces
Classes
Files
File List
File Members
include
OnixS
Eurex
MarketData
EOBI
ExecutionSummary.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/Eurex/MarketData/ABI.h
>
23
#include <
OnixS/Eurex/MarketData/Numeric.h
>
24
#include <
OnixS/Eurex/MarketData/EOBI/MessageBase.h
>
25
26
namespace
OnixS
27
{
28
namespace
Eurex
29
{
30
namespace
MarketData
31
{
32
namespace
EOBI
33
{
34
///
35
class
ONIXS_EUREX_EMDI_API
RemainingOrderDetailsEntry
:
public
DataContainer
36
{
37
public
:
38
/// Appends text presentation.
39
void
toString (std::string&)
const
;
40
41
///
42
bool
trdRegTSPrevTimePriority(UInt64& result)
const
ONIXS_EUREX_EMDI_NOEXCEPT
;
43
44
///
45
bool
displayQty(Int64& result)
const
ONIXS_EUREX_EMDI_NOEXCEPT
;
46
47
///
48
bool
price(
Decimal
& price)
const
ONIXS_EUREX_EMDI_NOEXCEPT
;
49
50
private
:
51
friend
class
RemainingOrderDetailsEntries
;
52
53
explicit
RemainingOrderDetailsEntry
(
const
void
* data)
ONIXS_EUREX_EMDI_NOEXCEPT
;
54
};
55
56
class
ONIXS_EUREX_EMDI_API
RemainingOrderDetailsEntries
:
public
DataContainer
57
{
58
public
:
59
/// Number of entries
60
size_t
size()
const
ONIXS_EUREX_EMDI_NOEXCEPT
;
61
62
/// Entry accessor
63
RemainingOrderDetailsEntry
operator[] (
size_t
idx)
const
;
64
65
/// Appends text presentation.
66
void
toString (std::string&)
const
;
67
68
private
:
69
friend
class
ExecutionSummary
;
70
71
explicit
RemainingOrderDetailsEntries
(
const
void
* data)
ONIXS_EUREX_EMDI_NOEXCEPT
;
72
};
73
74
class
ONIXS_EUREX_EMDI_API
ExecutionSummary
:
public
MessageBase
75
{
76
public
:
77
/// Message type
78
std::string msgType()
const
;
79
80
/// Market data type
81
EOBI::MarketDataType::Enum
marketDataType()
const
;
82
83
/// Type of Market Data update action.
84
EOBI::MDUpdateAction::Enum
mdUpdateAction()
const
;
85
86
/// Marketplace assigned identifier.
87
EOBI::SecurityIDSource::Enum
securityIDSource()
const
;
88
89
/// Unique instrument identifier.
90
UInt64 securityID()
const
;
91
92
/// UTCTimestamp
93
UInt64 aggressorTime()
const
;
94
95
/// Gateway request in timestamp.
96
UInt64 requestTime()
const
;
97
98
/// Matching timestamp.
99
UInt64 execID()
const
;
100
101
/// Total quantity of this match.
102
QuantityType
lastQty()
const
;
103
104
/// Aggressor side
105
EOBI::AggressorSide::Enum
aggressorSide()
const
;
106
107
/// Indicates whether a synthetic match is occurred.
108
EOBI::TradeCondition::Enum
tradeCondition()
const
;
109
110
/// The trading HHI is the index to the HHI interval of the match event.
111
UInt8
tradingHHIIndicator()
const
;
112
113
/// Worst price of this match.
114
Decimal
lastPx()
const
;
115
116
/// Quantity of matched passive orders that is not displayed to the market.
117
QuantityType
restingHiddenQty()
const
;
118
119
// The deleted quantity due to Self Match Prevention within a Match Event. This quantity is not part of LastQty which could even be 0 in certain cases.
120
QuantityType
restingCxlQty()
const
;
121
122
///
123
RemainingOrderDetailsEntries
remainingOrderDetailsEntriesGrp()
const
ONIXS_EUREX_EMDI_NOEXCEPT
;
124
125
/// Appends text presentation.
126
void
toString (std::string&)
const
ONIXS_EUREX_EMDI_OVERRIDE
;
127
128
private
:
129
friend
class
Implementation::MessageFactory;
130
131
ExecutionSummary
(
const
void
* data,
const
DataSource
& dataSource) :
MessageBase
(data, dataSource) {}
132
};
133
}
134
}
135
}
136
}
OnixS::Eurex::MarketData::UInt8
unsigned char UInt8
Definition:
Numeric.h:35
Numeric.h
OnixS::Eurex::MarketData::EOBI::QuantityType
Int64 QuantityType
Definition:
Defines.h:988
OnixS::Eurex::MarketData::EOBI::MDUpdateAction::Enum
Enum
Definition:
Defines.h:1111
OnixS::Eurex::MarketData::EOBI::MarketDataType::Enum
Enum
Definition:
Defines.h:1123
OnixS::Eurex::MarketData::EOBI::TradeCondition::Enum
Enum
Definition:
Defines.h:1315
MessageBase.h
OnixS::Eurex::MarketData::EOBI::RemainingOrderDetailsEntries
Definition:
ExecutionSummary.h:56
ONIXS_EUREX_EMDI_NOEXCEPT
#define ONIXS_EUREX_EMDI_NOEXCEPT
Definition:
Compiler.h:130
OnixS::Eurex::MarketData::EOBI::RemainingOrderDetailsEntry
Definition:
ExecutionSummary.h:35
ONIXS_EUREX_EMDI_OVERRIDE
#define ONIXS_EUREX_EMDI_OVERRIDE
Definition:
Compiler.h:134
ABI.h
OnixS::Eurex::MarketData::EOBI::SecurityIDSource::Enum
Enum
Definition:
Defines.h:1214
OnixS
Definition:
Defines.h:30
OnixS::Eurex::MarketData::Decimal
Decimal type for better precision.
Definition:
Numeric.h:63
OnixS::Eurex::MarketData::EOBI::ExecutionSummary
Definition:
ExecutionSummary.h:74
OnixS::Eurex::MarketData::DataSource
Definition:
Defines.h:93
OnixS::Eurex::MarketData::EOBI::DataContainer
Definition:
DataContainer.h:34
OnixS::Eurex::MarketData::EOBI::AggressorSide::Enum
Enum
Definition:
Defines.h:992
OnixS::Eurex::MarketData::EOBI::MessageBase
Definition:
MessageBase.h:41