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
InstrumentSummary.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
#include <
OnixS/Eurex/MarketData/EOBI/DataContainer.h
>
26
27
namespace
OnixS
28
{
29
namespace
Eurex
30
{
31
namespace
MarketData
32
{
33
namespace
EOBI
34
{
35
class
ONIXS_EUREX_EMDI_API
InstrumentSummaryEntry
:
public
DataContainer
36
{
37
public
:
38
/// Price.
39
bool
mdEntryPx (
Decimal
& price)
const
;
40
41
/// Quantity.
42
QuantityType
mdEntrySize()
const
;
43
44
///
45
EOBI::MDOriginType::Enum
mdOriginType()
const
;
46
47
/// Type of market data entry.
48
EOBI::MDEntryType::Enum
mdEntryType()
const
;
49
50
/// Trade Condition
51
EOBI::TradeCondition::Enum
tradeCondition()
const
;
52
53
///
54
EOBI::TrdType::Enum
trdType()
const
;
55
56
///
57
EOBI::MultiLegReportingType::Enum
multiLegReportingType()
const
;
58
59
///
60
EOBI::MultiLegPriceModel::Enum
multiLegPriceModel()
const
;
61
62
///
63
EOBI::QuantityType
nonDisclosedTradeVolume()
const
;
64
65
/// Appends text presentation.
66
void
toString (std::string&)
const
;
67
68
private
:
69
friend
class
InstrumentSummaryEntries
;
70
71
InstrumentSummaryEntry
(
const
void
* data);
72
};
73
74
class
ONIXS_EUREX_EMDI_API
InstrumentSummaryEntries
:
public
DataContainer
75
{
76
public
:
77
/// Number of entries
78
size_t
size()
const
;
79
80
/// Entry accessor
81
InstrumentSummaryEntry
operator[] (
size_t
idx)
const
;
82
83
/// Appends text presentation.
84
void
toString (std::string&)
const
;
85
86
private
:
87
friend
class
InstrumentSummary
;
88
89
explicit
90
InstrumentSummaryEntries
(
const
void
* data);
91
};
92
93
class
ONIXS_EUREX_EMDI_API
InstrumentSummary
:
public
MessageBase
94
{
95
public
:
96
/// Message type
97
std::string msgType()
const
;
98
99
/// Market data type
100
EOBI::MarketDataType::Enum
marketDataType()
const
;
101
102
/// Marketplace assigned identifier.
103
EOBI::SecurityIDSource::Enum
securityIDSource()
const
;
104
105
/// Unique instrument identifier.
106
UInt64 securityID()
const
;
107
108
/// Last update time of the corresponding order book.
109
UInt64 lastUpdateTime()
const
;
110
111
/// Last matching execution timestamp.
112
UInt64 trdRegTSExecutionTime()
const
;
113
114
/// Corresponding number of orders for this instrument.
115
UInt16
totNoOrders()
const
;
116
117
/// Instrument status.
118
EOBI::SecurityStatus::Enum
securityStatus()
const
;
119
120
/// Instrument state status.
121
EOBI::SecurityTradingStatus::Enum
securityTradingStatus()
const
;
122
123
/// Indicator for stressed market conditions.
124
EOBI::MarketCondition::Enum
marketCondition()
const
;
125
126
/// Fast market indicator
127
EOBI::FastMarketIndicator::Enum
fastMarketIndicator()
const
;
128
129
///
130
EOBI::SecurityTradingEvent::Enum
securityTradingEvent()
const
;
131
132
///
133
EOBI::SoldOutIndicator::Enum
soldOutIndicator()
const
;
134
135
/// Upper boundary price.
136
bool
highPx(
Decimal
& price)
const
;
137
138
/// Lower boundary price.
139
bool
lowPx(
Decimal
& price)
const
;
140
141
///
142
EOBI::ProductComplex::Enum
productComplex()
const
;
143
144
/// Number of entries in Market Data message for MDEntryGrp.
145
UInt8
noMDEntries()
const
;
146
147
///
148
EOBI::TESSecurityStatus::Enum
tesSecurityStatus()
const
;
149
150
/// Variable size array, record counter: NoMDEntries
151
InstrumentSummaryEntries
mdInstrumentEntryGrp()
const
;
152
153
/// Appends text presentation.
154
void
toString (std::string&)
const
ONIXS_EUREX_EMDI_OVERRIDE
;
155
156
private
:
157
friend
class
Implementation::MessageFactory;
158
159
InstrumentSummary
(
const
void
* data,
const
DataSource
& dataSource) :
MessageBase
(data, dataSource) {}
160
};
161
}
162
}
163
}
164
}
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::TrdType::Enum
Enum
Definition:
Defines.h:1722
OnixS::Eurex::MarketData::EOBI::MarketDataType::Enum
Enum
Definition:
Defines.h:1123
OnixS::Eurex::MarketData::EOBI::TESSecurityStatus::Enum
Enum
Definition:
Defines.h:1820
OnixS::Eurex::MarketData::EOBI::TradeCondition::Enum
Enum
Definition:
Defines.h:1315
MessageBase.h
ONIXS_EUREX_EMDI_OVERRIDE
#define ONIXS_EUREX_EMDI_OVERRIDE
Definition:
Compiler.h:134
OnixS::Eurex::MarketData::EOBI::InstrumentSummary
Definition:
InstrumentSummary.h:93
OnixS::Eurex::MarketData::EOBI::SecurityStatus::Enum
Enum
Definition:
Defines.h:1225
ABI.h
OnixS::Eurex::MarketData::EOBI::InstrumentSummaryEntries
Definition:
InstrumentSummary.h:74
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::SecurityTradingEvent::Enum
Enum
Definition:
Defines.h:1417
OnixS::Eurex::MarketData::EOBI::SoldOutIndicator::Enum
Enum
Definition:
Defines.h:1491
OnixS::Eurex::MarketData::UInt16
unsigned short UInt16
Definition:
Numeric.h:38
OnixS::Eurex::MarketData::EOBI::MDOriginType::Enum
Enum
Definition:
Defines.h:1781
OnixS::Eurex::MarketData::EOBI::FastMarketIndicator::Enum
Enum
Definition:
Defines.h:1033
DataContainer.h
OnixS::Eurex::MarketData::EOBI::MarketCondition::Enum
Enum
Definition:
Defines.h:1459
OnixS::Eurex::MarketData::DataSource
Definition:
Defines.h:93
OnixS::Eurex::MarketData::EOBI::MDEntryType::Enum
Enum
Definition:
Defines.h:1080
OnixS::Eurex::MarketData::EOBI::SecurityTradingStatus::Enum
Enum
Definition:
Defines.h:1243
OnixS::Eurex::MarketData::EOBI::DataContainer
Definition:
DataContainer.h:34
OnixS::Eurex::MarketData::EOBI::InstrumentSummaryEntry
Definition:
InstrumentSummary.h:35
OnixS::Eurex::MarketData::EOBI::ProductComplex::Enum
Enum
Definition:
Defines.h:1190
OnixS::Eurex::MarketData::EOBI::MultiLegReportingType::Enum
Enum
Definition:
Defines.h:1746
OnixS::Eurex::MarketData::EOBI::MultiLegPriceModel::Enum
Enum
Definition:
Defines.h:1765
OnixS::Eurex::MarketData::EOBI::MessageBase
Definition:
MessageBase.h:41