6#include "../../internal/Conf.hpp"
10#include "../../internal/Common.hpp"
11#include "../EventTypeEnum.hpp"
12#include "../LastingEvent.hpp"
13#include "./MarketEvent.hpp"
25
26
27
28
29
30
31
33 friend struct EventMapper;
35 static constexpr std::uint64_t MILLISECONDS_SHIFT = 22ULL;
38 std::int32_t timeMillisSequence{};
39 std::int32_t timeNanoPart{};
40 std::int64_t bidTime{};
41 std::int16_t bidExchangeCode{};
42 double bidPrice = math::NaN;
43 double bidSize = math::NaN;
44 std::int64_t askTime{};
45 std::int16_t askExchangeCode{};
46 double askPrice = math::NaN;
47 double askSize = math::NaN;
52 void recomputeTimeMillisPart()
noexcept {
53 data_.timeMillisSequence =
54 orOp(sal(time_util::getMillisFromTime(std::max(data_.askTime, data_.bidTime)), MILLISECONDS_SHIFT),
58 void fillData(
void *graalNative)
noexcept override;
59 void fillGraalData(
void *graalNative)
const noexcept override;
63 using Ptr = std::shared_ptr<Quote>;
66 using Unique = std::unique_ptr<Quote>;
72
73
74
75
79
80
81
82
83
84
88
89
90
91
92
93
97
98
99
100
101
102 static void freeGraal(
void *graalNative);
111
112
113
114
119
120
121
122
123
131
132
133
134
135
136
144
145
146
147
148
149
155
156
157
158
159
160
161
165
166
167
168
169
170
178
179
180
181
182
184 return math::floorDiv(std::max(data_.bidTime, data_.askTime), 1000LL) * 1000LL +
185 shr(data_.timeMillisSequence, MILLISECONDS_SHIFT);
189
190
191
192
193
195 return time_nanos_util::getNanosFromMillisAndNanoPart(
getTime(), data_.timeNanoPart);
199
200
201
202
204 return data_.timeNanoPart;
208
209
210
211
212
214 data_.timeNanoPart = timeNanoPart;
218
219
220
221
222
223
231
232
233
234
235
236
237
238
240 return data_.bidTime;
244
245
246
247
248
249
250
251
253 data_.bidTime = bidTime;
255 recomputeTimeMillisPart();
259
260
261
262
263
264
265
266
267
275
276
277
278
282
283
284
285
289
290
291
292
296
297
298
299
300
308
309
310
311
315
316
317
318
319
327
328
329
330
332 return data_.bidPrice;
336
337
338
339
341 data_.bidPrice = bidPrice;
345
346
347
348
349
357
358
359
360
362 return data_.bidSize;
366
367
368
369
371 data_.bidSize = bidSize;
375
376
377
378
379
387
388
389
390
391
392
393
394
396 return data_.askTime;
400
401
402
403
404
405
406
407
409 data_.askTime = askTime;
411 recomputeTimeMillisPart();
415
416
417
418
419
420
421
422
423
431
432
433
434
438
439
440
441
445
446
447
448
452
453
454
455
456
464
465
466
467
471
472
473
474
475
483
484
485
486
488 return data_.askPrice;
492
493
494
495
497 data_.askPrice = askPrice;
501
502
503
504
505
513
514
515
516
518 return data_.askSize;
522
523
524
525
527 data_.askSize = askSize;
531
532
533
534
535
543
544
545
546
547 std::string
toString()
const override;
#define DXFCPP_MACRO_CONCAT_INNER(a, b)
Definition Common.hpp:129
#define DXFCPP_MACRO_CONCAT(a, b)
Definition Common.hpp:128
#define DXFCPP_MACRO_UNIQUE_NAME(base)
Definition Common.hpp:130
#define DXFCXX_DISABLE_MSC_WARNINGS_POP()
Definition Conf.hpp:31
#define DXFCPP_END_NAMESPACE
Definition Conf.hpp:97
#define DXFCPP_BEGIN_NAMESPACE
Definition Conf.hpp:94
#define DXFCXX_DISABLE_GCC_WARNINGS_PUSH(warnings)
Definition Conf.hpp:47
#define DXFCXX_DISABLE_GCC_WARNINGS_POP()
Definition Conf.hpp:49
#define DXFCXX_DISABLE_MSC_WARNINGS_PUSH(warnings)
Definition Conf.hpp:30
#define DXFCPP_TRACE_ISOLATES
Definition Debug.hpp:19
#define DXFCPP_DEBUG
Definition Debug.hpp:15
#define DXFCPP_TRACE_LISTS
Definition Debug.hpp:22
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_builder_with_name(dxfc_dxendpoint_builder_t builderHandle, const char *name)
Changes the name used to distinguish multiple endpoints in the same process (GraalVM Isolate) in logs...
Definition DXEndpoint.cpp:692
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_builder_with_properties(dxfc_dxendpoint_builder_t builder, const dxfc_dxendpoint_property_t **properties, size_t size)
Sets all supported properties from the provided properties object.
Definition DXEndpoint.cpp:725
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_password(dxfc_dxendpoint_t endpoint, const char *password)
Changes password for this endpoint.
Definition DXEndpoint.cpp:973
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_get_publisher(dxfc_dxendpoint_t endpoint, DXFC_OUT dxfc_dxpublisher_t *publisher)
Definition DXEndpoint.cpp:1163
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_builder_supports_property(dxfc_dxendpoint_builder_t builder, const char *key, DXFC_OUT int *supports)
Checks if a property is supported.
Definition DXEndpoint.cpp:752
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_add_state_change_listener(dxfc_dxendpoint_t endpoint, dxfc_dxendpoint_state_change_listener listener)
Adds a listener notified about changes in state property.
Definition DXEndpoint.cpp:1109
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_disconnect(dxfc_dxendpoint_t endpoint)
Terminates all remote network connections.
Definition DXEndpoint.cpp:1024
#define DXFCPP_EXPORT
Definition api.h:35
void * dxfc_dxendpoint_builder_t
The dxFeed endpoint's builder handle.
Definition api.h:207
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_close_and_await_termination(dxfc_dxendpoint_t endpoint)
Closes this endpoint and wait until all pending data processing tasks are completed.
Definition DXEndpoint.cpp:922
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_await_not_connected(dxfc_dxendpoint_t endpoint)
Waits while this endpoint state becomes NOT_CONNECTED or CLOSED.
Definition DXEndpoint.cpp:1075
dxfc_dxendpoint_state_t
Represents the current state of endpoint.
Definition api.h:149
@ DXFC_DXENDPOINT_STATE_CLOSED
Endpoint was closed.
Definition api.h:169
@ DXFC_DXENDPOINT_STATE_NOT_CONNECTED
Endpoint was created by is not connected to remote endpoints.
Definition api.h:153
@ DXFC_DXENDPOINT_STATE_CONNECTING
The connect function was called to establish connection to remove endpoint, but the connection is not...
Definition api.h:159
@ DXFC_DXENDPOINT_STATE_CONNECTED
The connection to the remote endpoint is established.
Definition api.h:164
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_get_instance(void *user_data, DXFC_OUT dxfc_dxendpoint_t *endpoint)
Returns a default application-wide singleton instance of dxFeed endpoint with a FEED role.
Definition DXEndpoint.cpp:811
#define DXFC_OUT
Definition api.h:17
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_get_state(dxfc_dxendpoint_t endpoint, DXFC_OUT dxfc_dxendpoint_state_t *state)
Returns the state of this endpoint.
Definition DXEndpoint.cpp:1092
void * dxfc_dxendpoint_t
The dxFeed endpoint handle.
Definition api.h:198
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_builder_with_property(dxfc_dxendpoint_builder_t builder, const char *key, const char *value)
Sets the specified property.
Definition DXEndpoint.cpp:708
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_builder_free(dxfc_dxendpoint_builder_t builder)
Removes a builder from the registry.
Definition DXEndpoint.cpp:799
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_connect(dxfc_dxendpoint_t endpoint, const char *address)
Connects to the specified remote address.
Definition DXEndpoint.cpp:990
dxfc_error_code_t
List of error codes.
Definition api.h:49
@ DXFC_EC_ERROR
The error returned if the current operation cannot be completed.
Definition api.h:60
@ DXFC_EC_SUCCESS
OK.
Definition api.h:53
@ DXFC_EC_G_ERR
dxFeed Graal Native API error.
Definition api.h:57
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_remove_state_change_listener(dxfc_dxendpoint_t endpoint, dxfc_dxendpoint_state_change_listener listener)
Removes a listener notified about changes in state property.
Definition DXEndpoint.cpp:1135
DXFCPP_EXPORT dxfc_error_code_t dxfc_system_set_property(const char *key, const char *value)
Sets the system property indicated by the specified key.
Definition System.cpp:73
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_builder_build(dxfc_dxendpoint_builder_t builder, void *user_data, DXFC_OUT dxfc_dxendpoint_t *endpoint)
Builds the new dxFeed endpoint instance.
Definition DXEndpoint.cpp:769
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_get_feed(dxfc_dxendpoint_t endpoint, DXFC_OUT dxfc_dxfeed_t *feed)
Definition DXEndpoint.cpp:1158
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_await_processed(dxfc_dxendpoint_t endpoint)
Waits until this endpoint stops processing data (becomes quiescent).
Definition DXEndpoint.cpp:1058
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_close(dxfc_dxendpoint_t endpoint)
Closes this endpoint.
Definition DXEndpoint.cpp:905
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_new_builder(DXFC_OUT dxfc_dxendpoint_builder_t *builder)
Creates a new dxFeed endpoint's builder instance.
Definition DXEndpoint.cpp:659
void(* dxfc_dxendpoint_state_change_listener)(dxfc_dxendpoint_state_t old_state, dxfc_dxendpoint_state_t new_state, void *user_data)
The endpoint current state change listener.
Definition api.h:178
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_reconnect(dxfc_dxendpoint_t endpoint)
Terminates all established network connections and initiates connecting again with the same address.
Definition DXEndpoint.cpp:1007
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_get_role(dxfc_dxendpoint_t endpoint, DXFC_OUT dxfc_dxendpoint_role_t *role)
Returns the role of this endpoint.
Definition DXEndpoint.cpp:939
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_user(dxfc_dxendpoint_t endpoint, const char *user)
Changes username for this endpoint.
Definition DXEndpoint.cpp:956
DXFCPP_EXPORT dxfc_error_code_t dxfc_system_get_property(const char *key, DXFC_OUT char *buffer, size_t buffer_size)
Gets the system property indicated by the specified key.
dxfc_dxendpoint_role_t
Represents the role of an endpoint that was specified during its creation.
Definition api.h:89
@ DXFC_DXENDPOINT_ROLE_PUBLISHER
PUBLISHER endpoint connects to the remote publisher hub (also known as multiplexor) or creates a publ...
Definition api.h:127
@ DXFC_DXENDPOINT_ROLE_STREAM_FEED
STREAM_FEED endpoint is similar to DXFC_DXENDPOINT_ROLE_FEED and also connects to the remote data fee...
Definition api.h:116
@ DXFC_DXENDPOINT_ROLE_FEED
FEED endpoint connects to the remote data feed provider and is optimized for real-time or delayed dat...
Definition api.h:99
@ DXFC_DXENDPOINT_ROLE_STREAM_PUBLISHER
STREAM_PUBLISHER endpoint is similar to DXFC_DXENDPOINT_ROLE_PUBLISHER and also connects to the remot...
Definition api.h:136
@ DXFC_DXENDPOINT_ROLE_LOCAL_HUB
LOCAL_HUB endpoint is a local hub without the ability to establish network connections.
Definition api.h:143
@ DXFC_DXENDPOINT_ROLE_ON_DEMAND_FEED
ON_DEMAND_FEED endpoint is similar to DXFC_DXENDPOINT_ROLE_FEED, but it is designed to be used with d...
Definition api.h:107
void * dxfc_dxpublisher_t
The dxFeed publisher handle.
Definition api.h:217
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_create(void *user_data, DXFC_OUT dxfc_dxendpoint_t *endpoint)
Creates an endpoint with FEED role.
Definition DXEndpoint.cpp:858
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_get_instance2(dxfc_dxendpoint_role_t role, void *user_data, DXFC_OUT dxfc_dxendpoint_t *endpoint)
Returns a default application-wide singleton instance of DXEndpoint for a specific role.
Definition DXEndpoint.cpp:834
void * dxfc_dxfeed_t
The dxFeed handle.
Definition api.h:212
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_builder_with_role(dxfc_dxendpoint_builder_t builder, dxfc_dxendpoint_role_t role)
Sets role for the created dxFeed endpoint.
Definition DXEndpoint.cpp:675
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_create2(dxfc_dxendpoint_role_t role, void *user_data, DXFC_OUT dxfc_dxendpoint_t *endpoint)
Creates an endpoint with a specified role.
Definition DXEndpoint.cpp:881
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_free(dxfc_dxendpoint_t endpoint)
Removes the dxFeed endpoint from the registry.
Definition DXEndpoint.cpp:1168
DXFCPP_EXPORT dxfc_error_code_t dxfc_dxendpoint_disconnect_and_clear(dxfc_dxendpoint_t endpoint)
Terminates all remote network connections and clears stored data.
Definition DXEndpoint.cpp:1041
AnalyticOrder & withTradePrice(double tradePrice) noexcept
Changes trade price.
Definition AnalyticOrder.cpp:192
AnalyticOrder & withIcebergHiddenSize(double icebergHiddenSize) noexcept
Changes iceberg hidden size and returns the current analytic order.
Definition AnalyticOrder.cpp:242
AnalyticOrder & withTime(std::int64_t time) noexcept
Changes time of this analytic order and returns it.
Definition AnalyticOrder.cpp:140
AnalyticOrder & withEventSymbol(const StringLike &eventSymbol) noexcept override
Changes an event's symbol and returns the current analytic order.
Definition AnalyticOrder.cpp:116
AnalyticOrder() noexcept
Creates new analytic order event with default values.
Definition AnalyticOrder.cpp:110
double getIcebergHiddenSize() const noexcept
Returns iceberg hidden size of this analytic order.
Definition AnalyticOrder.cpp:234
void * toGraal() const override
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition AnalyticOrder.cpp:69
AnalyticOrder & withOrderSide(const Side &side) noexcept
Changes side of this analytic order.
Definition AnalyticOrder.cpp:208
AnalyticOrder & withTradeId(std::int64_t tradeId) noexcept
Changes trade ID.
Definition AnalyticOrder.cpp:188
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition AnalyticOrder.cpp:82
static Ptr fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition AnalyticOrder.cpp:49
AnalyticOrder & withAction(const OrderAction &action) noexcept
Changes the action of this analytic order and returns it.
Definition AnalyticOrder.cpp:156
AnalyticOrder & withTimeNanos(std::int64_t timeNanos) noexcept
Changes time of this analytic order and returns it.
Definition AnalyticOrder.cpp:152
const IcebergType & getIcebergType() const &noexcept
Returns iceberg type of this analytic order.
Definition AnalyticOrder.cpp:262
AnalyticOrder & withActionTime(std::int64_t actionTime) noexcept
Changes time of the last action and returns the current analytic order.
Definition AnalyticOrder.cpp:160
AnalyticOrder & withTimeNanoPart(std::int32_t timeNanoPart) noexcept
Changes microseconds and nanoseconds time part of this analytic order.
Definition AnalyticOrder.cpp:144
AnalyticOrder & withExchangeCode(std::int16_t exchangeCode) noexcept
Changes exchange code of this analytic order.
Definition AnalyticOrder.cpp:204
AnalyticOrder(const StringLike &eventSymbol) noexcept
Creates a new analytic order event with the specified event symbol.
Definition AnalyticOrder.cpp:113
AnalyticOrder & withScope(const Scope &scope) noexcept
Changes the scope of this analytic order.
Definition AnalyticOrder.cpp:212
void setIcebergPeakSize(double icebergPeakSize) noexcept
Changes iceberg peak size of this analytic order.
Definition AnalyticOrder.cpp:224
void assign(std::shared_ptr< EventType > event) override
Replaces the contents of the event.
Definition AnalyticOrder.cpp:102
double getIcebergPeakSize() const noexcept
Returns iceberg peak size of this analytic order.
Definition AnalyticOrder.cpp:220
AnalyticOrder & withPrice(double price) noexcept
Changes price of this analytic order.
Definition AnalyticOrder.cpp:172
void setIcebergExecutedSize(double icebergExecutedSize) noexcept
Changes the iceberg executed size of this analytic order.
Definition AnalyticOrder.cpp:252
std::string toString() const override
Returns a string representation of the current object.
Definition AnalyticOrder.cpp:277
void setIcebergHiddenSize(double icebergHiddenSize) noexcept
Changes iceberg hidden size of this analytic order.
Definition AnalyticOrder.cpp:238
static const EventTypeEnum & TYPE
Type identifier and additional information about the current event class.
Definition AnalyticOrder.hpp:83
AnalyticOrder & withCount(std::int64_t count) noexcept
Changes the number of individual orders in this aggregate order.
Definition AnalyticOrder.cpp:184
AnalyticOrder & withIndex(std::int64_t index) noexcept
Changes the unique per-symbol index of this analytic order and returns it.
Definition AnalyticOrder.cpp:136
AnalyticOrder & withAuxOrderId(std::int64_t auxOrderId) noexcept
Changes auxiliary order ID.
Definition AnalyticOrder.cpp:168
AnalyticOrder & withIcebergPeakSize(double icebergPeakSize) noexcept
Changes iceberg peak size and returns the current analytic order.
Definition AnalyticOrder.cpp:228
AnalyticOrder & withSequence(std::int32_t sequence) noexcept
Changes sequence number of this analytic order.
Definition AnalyticOrder.cpp:148
AnalyticOrder & withTradeSize(double tradeSize) noexcept
Changes trade size.
Definition AnalyticOrder.cpp:196
double getIcebergExecutedSize() const noexcept
Returns iceberg executed size of this analytic order.
Definition AnalyticOrder.cpp:248
AnalyticOrder & withEventFlags(std::int32_t eventFlags) noexcept
Changes transactional event flags and returns the current analytic order.
Definition AnalyticOrder.cpp:128
AnalyticOrder & withOrderId(std::int64_t orderId) noexcept
Changes order ID.
Definition AnalyticOrder.cpp:164
AnalyticOrder & withEventTime(std::int64_t eventTime) noexcept
Changes the event's creation time and returns the current analytic order.
Definition AnalyticOrder.cpp:120
AnalyticOrder & withEventFlags(const EventFlagsMask &eventFlags) noexcept
Changes transactional event flags and returns the current analytic order.
Definition AnalyticOrder.cpp:132
AnalyticOrder & withIcebergExecutedSize(double icebergExecutedSize) noexcept
Changes iceberg executed size and returns the current analytic order.
Definition AnalyticOrder.cpp:256
AnalyticOrder & withExchangeCode(char exchangeCode) noexcept
Changes exchange code of this analytic order.
Definition AnalyticOrder.cpp:200
void setIcebergType(const IcebergType &icebergType) noexcept
Changes iceberg type of this analytic order.
Definition AnalyticOrder.cpp:266
AnalyticOrder & withSize(double size) noexcept
Changes size of this analytic order.
Definition AnalyticOrder.cpp:176
AnalyticOrder & withMarketMaker(const StringLike &marketMaker) noexcept
Changes market maker or other aggregate identifier of this analytic order.
Definition AnalyticOrder.cpp:216
AnalyticOrder & withIcebergType(const IcebergType &icebergType) noexcept
Changes an iceberg type and returns the current analytic order.
Definition AnalyticOrder.cpp:271
AnalyticOrder & withExecutedSize(double executedSize) noexcept
Changes executed size of this analytic order.
Definition AnalyticOrder.cpp:180
AnalyticOrder & withSource(const OrderSource &source) noexcept
Changes an event's source and returns the current analytic order.
Definition AnalyticOrder.cpp:124
void setSequence(std::int32_t sequence)
Changes sequence number of this event.
Definition Candle.cpp:254
Candle & withBidVolume(double bidVolume) noexcept
Changes bid volume in this candle.
Definition Candle.cpp:377
double getImpVolatility() const noexcept
Returns the implied volatility.
Definition Candle.cpp:397
void setClose(double close) noexcept
Changes the last (close) price of this candle.
Definition Candle.cpp:331
Candle & withSequence(std::int32_t sequence) noexcept
Changes sequence number of this event.
Definition Candle.cpp:265
void setTime(std::int64_t time) noexcept
Changes the timestamp of the event in milliseconds.
Definition Candle.cpp:238
void setBidVolume(double bidVolume) noexcept
Changes bid volume in this candle.
Definition Candle.cpp:373
void setEventFlags(std::int32_t eventFlags) noexcept override
Changes transactional event flags.
Definition Candle.cpp:196
static Ptr fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition Candle.cpp:84
void assign(std::shared_ptr< EventType > event) override
Replaces the contents of the event.
Definition Candle.cpp:117
void setImpVolatility(double impVolatility)
Changes implied volatility.
Definition Candle.cpp:401
Candle & withOpen(double open) noexcept
Changes the first (open) price of this candle.
Definition Candle.cpp:293
Candle & withHigh(double high) noexcept
Changes the maximal (high) price of this candle.
Definition Candle.cpp:307
Candle & withCount(std::int64_t count) noexcept
Changes total number of original trade (or quote) events in this candle.
Definition Candle.cpp:279
Candle & withAskVolume(double askVolume) noexcept
Changes ask volume in this candle.
Definition Candle.cpp:391
double getAskVolume() const noexcept
Returns ask volume in this candle.
Definition Candle.cpp:383
std::int64_t getTime() const noexcept override
Returns the timestamp of the event in milliseconds.
Definition Candle.cpp:232
Candle(CandleSymbol eventSymbol) noexcept
Creates a new candle with the specified candle event symbol.
Definition Candle.cpp:147
void setEventSymbol(const CandleSymbol &eventSymbol) noexcept override
Changes the event symbol that identifies this event type in subscription.
Definition Candle.cpp:162
Candle() noexcept
Creates a new candle with default values.
Definition Candle.cpp:144
void setOpen(double open) noexcept
Changes the first (open) price of this candle.
Definition Candle.cpp:289
const std::optional< CandleSymbol > & getEventSymbolOpt() const &noexcept override
Returns a symbol of this event.
Definition Candle.cpp:158
double getOpen() const noexcept
Returns the first (open) price of this candle.
Definition Candle.cpp:285
void setEventTime(std::int64_t eventTime) noexcept override
Changes event creation time.
Definition Candle.cpp:176
std::int64_t getCount() const noexcept
Returns total number of original trade (or quote) events in this candle.
Definition Candle.cpp:271
void setAskVolume(double askVolume) noexcept
Changes ask volume in this candle.
Definition Candle.cpp:387
double getBidVolume() const noexcept
Returns bid volume in this candle.
Definition Candle.cpp:369
Candle & withEventFlags(const EventFlagsMask &eventFlags) noexcept
Changes transactional event flags and returns the current candle.
Definition Candle.cpp:210
const CandleSymbol & getEventSymbol() const &noexcept override
Returns a symbol of this event.
Definition Candle.cpp:150
double getHigh() const noexcept
Returns the maximal (high) price of this candle.
Definition Candle.cpp:299
Candle & withClose(double close) noexcept
Changes the last (close) price of this candle.
Definition Candle.cpp:335
void setHigh(double high) noexcept
Changes the maximal (high) price of this candle.
Definition Candle.cpp:303
double getVWAP() const noexcept
Returns volume-weighted average price (VWAP) in this candle.
Definition Candle.cpp:355
Candle & withVolume(double volume) noexcept
Changes total volume in this candle.
Definition Candle.cpp:349
Candle & withEventFlags(std::int32_t eventFlags) noexcept
Changes transactional event flags and returns the current candle.
Definition Candle.cpp:200
void * toGraal() const override
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition Candle.cpp:104
double getLow() const noexcept
Returns the minimal (low) price of this candle.
Definition Candle.cpp:313
Candle & withIndex(std::int64_t index) noexcept
Changes the unique per-symbol index of this event.
Definition Candle.cpp:220
Candle & withLow(double low) noexcept
Changes the minimal (low) price of this candle.
Definition Candle.cpp:321
Candle & withEventSymbol(const CandleSymbol &eventSymbol) noexcept
Changes an event's symbol and returns the current candle.
Definition Candle.cpp:166
EventFlagsMask getEventFlagsMask() const noexcept override
Returns transactional event flags.
Definition Candle.cpp:192
double getVolume() const noexcept
Returns total volume in this candle.
Definition Candle.cpp:341
std::int64_t getIndex() const noexcept override
Returns unique per-symbol index of this event.
Definition Candle.cpp:228
void setLow(double low) noexcept
Changes the minimal (low) price of this candle.
Definition Candle.cpp:317
void setEventFlags(const EventFlagsMask &eventFlags) noexcept override
Changes transactional event flags.
Definition Candle.cpp:206
void setIndex(std::int64_t index) override
Changes unique per-symbol index of this event.
Definition Candle.cpp:216
Candle & withImpVolatility(double impVolatility) noexcept
Changes implied volatility.
Definition Candle.cpp:405
void setOpenInterest(double openInterest) noexcept
Changes the open interest.
Definition Candle.cpp:415
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition Candle.cpp:124
Candle & withOpenInterest(double openInterest) noexcept
Changes the open interest.
Definition Candle.cpp:419
std::int64_t getEventTime() const noexcept override
Returns time when an event was created or zero when time is not available.
Definition Candle.cpp:172
Candle & withTime(std::int64_t time) noexcept
Changes the timestamp of the event in milliseconds.
Definition Candle.cpp:244
Candle & withVWAP(double vwap) noexcept
Changes volume-weighted average price (VWAP) in this candle.
Definition Candle.cpp:363
static constexpr std::uint32_t MAX_SEQUENCE
Maximum allowed sequence value.
Definition Candle.hpp:119
void setVWAP(double vwap) noexcept
Changes volume-weighted average price (VWAP) in this candle.
Definition Candle.cpp:359
static const EventTypeEnum & TYPE
Type identifier and additional information about the current event class.
Definition Candle.hpp:112
double getClose() const noexcept
Returns the last (close) price of this candle.
Definition Candle.cpp:327
Candle & withEventTime(std::int64_t eventTime) noexcept
Changes event's creation time and returns the current candle.
Definition Candle.cpp:180
std::int32_t getSequence() const noexcept
Returns the sequence number of this event to distinguish events that have the same time.
Definition Candle.cpp:250
std::int32_t getEventFlags() const noexcept override
Returns transactional event flags.
Definition Candle.cpp:188
void setCount(std::int64_t count) noexcept
Changes total number of original trade (or quote) events in this candle.
Definition Candle.cpp:275
double getOpenInterest() const noexcept
Returns the open interest.
Definition Candle.cpp:411
std::string toString() const override
Returns a string representation of the current object.
Definition Candle.cpp:427
void setVolume(double volume) noexcept
Changes total volume in this candle.
Definition Candle.cpp:345
Builder class for DXEndpoint that supports additional configuration properties.
Definition DXEndpoint.hpp:842
std::shared_ptr< DXEndpoint > build()
Builds DXEndpoint instance.
Definition DXEndpoint.cpp:335
std::shared_ptr< Builder > withName(const StringLike &name)
Changes the name used to distinguish multiple endpoints in the same process (GraalVM Isolate) in logs...
Definition DXEndpoint.cpp:378
bool supportsProperty(const StringLike &key) const
Checks if a property is supported.
Definition DXEndpoint.cpp:325
std::shared_ptr< Builder > withProperties(Properties &&properties)
Sets all supported properties from the provided properties object.
Definition DXEndpoint.hpp:931
~Builder() noexcept override
Releases the GraalVM handle.
Definition DXEndpoint.cpp:367
std::shared_ptr< Builder > withRole(Role role)
Sets role for the created DXEndpoint.
Definition DXEndpoint.cpp:297
std::shared_ptr< Builder > withProperty(const StringLike &key, const StringLike &value)
Sets the specified property.
Definition DXEndpoint.cpp:310
Subscription for a set of symbols and event types.
Definition DXFeedSubscription.hpp:39
void removeEventListener(std::size_t listenerId)
Removes listener for events.
Definition DXFeedSubscription.cpp:296
bool containsEventType(const EventTypeEnum &eventType) override
Returns true if this subscription contains the corresponding event type.
Definition DXFeedSubscription.cpp:223
std::size_t addChangeListener(std::shared_ptr< ObservableSubscriptionChangeListener > listener) override
Adds subscription change listener.
Definition DXFeedSubscription.cpp:306
bool isClosed() override
Returns true if this subscription is closed.
Definition DXFeedSubscription.cpp:201
void addSymbols(SymbolIt begin, SymbolIt end) const
Adds the specified collection (using iterators) of symbols to the set of subscribed symbols.
Definition DXFeedSubscription.hpp:430
static std::shared_ptr< DXFeedSubscription > create(std::initializer_list< EventTypeEnum > eventTypes)
Creates a detached subscription for the given collection of event types.
Definition DXFeedSubscription.cpp:174
void close() const
Closes this subscription and makes it permanently detached.
Definition DXFeedSubscription.cpp:210
void setEventsBatchLimit(std::int32_t eventsBatchLimit) const
Sets maximum number of events in the single notification of OnEventHandler.
Definition DXFeedSubscription.cpp:344
std::unordered_set< EventTypeEnum > getEventTypes() override
Returns a set of subscribed event types.
Definition DXFeedSubscription.cpp:219
void setSymbols(std::initializer_list< SymbolWrapper > collection) const
Changes the set of subscribed symbols so that it contains just the symbols from the specified collect...
Definition DXFeedSubscription.cpp:254
void removeSymbols(SymbolIt begin, SymbolIt end) const
Removes the specified collection (using iterators) of symbols from the set of subscribed symbols.
Definition DXFeedSubscription.hpp:502
void removeSymbols(SymbolsCollection &&collection) const
Removes the specified collection of symbols from the set of subscribed symbols.
Definition DXFeedSubscription.hpp:528
static const std::int32_t MAX_BATCH_LIMIT
The maximum events' batch limit for a single notification in OnEventHandler.
Definition DXFeedSubscription.hpp:55
void removeSymbols(const SymbolWrapper &symbolWrapper) const
Removes the specified symbol from the set of subscribed symbols.
Definition DXFeedSubscription.cpp:273
static std::shared_ptr< DXFeedSubscription > create(EventTypeIt begin, EventTypeIt end)
Creates a detached subscription for the given collection of event types.
Definition DXFeedSubscription.hpp:211
void attach(std::shared_ptr< DXFeed > feed)
Attaches subscription to the specified feed.
Definition DXFeedSubscription.cpp:183
TimePeriod getAggregationPeriod() const
Returns the aggregation period for data for this subscription instance.
Definition DXFeedSubscription.cpp:288
std::string toString() const override
Returns a string representation of the current object.
Definition DXFeedSubscription.cpp:141
static const std::int32_t OPTIMAL_BATCH_LIMIT
The optimal events' batch limit for a single notification in OnEventHandler.
Definition DXFeedSubscription.hpp:50
std::size_t addEventListener(std::function< void(const std::vector< std::shared_ptr< EventT > > &)> &&listener)
Adds typed listener for events.
Definition DXFeedSubscription.hpp:675
void addSymbols(std::initializer_list< SymbolWrapper > collection) const
Adds the specified collection (initializer list) of symbols to the set of subscribed symbols.
Definition DXFeedSubscription.cpp:269
void setSymbols(SymbolsCollection &&collection) const
Changes the set of subscribed symbols so that it contains just the symbols from the specified collect...
Definition DXFeedSubscription.hpp:381
void setAggregationPeriod(const TimePeriod &aggregationPeriod) const
Sets the aggregation period for data.
Definition DXFeedSubscription.cpp:292
static std::shared_ptr< DXFeedSubscription > create(const EventTypeEnum &eventType)
Creates a detached subscription for a single event type.
Definition DXFeedSubscription.cpp:160
std::int32_t getEventsBatchLimit() const
Definition DXFeedSubscription.cpp:340
std::size_t addEventListener(EventListener &&listener)
Adds listener for events.
Definition DXFeedSubscription.hpp:620
static std::shared_ptr< DXFeedSubscription > create(EventTypesCollection &&eventTypes)
Creates a detached subscription for the given collection of event types.
Definition DXFeedSubscription.hpp:257
OnEventHandler & onEvent()
Returns a reference to an incoming events' handler (delegate), to which listeners can be added and re...
Definition DXFeedSubscription.cpp:300
void addSymbols(const SymbolsCollection &collection) const
Adds the specified collection of symbols to the set of subscribed symbols.
Definition DXFeedSubscription.hpp:456
void setSymbols(SymbolIt begin, SymbolIt end) const
Changes the set of subscribed symbols so that it contains just the symbols from the specified collect...
Definition DXFeedSubscription.hpp:355
void setAggregationPeriod(std::int64_t aggregationPeriod) const
Sets the aggregation period for data.
Definition DXFeedSubscription.hpp:584
void removeChangeListener(std::size_t changeListenerId) override
Removes subscription change listener by id.
Definition DXFeedSubscription.cpp:323
std::vector< SymbolWrapper > getDecoratedSymbols() const
Returns a set of decorated symbols (depending on the actual implementation of the subscription).
Definition DXFeedSubscription.cpp:245
void clear() const
Clears the set of subscribed symbols.
Definition DXFeedSubscription.cpp:227
void detach(std::shared_ptr< DXFeed > feed)
Detaches subscription from the specified feed.
Definition DXFeedSubscription.cpp:192
void addSymbols(const SymbolWrapper &symbolWrapper) const
Adds the specified symbol to the set of subscribed symbols.
Definition DXFeedSubscription.cpp:258
void setAggregationPeriod(std::chrono::milliseconds aggregationPeriod) const
Sets the aggregation period for data.
Definition DXFeedSubscription.hpp:571
void removeSymbols(std::initializer_list< SymbolWrapper > collection) const
Removes the specified collection (initializer list) of symbols from the set of subscribed symbols.
Definition DXFeedSubscription.cpp:284
std::vector< SymbolWrapper > getSymbols() const
Returns a set of subscribed symbols (depending on the actual implementation of the subscription).
Definition DXFeedSubscription.cpp:236
Extends DXFeedSubscription to conveniently subscribe to time-series of events for a set of symbols an...
Definition DXFeedSubscription.hpp:786
std::int64_t getFromTime()
Returns the earliest timestamp from which time-series of events shall be received.
Definition DXFeedSubscription.cpp:372
void setFromTime(std::chrono::milliseconds fromTime)
Sets the earliest timestamp from which time-series of events shall be received.
Definition DXFeedSubscription.cpp:383
std::string toString() const override
Returns a string representation of the current object.
Definition DXFeedSubscription.cpp:368
void setFromTime(std::int64_t fromTime)
Sets the earliest timestamp from which time-series of events shall be received.
Definition DXFeedSubscription.cpp:376
bool in(std::uint32_t eventFlagsMask) const noexcept
Determines if the given flag is in the mask.
Definition EventFlag.hpp:199
std::uint32_t getFlag() const noexcept
Definition EventFlag.hpp:188
static bool isSnapshotSnip(const std::shared_ptr< Event > &event)
Determines if the given event is marked as a snapshot snip.
Definition EventFlag.hpp:349
friend std::uint32_t operator|(std::uint32_t eventFlag1, const EventFlag &eventFlag2) noexcept
Performs a bit or operation with two event flags.
Definition EventFlag.hpp:294
friend std::uint32_t operator&(const EventFlag &eventFlag1, std::uint32_t eventFlag2) noexcept
Performs a bit and operation with two event flags.
Definition EventFlag.hpp:305
friend std::int32_t operator|(const EventFlag &eventFlag1, std::int32_t eventFlag2) noexcept
Performs a bit or operation with two event flags.
Definition EventFlag.hpp:239
EventFlag() noexcept
Creates the invalid event flag.
Definition EventFlag.hpp:182
static bool isSnapshotBegin(const std::shared_ptr< Event > &event)
Determines if the given event marks the beginning of a snapshot.
Definition EventFlag.hpp:327
friend std::int32_t operator&(const EventFlag &eventFlag1, std::int32_t eventFlag2) noexcept
Performs a bit and operation with two event flags.
Definition EventFlag.hpp:261
static const EventFlag SNAPSHOT_SNIP
0x10 - A bitmask to get snapshot snip indicator from the value of eventFlags property.
Definition EventFlag.hpp:12
friend std::int32_t operator|(std::int32_t eventFlag1, const EventFlag &eventFlag2) noexcept
Performs a bit or operation with two event flags.
Definition EventFlag.hpp:250
static bool isPending(const std::shared_ptr< Event > &event)
Determines if the given event is in a pending state.
Definition EventFlag.hpp:370
friend std::int32_t operator&(std::int32_t eventFlag1, const EventFlag &eventFlag2) noexcept
Performs a bit and operation with two event flags.
Definition EventFlag.hpp:272
static const EventFlag SNAPSHOT_MODE
0x40 - A bitmask to set snapshot mode indicator into the value of eventFlags property.
Definition EventFlag.hpp:14
bool in(const EventFlagsMask &eventFlagsMask) const noexcept
Determines if the given flag is in the mask.
Definition EventFlag.hpp:212
static const EventFlag TX_PENDING
0x01 - A bitmask to get transaction pending indicator from the value of eventFlags property.
Definition EventFlag.hpp:8
friend std::uint32_t operator|(const EventFlag &eventFlag1, std::uint32_t eventFlag2) noexcept
Performs a bit or operation with two event flags.
Definition EventFlag.hpp:283
static bool isRemove(const std::shared_ptr< Event > &event)
Determines if the given event is marked for removal.
Definition EventFlag.hpp:381
static bool isSnapshotEndOrSnip(const std::shared_ptr< Event > &event)
Determines if the given event marks the end of a snapshot or a snapshot snip.
Definition EventFlag.hpp:359
static const EventFlag SNAPSHOT_BEGIN
0x04 - A bitmask to get snapshot begin indicator from the value of eventFlags property.
Definition EventFlag.hpp:10
friend std::uint32_t operator&(std::uint32_t eventFlag1, const EventFlag &eventFlag2) noexcept
Performs a bit and operation with two event flags.
Definition EventFlag.hpp:316
static const EventFlag REMOVE_SYMBOL
0x80 - For internal use.
Definition EventFlag.hpp:15
static const EventFlag SNAPSHOT_END
0x08 - A bitmask to get snapshot end indicator from the value of eventFlags property.
Definition EventFlag.hpp:11
static const EventFlag REMOVE_EVENT
0x02 - A bitmask to get removal indicator from the value of eventFlags property.
Definition EventFlag.hpp:9
static bool isSnapshotEnd(const std::shared_ptr< Event > &event)
Determines if the given event marks the end of a snapshot.
Definition EventFlag.hpp:338
constexpr std::uint32_t getMask() const noexcept
Returns an integer representation of an event mask.
Definition EventFlag.hpp:445
bool contains(const EventFlag &flag) const noexcept
Definition EventFlag.hpp:453
friend EventFlagsMask operator|(const EventFlagsMask &eventFlagsMask, const EventFlag &eventFlag) noexcept
Performs a bit or operation with an event flags' mask and an event flag.
Definition EventFlag.hpp:464
EventFlagsMask() noexcept
Creates an empty event flags mask.
Definition EventFlag.hpp:405
EventFlagsMask(std::initializer_list< EventFlag > eventFlags) noexcept
Creates event flags mask by initializer list with flags.
Definition EventFlag.hpp:436
EventFlagsMask(MaskType mask) noexcept
Create event flags mask by integer value.
Definition EventFlag.hpp:415
EventFlagsMask(EventFlagIt begin, EventFlagIt end) noexcept
Creates event flags mask by iterators of container with flags.
Definition EventFlag.hpp:425
friend EventFlagsMask operator&(const EventFlagsMask &eventFlagsMask, const EventFlag &eventFlag) noexcept
Performs a bit and operation with an event flags' mask and an event flag.
Definition EventFlag.hpp:475
The enumeration type that provides additional information about the dxFeed Graal C++-API event type.
Definition EventTypeEnum.hpp:21
bool isTimeSeries() const noexcept
Definition EventTypeEnum.cpp:148
const std::string & getClassName() const &noexcept
Definition EventTypeEnum.cpp:120
bool isLasting() const noexcept
Definition EventTypeEnum.cpp:140
bool isOnlyIndexed() const noexcept
Definition EventTypeEnum.cpp:152
bool isIndexed() const noexcept
Definition EventTypeEnum.cpp:144
std::uint32_t getId() const noexcept
Definition EventTypeEnum.cpp:112
bool isMarket() const noexcept
Definition EventTypeEnum.cpp:156
const std::string & getName() const &noexcept
Definition EventTypeEnum.cpp:116
Builder is a static inner class that provides a flexible and readable way to construct instances of t...
Definition HistoryEndpoint.hpp:107
std::shared_ptr< Builder > withAuthToken(const StringLike &authToken)
Sets the authentication token for the target endpoint.
Definition HistoryEndpoint.cpp:56
std::shared_ptr< Builder > withAddress(const StringLike &address)
Specifies the address for the target endpoint.
Definition HistoryEndpoint.cpp:38
std::shared_ptr< HistoryEndpoint > build() const
Builds and returns a configured instance of HistoryEndpoint.
Definition HistoryEndpoint.cpp:74
std::shared_ptr< Builder > withFormat(Format format)
Sets the format to be used for data handling.
Definition HistoryEndpoint.cpp:68
std::shared_ptr< Builder > withPassword(const StringLike &password)
Sets the password for the target endpoint.
Definition HistoryEndpoint.cpp:50
std::shared_ptr< Builder > withUserName(const StringLike &userName)
Sets the username for the target endpoint.
Definition HistoryEndpoint.cpp:44
std::shared_ptr< Builder > withCompression(Compression compression)
Sets the compression type to be used for data transmission or storage.
Definition HistoryEndpoint.cpp:62
std::shared_ptr< Builder > withAuthToken(const AuthToken &authToken)
Sets the authentication token for the target endpoint.
Definition HistoryEndpoint.hpp:154
Source identifier for IndexedEvent.
Definition IndexedEventSource.hpp:22
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition IndexedEventSource.cpp:18
const std::string & name() const noexcept
Returns the string representation of the object.
Definition IndexedEventSource.hpp:91
static IndexedEventSource fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition IndexedEventSource.cpp:29
static const IndexedEventSource DEFAULT
The default source with zero identifier for all events that do not support multiple sources.
Definition IndexedEventSource.hpp:10
std::int32_t id() const noexcept
Returns the source identifier.
Definition IndexedEventSource.hpp:82
virtual void * toGraal() const
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition IndexedEventSource.cpp:12
std::string toString() const
Returns the string representation of the object.
Definition IndexedEventSource.hpp:100
Represents a subscription to a specific source of indexed events.
Definition IndexedEventSubscriptionSymbol.hpp:37
virtual const std::unique_ptr< SymbolWrapper > & getEventSymbol() const
Returns the wrapped event symbol (CandleSymbol, WildcardSymbol, etc.).
Definition IndexedEventSubscriptionSymbol.cpp:18
virtual void * toGraal() const
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition IndexedEventSubscriptionSymbol.cpp:26
static IndexedEventSubscriptionSymbol fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure (rec...
Definition IndexedEventSubscriptionSymbol.cpp:48
virtual const std::unique_ptr< IndexedEventSource > & getSource() const
Returns indexed event source.
Definition IndexedEventSubscriptionSymbol.cpp:22
IndexedEventSubscriptionSymbol(const SymbolWrapper &eventSymbol, const IndexedEventSource &source)
Creates an indexed event subscription symbol with a specified event symbol and source.
Definition IndexedEventSubscriptionSymbol.cpp:12
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition IndexedEventSubscriptionSymbol.cpp:35
virtual std::string toString() const
Returns string representation of this indexed event subscription symbol.
Definition IndexedEventSubscriptionSymbol.cpp:64
void setUnderlyingPrice(double underlyingPrice) noexcept
Changes underlying price at the time of this option sale event.
Definition OptionSale.cpp:506
bool isValidTick() const noexcept
Returns whether this event represents a valid intraday tick.
Definition OptionSale.cpp:462
void setExchangeSaleConditions(const StringLike &exchangeSaleConditions) noexcept
Changes sale conditions provided for this event by data feed.
Definition OptionSale.cpp:393
void setAggressorSide(const Side &side) noexcept
Changes aggressor side of this option sale event.
Definition OptionSale.cpp:424
bool isSpreadLeg() const noexcept
Returns whether this event represents a spread leg.
Definition OptionSale.cpp:434
std::string getExchangeCodeString() const noexcept
Returns exchange code of this option sale as UTF8 string.
Definition OptionSale.cpp:299
void setEventFlags(std::int32_t eventFlags) noexcept override
Changes transactional event flags.
Definition OptionSale.cpp:180
OptionSale & withAskPrice(double askPrice) noexcept
Changes the current ask price on the market when this option sale event had occurred.
Definition OptionSale.cpp:375
std::int64_t getTimeSequence() const noexcept
Returns time and sequence of this event packaged into a single long value.
Definition OptionSale.cpp:214
static constexpr std::uint32_t MAX_SEQUENCE
Maximum allowed sequence value.
Definition OptionSale.hpp:102
void setIndex(std::int64_t index) override
Changes the unique per-symbol index of this event.
Definition OptionSale.cpp:204
OptionSale & withTimeSequence(std::int64_t timeSequence) noexcept
Changes time and sequence of this event.
Definition OptionSale.cpp:222
void setTimeSequence(std::int64_t timeSequence) noexcept
Changes time and sequence of this event.
Definition OptionSale.cpp:218
const IndexedEventSource & getSource() const &noexcept override
Returns the source of this event.
Definition OptionSale.cpp:168
OptionSale & withValidTick(bool validTick) noexcept
Changes whether this event represents a valid intraday tick.
Definition OptionSale.cpp:470
std::int64_t getTime() const noexcept
Returns time of this event.
Definition OptionSale.cpp:228
OptionSale & withAggressorSide(const Side &side) noexcept
Changes aggressor side of this option sale event.
Definition OptionSale.cpp:428
OptionSale & withTimeNanoPart(std::int32_t timeNanoPart) noexcept
Changes microseconds and nanoseconds time part of this option sale.
Definition OptionSale.cpp:265
OptionSale & withExtendedTradingHours(bool extendedTradingHours) noexcept
Changes whether this event represents an extended trading hours sale.
Definition OptionSale.cpp:456
void setExchangeCode(std::int16_t exchangeCode) noexcept
Changes exchange code of this option sale event.
Definition OptionSale.cpp:315
void setPrice(double price) noexcept
Changes price of this option sale event.
Definition OptionSale.cpp:329
bool isExtendedTradingHours() const noexcept
Returns whether this event represents an extended trading hours sale.
Definition OptionSale.cpp:448
void setVolatility(double volatility) noexcept
Changes Black-Scholes implied volatility of the option at the time of this option sale event.
Definition OptionSale.cpp:520
OptionSale() noexcept
Creates new option sale event with default values.
Definition OptionSale.cpp:150
std::string toString() const override
Returns a string representation of the current object.
Definition OptionSale.cpp:566
OptionSale(const StringLike &eventSymbol) noexcept
Creates a new option sale event with the specified event symbol.
Definition OptionSale.cpp:153
double getPrice() const noexcept
Returns price of this option sale event.
Definition OptionSale.cpp:325
OptionSale & withSize(double size) noexcept
Changes the size of this option sale event.
Definition OptionSale.cpp:347
OptionSale & withType(const TimeAndSaleType &type) noexcept
Changes the type of this option sale event.
Definition OptionSale.cpp:484
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition OptionSale.cpp:122
const std::string & getOptionSymbol() const &noexcept
Returns option symbol of this event.
Definition OptionSale.cpp:544
OptionSale & withEventFlags(std::int32_t eventFlags) noexcept
Changes transactional event flags and returns the current option sale.
Definition OptionSale.cpp:184
OptionSale & withDelta(double delta) noexcept
Changes option delta at the time of this option sale event.
Definition OptionSale.cpp:538
OptionSale & withOptionSymbol(const StringLike &optionSymbol) noexcept
Changes option symbol of this event.
Definition OptionSale.cpp:560
std::int16_t getExchangeCode() const noexcept
Returns exchange code of this option sale event.
Definition OptionSale.cpp:295
bool isNew() const noexcept
Returns whether this is a new event (not cancellation or correction).
Definition OptionSale.cpp:490
void setTradeThroughExempt(char tradeThroughExempt)
Changes TradeThroughExempt flag of this option sale event.
Definition OptionSale.cpp:408
void assign(std::shared_ptr< EventType > event) override
Replaces the contents of the event.
Definition OptionSale.cpp:142
OptionSale & withPrice(double price) noexcept
Changes price of this option sale event.
Definition OptionSale.cpp:333
static const EventTypeEnum & TYPE
Type identifier and additional information about the current event class.
Definition OptionSale.hpp:95
void setExchangeCode(char exchangeCode) noexcept
Changes exchange code of this option sale event.
Definition OptionSale.cpp:305
void * toGraal() const override
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition OptionSale.cpp:109
const std::optional< std::string > & getExchangeSaleConditionsOpt() const &noexcept
Returns sale conditions provided for this event by data feed.
Definition OptionSale.cpp:389
std::int64_t getTimeNanos() const noexcept
Returns time of the original event in nanoseconds.
Definition OptionSale.cpp:246
void setSize(double size) noexcept
Changes the size of this option sale event.
Definition OptionSale.cpp:343
void setSpreadLeg(bool spreadLeg) noexcept
Changes whether this event represents a spread leg.
Definition OptionSale.cpp:438
static Ptr fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition OptionSale.cpp:89
OptionSale & withTime(std::int64_t time) noexcept
Changes the timestamp of the event in milliseconds.
Definition OptionSale.cpp:240
std::int32_t getTimeNanoPart() const noexcept
Returns microseconds and nanoseconds time part of the original event.
Definition OptionSale.cpp:271
void setExtendedTradingHours(bool extendedTradingHours) noexcept
Changes whether this event represents an extended trading hours sale.
Definition OptionSale.cpp:452
OptionSale & withSequence(std::int32_t sequence) noexcept
Changes sequence number of this event.
Definition OptionSale.cpp:289
void setAskPrice(double askPrice) noexcept
Changes the current ask price on the market when this option sale event had occurred.
Definition OptionSale.cpp:371
std::int64_t getIndex() const noexcept override
Returns a unique per-symbol index of this event.
Definition OptionSale.cpp:200
void setValidTick(bool validTick) noexcept
Changes whether this event represents a valid intraday tick.
Definition OptionSale.cpp:466
OptionSale & withVolatility(double volatility) noexcept
Changes Black-Scholes implied volatility of the option at the time of this option sale event.
Definition OptionSale.cpp:524
OptionSale & withBidPrice(double bidPrice) noexcept
Changes the current bid price on the market when this option sale event had occurred.
Definition OptionSale.cpp:361
const TimeAndSaleType & getType() const &noexcept
Returns the type of this option sale event.
Definition OptionSale.cpp:476
OptionSale & withEventSymbol(const StringLike &eventSymbol) noexcept
Changes an event's symbol and returns the current option sale.
Definition OptionSale.cpp:156
std::int32_t getSequence() const noexcept
Returns the sequence number of this event to distinguish events that have the same time.
Definition OptionSale.cpp:275
void setBidPrice(double bidPrice) noexcept
Changes the current bid price on the market when this option sale event had occurred.
Definition OptionSale.cpp:357
void setType(const TimeAndSaleType &type) noexcept
Changes the type of this option sale event.
Definition OptionSale.cpp:480
OptionSale & withEventTime(std::int64_t eventTime) noexcept
Changes event's creation time and returns the current option sale.
Definition OptionSale.cpp:162
const std::optional< std::string > & getOptionSymbolOpt() const &noexcept
Returns option symbol of this event.
Definition OptionSale.cpp:552
OptionSale & withTimeNanos(std::int64_t timeNanos) noexcept
Changes the time of this option sale and returns it.
Definition OptionSale.cpp:255
void setSequence(std::int32_t sequence)
Changes sequence number of this event.
Definition OptionSale.cpp:279
void setDelta(double delta) noexcept
Changes option delta at the time of this option sale event.
Definition OptionSale.cpp:534
OptionSale & withUnderlyingPrice(double underlyingPrice) noexcept
Changes underlying price at the time of this option sale event.
Definition OptionSale.cpp:510
OptionSale & withExchangeCode(std::int16_t exchangeCode) noexcept
Changes exchange code of this option sale event.
Definition OptionSale.cpp:319
bool isCancel() const noexcept
Returns whether this is a cancellation of a previous event.
Definition OptionSale.cpp:498
void setOptionSymbol(const StringLike &optionSymbol) noexcept
Changes option symbol of this event.
Definition OptionSale.cpp:556
void setTimeNanos(std::int64_t timeNanos) noexcept
Changes time of the original event.
Definition OptionSale.cpp:250
OptionSale & withExchangeCode(char exchangeCode) noexcept
Changes exchange code of this option sale event.
Definition OptionSale.cpp:309
const Side & getAggressorSide() const &noexcept
Returns the aggressor side of this option sale event.
Definition OptionSale.cpp:420
std::int32_t getEventFlags() const noexcept override
Returns transactional event flags.
Definition OptionSale.cpp:172
const std::string & getExchangeSaleConditions() const &noexcept
Returns sale conditions provided for this event by data feed.
Definition OptionSale.cpp:381
char getTradeThroughExempt() const noexcept
Returns TradeThroughExempt flag of this option sale event.
Definition OptionSale.cpp:403
OptionSale & withTradeThroughExempt(char tradeThroughExempt)
Changes TradeThroughExempt flag of this option sale event.
Definition OptionSale.cpp:414
double getAskPrice() const noexcept
Returns the current ask price on the market when this option sale event had occurred.
Definition OptionSale.cpp:367
EventFlagsMask getEventFlagsMask() const noexcept override
Returns transactional event flags.
Definition OptionSale.cpp:176
double getVolatility() const noexcept
Returns Black-Scholes implied volatility of the option at the time of this option sale event.
Definition OptionSale.cpp:516
void setTime(std::int64_t time) noexcept
Changes time of this event.
Definition OptionSale.cpp:233
bool isCorrection() const noexcept
Returns whether this is a correction of a previous event.
Definition OptionSale.cpp:494
double getBidPrice() const noexcept
Returns the current bid price on the market when this option sale event had occurred.
Definition OptionSale.cpp:353
OptionSale & withEventFlags(const EventFlagsMask &eventFlags) noexcept
Changes transactional event flags and returns the current option sale.
Definition OptionSale.cpp:194
double getSize() const noexcept
Returns the size of this option sale event.
Definition OptionSale.cpp:339
void setTimeNanoPart(std::int32_t timeNanoPart) noexcept
Changes microseconds and nanoseconds time part of the original event.
Definition OptionSale.cpp:261
void setEventFlags(const EventFlagsMask &eventFlags) noexcept override
Changes transactional event flags.
Definition OptionSale.cpp:190
double getUnderlyingPrice() const noexcept
Returns the underlying price at the time of this option sale event.
Definition OptionSale.cpp:502
OptionSale & withExchangeSaleConditions(const StringLike &exchangeSaleConditions) noexcept
Changes sale conditions provided for this event by data feed.
Definition OptionSale.cpp:397
OptionSale & withSpreadLeg(bool spreadLeg) noexcept
Changes whether this event represents a spread leg.
Definition OptionSale.cpp:442
OptionSale & withIndex(std::int64_t index) noexcept
Changes unique per-symbol index of this event.
Definition OptionSale.cpp:208
double getDelta() const noexcept
Return option delta at the time of this option sale event.
Definition OptionSale.cpp:530
Base class for common fields of Order, AnalyticOrder and SpreadOrder events.
Definition OrderBase.hpp:77
void setPrice(double price) noexcept
Changes price of this order.
Definition OrderBase.hpp:468
const OrderSource & getSource() const &noexcept override
Returns source of this event.
Definition OrderBase.hpp:187
void setTimeNanoPart(std::int32_t timeNanoPart) noexcept
Changes microseconds and nanoseconds time part of this order.
Definition OrderBase.hpp:310
void setSize(double size) noexcept
Changes size of this order.
Definition OrderBase.hpp:486
double getTradePrice() const noexcept
Returns trade price for events containing trade-related action.
Definition OrderBase.hpp:560
double getSize() const noexcept
Returns size of this order.
Definition OrderBase.hpp:477
void setIndex(std::int64_t index) override
Changes the unique per-symbol index of this order.
Definition OrderBase.hpp:242
std::int64_t getTime() const noexcept
Returns time of this order.
Definition OrderBase.hpp:287
std::int64_t getIndex() const noexcept override
Returns a unique per-symbol index of this order.
Definition OrderBase.hpp:255
std::int64_t getAuxOrderId() const noexcept
Returns auxiliary order ID if available:
Definition OrderBase.hpp:441
void setExchangeCode(char exchangeCode)
Changes exchange code of this order.
Definition OrderBase.hpp:620
void setSource(const OrderSource &source) noexcept
Changes source of this event.
Definition OrderBase.hpp:203
void assign(std::shared_ptr< EventType > event) override
Replaces the contents of the event.
Definition OrderBase.cpp:67
std::int64_t getTimeNanos() const noexcept
Returns time of this order in nanoseconds.
Definition OrderBase.hpp:356
void setOrderSide(const Side &side) noexcept
Changes side of this order.
Definition OrderBase.hpp:650
void setSequence(std::int32_t sequence)
Changes sequence number of this order.
Definition OrderBase.hpp:342
double getExecutedSize() const noexcept
Returns executed size of this order.
Definition OrderBase.hpp:504
void setOrderId(std::int64_t orderId) noexcept
Changes order ID.
Definition OrderBase.hpp:425
void setTradeId(std::int64_t tradeId) noexcept
Changes trade ID.
Definition OrderBase.hpp:550
void setTime(std::int64_t time) noexcept
Changes time of this order.
Definition OrderBase.hpp:298
std::string baseFieldsToString() const
Returns string representation of this order event's fields.
Definition OrderBase.cpp:78
void setTimeSequence(std::int64_t timeSequence) noexcept
Changes time and sequence of this order.
Definition OrderBase.hpp:277
const Side & getOrderSide() const &noexcept
Returns side of this order.
Definition OrderBase.hpp:641
void setScope(const Scope &scope) noexcept
Changes scope of this order.
Definition OrderBase.hpp:668
void setEventFlags(const EventFlagsMask &eventFlags) noexcept override
Changes transactional event flags.
Definition OrderBase.hpp:230
void setExecutedSize(double executedSize) noexcept
Changes executed size of this order.
Definition OrderBase.hpp:513
void setTimeNanos(std::int64_t timeNanos) noexcept
Changes time of this order.
Definition OrderBase.hpp:366
std::int64_t getCount() const noexcept
Returns the number of individual orders in this aggregate order.
Definition OrderBase.hpp:522
std::int16_t getExchangeCode() const noexcept
Returns exchange code of this order.
Definition OrderBase.hpp:597
std::string getExchangeCodeString() const noexcept
Returns exchange code of this order as UTF8 string.
Definition OrderBase.hpp:607
double getTradeSize() const noexcept
Returns trade size for events containing trade-related action.
Definition OrderBase.hpp:579
OrderBase() noexcept
Creates new order event with default values.
Definition OrderBase.cpp:75
std::int32_t getSequence() const noexcept
Returns sequence number of this order to distinguish orders that have the same time.
Definition OrderBase.hpp:330
void setExchangeCode(std::int16_t exchangeCode) noexcept
Changes exchange code of this order.
Definition OrderBase.hpp:632
std::int64_t getOrderId() const noexcept
Returns order ID if available.
Definition OrderBase.hpp:416
std::int32_t getTimeNanoPart() const noexcept
Returns microseconds and nanoseconds time part of this order.
Definition OrderBase.hpp:319
void setActionTime(std::int64_t actionTime) noexcept
Changes time of the last action.
Definition OrderBase.hpp:405
const OrderAction & getAction() const &noexcept
Returns order action if available, otherwise - OrderAction::UNDEFINED.
Definition OrderBase.hpp:377
void setTradeSize(double tradeSize) noexcept
Changes trade size.
Definition OrderBase.hpp:588
EventFlagsMask getEventFlagsMask() const noexcept override
Returns transactional event flags.
Definition OrderBase.hpp:220
double getPrice() const noexcept
Returns price of this order.
Definition OrderBase.hpp:459
static constexpr std::uint32_t MAX_SEQUENCE
Maximum allowed sequence value.
Definition OrderBase.hpp:165
void setEventFlags(std::int32_t eventFlags) noexcept override
Changes transactional event flags.
Definition OrderBase.hpp:225
void setAuxOrderId(std::int64_t auxOrderId) noexcept
Changes auxiliary order ID.
Definition OrderBase.hpp:450
const Scope & getScope() const &noexcept
Returns scope of this order.
Definition OrderBase.hpp:659
void setAction(const OrderAction &action) noexcept
Changes action of this order.
Definition OrderBase.hpp:386
std::int32_t getEventFlags() const noexcept override
Returns transactional event flags.
Definition OrderBase.hpp:215
void setCount(std::int64_t count) noexcept
Changes the number of individual orders in this aggregate order.
Definition OrderBase.hpp:531
std::int64_t getActionTime() const noexcept
Returns time of the last action.
Definition OrderBase.hpp:396
bool hasSize() const noexcept
Returns true if this order has some size (sizeAsDouble is neither 0 nor NaN).
Definition OrderBase.hpp:495
std::int64_t getTradeId() const noexcept
Returns trade (order execution) ID for events containing trade-related action.
Definition OrderBase.hpp:541
std::int64_t getTimeSequence() const noexcept
Returns time and sequence of this order packaged into a single long value.
Definition OrderBase.hpp:265
OrderBase(const StringLike &eventSymbol) noexcept
Creates a new order event with the specified event symbol.
Definition OrderBase.hpp:178
void setTradePrice(double tradePrice) noexcept
Changes trade price.
Definition OrderBase.hpp:569
static const OrderSource GLBX
CME Globex.
Definition OrderSource.hpp:352
static const OrderSource smfe
Small Exchange.
Definition OrderSource.hpp:416
static const OrderSource bzx
Bats BZX Exchange.
Definition OrderSource.hpp:280
static const OrderSource DEX
Direct-Edge EDGX Exchange.
Definition OrderSource.hpp:247
static const OrderSource NTV
NASDAQ Total View.
Definition OrderSource.hpp:183
static const OrderSource AGGREGATE_ASK
Ask side of an aggregate order book (futures depth and NASDAQ Level II).
Definition OrderSource.hpp:136
static const OrderSource & valueOf(std::int32_t sourceId)
Returns order source for the specified source identifier.
Definition OrderSource.cpp:197
static const OrderSource ESPD
NASDAQ eSpeed.
Definition OrderSource.hpp:207
static const OrderSource CFE
CBOE Futures Exchange.
Definition OrderSource.hpp:392
static const OrderSource ntv
NASDAQ Total View.
Definition OrderSource.hpp:191
static const OrderSource ICE
Intercontinental Exchange.
Definition OrderSource.hpp:223
static const OrderSource BZX
Bats BZX Exchange.
Definition OrderSource.hpp:272
static const OrderSource C2OX
CBOE Options C2 Exchange.
Definition OrderSource.hpp:400
static const OrderSource AGGREGATE
Aggregate order book (futures depth and NASDAQ Level II).
Definition OrderSource.hpp:168
static const OrderSource REGIONAL_ASK
Ask side of a regional Quote.
Definition OrderSource.hpp:120
static const OrderSource REGIONAL_BID
Bid side of a regional Quote.
Definition OrderSource.hpp:111
static const OrderSource igc
IG CFDs Gate.
Definition OrderSource.hpp:512
static const OrderSource ABE
ABE (abe.io) exchange.
Definition OrderSource.hpp:336
static const OrderSource CEUX
Bats Europe DXE Exchange.
Definition OrderSource.hpp:304
static const OrderSource OCEA
Blue Ocean Technologies Alternative Trading System.
Definition OrderSource.hpp:448
static const OrderSource AGGREGATE_BID
Bid side of an aggregate order book (futures depth and NASDAQ Level II).
Definition OrderSource.hpp:128
static const OrderSource BXTR
Bats Europe TRF.
Definition OrderSource.hpp:312
static const OrderSource & valueOf(const StringLike &name)
Returns order source for the specified source name.
Definition OrderSource.cpp:211
static const OrderSource dex
Direct-Edge EDGX Exchange.
Definition OrderSource.hpp:256
static const OrderSource cedx
Cboe European Derivatives.
Definition OrderSource.hpp:496
static const OrderSource COMPOSITE
Composite Quote.
Definition OrderSource.hpp:147
static const OrderSource COMPOSITE_ASK
Ask side of a composite Quote.
Definition OrderSource.hpp:102
static const OrderSource REGIONAL
Regional Quote.
Definition OrderSource.hpp:158
static const OrderSource XNFI
NASDAQ Fixed Income.
Definition OrderSource.hpp:215
static const OrderSource iex
Investors exchange.
Definition OrderSource.hpp:424
static const OrderSource xeur
Eurex Exchange.
Definition OrderSource.hpp:384
static const OrderSource CEDX
Cboe European Derivatives.
Definition OrderSource.hpp:488
static const OrderSource ISE
International Securities Exchange.
Definition OrderSource.hpp:231
static const OrderSource DEA
Direct-Edge EDGA Exchange.
Definition OrderSource.hpp:239
static const OrderSource glbx
CME Globex.
Definition OrderSource.hpp:360
static const OrderSource ocea
Blue Ocean Technologies Alternative Trading System.
Definition OrderSource.hpp:455
static const OrderSource EDX
EDX Exchange.
Definition OrderSource.hpp:520
static const OrderSource BI20
Borsa Istanbul Exchange.
Definition OrderSource.hpp:328
static const OrderSource NUAM
Nuam Exchange Gate.
Definition OrderSource.hpp:536
static const OrderSource BYX
Bats BYX Exchange.
Definition OrderSource.hpp:264
static const OrderSource IGC
IG CFDs Gate.
Definition OrderSource.hpp:504
static const OrderSource FAIR
FAIR (FairX) exchange.
Definition OrderSource.hpp:344
static const OrderSource BATE
Bats Europe BXE Exchange.
Definition OrderSource.hpp:288
static const OrderSource pink
Pink Sheets.
Definition OrderSource.hpp:464
static const OrderSource DEFAULT
Default source for publishing custom order books.
Definition OrderSource.hpp:175
static const OrderSource NFX
NASDAQ Futures Exchange.
Definition OrderSource.hpp:199
static const OrderSource memx
Members Exchange.
Definition OrderSource.hpp:440
static bool isSpecialSourceId(std::int32_t sourceId) noexcept
Determines whether the specified source identifier refers to a special order source.
Definition OrderSource.cpp:193
static const OrderSource IST
Borsa Istanbul Exchange.
Definition OrderSource.hpp:320
static const OrderSource edx
EDX Exchange.
Definition OrderSource.hpp:528
static const OrderSource ARCA
NYSE Arca traded securities.
Definition OrderSource.hpp:472
static const OrderSource CHIX
Bats Europe CXE Exchange.
Definition OrderSource.hpp:296
static const OrderSource ERIS
Eris Exchange group of companies.
Definition OrderSource.hpp:368
static const OrderSource nuam
Nuam Exchange Gate.
Definition OrderSource.hpp:544
static const OrderSource XEUR
Eurex Exchange.
Definition OrderSource.hpp:376
static const OrderSource MEMX
Members Exchange.
Definition OrderSource.hpp:432
static const OrderSource COMPOSITE_BID
Bid side of a composite Quote.
Definition OrderSource.hpp:93
static const OrderSource arca
NYSE Arca traded securities.
Definition OrderSource.hpp:480
static const OrderSource SMFE
Small Exchange.
Definition OrderSource.hpp:408
Order event is a snapshot for a full available market depth for a symbol.
Definition Order.hpp:93
Order & withTradeSize(double tradeSize) noexcept
Changes trade size.
Definition Order.cpp:238
Order(const StringLike &eventSymbol) noexcept
Creates a new order event with the specified event symbol.
Definition Order.cpp:115
Order & withTimeNanos(std::int64_t timeNanos) noexcept
Changes time of this order and returns it.
Definition Order.cpp:172
Order & withTime(std::int64_t time) noexcept
Changes time of this order and returns it.
Definition Order.cpp:154
Order & withSequence(std::int32_t sequence) noexcept
Changes sequence number of this order.
Definition Order.cpp:166
Order & withOrderId(std::int64_t orderId) noexcept
Changes order ID.
Definition Order.cpp:190
Order & withSource(const OrderSource &source) noexcept
Changes an event's source and returns the current order.
Definition Order.cpp:130
Order & withExchangeCode(char exchangeCode) noexcept
Changes exchange code of this order.
Definition Order.cpp:244
Order & withMarketMaker(const StringLike &marketMaker) noexcept
Changes market maker or other aggregate identifier of this order.
Definition Order.cpp:284
const std::string & getMarketMaker() const &noexcept
Returns market maker or other aggregate identifier of this order.
Definition Order.cpp:268
Order & withEventFlags(std::int32_t eventFlags) noexcept
Changes transactional event flags and returns the current order.
Definition Order.cpp:136
Order & withScope(const Scope &scope) noexcept
Changes scope of this order.
Definition Order.cpp:262
Order & withExecutedSize(double executedSize) noexcept
Changes executed size of this order.
Definition Order.cpp:214
Order & withEventFlags(const EventFlagsMask &eventFlags) noexcept
Changes transactional event flags and returns the current order.
Definition Order.cpp:142
Order & withAction(const OrderAction &action) noexcept
Changes the action of this order and returns it.
Definition Order.cpp:178
Order & withTimeNanoPart(std::int32_t timeNanoPart) noexcept
Changes microseconds and nanoseconds time part of this order.
Definition Order.cpp:160
void assign(std::shared_ptr< EventType > event) override
Replaces the contents of the event.
Definition Order.cpp:104
void * toGraal() const override
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition Order.cpp:73
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition Order.cpp:86
Order & withSize(double size) noexcept
Changes size of this order.
Definition Order.cpp:208
Order & withPrice(double price) noexcept
Changes price of this order.
Definition Order.cpp:202
std::string toString() const override
Returns a string representation of the current object.
Definition Order.cpp:290
Order & withAuxOrderId(std::int64_t auxOrderId) noexcept
Changes auxiliary order ID.
Definition Order.cpp:196
static Ptr fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition Order.cpp:53
Order() noexcept
Creates new order event with default values.
Definition Order.cpp:112
Order & withIndex(std::int64_t index) noexcept
Changes the unique per-symbol index of this order and returns it.
Definition Order.cpp:148
Order & withOrderSide(const Side &side) noexcept
Changes side of this order.
Definition Order.cpp:256
Order & withEventTime(std::int64_t eventTime) noexcept
Changes the event's creation time and returns the current order.
Definition Order.cpp:124
static const EventTypeEnum & TYPE
Type identifier and additional information about the current event class.
Definition Order.hpp:115
virtual Order & withEventSymbol(const StringLike &eventSymbol) noexcept
Changes an event's symbol and returns the current order.
Definition Order.cpp:118
Order & withExchangeCode(std::int16_t exchangeCode) noexcept
Changes exchange code of this order.
Definition Order.cpp:250
void setMarketMaker(const StringLike &marketMaker) noexcept
Changes market maker or other aggregate identifier of this order.
Definition Order.cpp:280
Order & withCount(std::int64_t count) noexcept
Changes the number of individual orders in this aggregate order.
Definition Order.cpp:220
Order & withTradeId(std::int64_t tradeId) noexcept
Changes trade ID.
Definition Order.cpp:226
Order & withTradePrice(double tradePrice) noexcept
Changes trade price.
Definition Order.cpp:232
Order & withActionTime(std::int64_t actionTime) noexcept
Changes time of the last action and returns the current order.
Definition Order.cpp:184
const std::optional< std::string > & getMarketMakerOpt() const &noexcept
Returns market maker or other aggregate identifier of this order.
Definition Order.cpp:276
OtcMarketsOrder & withPrice(double price) noexcept
Changes price of this OTC Markets order.
Definition OtcMarketsOrder.hpp:355
bool isSaturated() const noexcept
Returns whether this event should NOT be considered for the inside price.
Definition OtcMarketsOrder.hpp:622
OtcMarketsOrder & withAuxOrderId(std::int64_t auxOrderId) noexcept
Changes auxiliary order ID.
Definition OtcMarketsOrder.hpp:344
OtcMarketsOrder & withAutoExecution(bool autoExecution) noexcept
Changes whether this event is in 'AutoEx' mode.
Definition OtcMarketsOrder.hpp:678
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition OtcMarketsOrder.cpp:84
OtcMarketsOrder & withExecutedSize(double executedSize) noexcept
Changes executed size of this OTC Markets order.
Definition OtcMarketsOrder.hpp:377
void setNmsConditional(bool nmsConditional) noexcept
Changes whether this event represents a NMS conditional.
Definition OtcMarketsOrder.hpp:701
OtcMarketsOrder & withEventSymbol(const StringLike &eventSymbol) noexcept override
Changes the event's symbol and returns the current OTC Markets order.
Definition OtcMarketsOrder.hpp:199
const OtcMarketsPriceType & getOtcMarketsPriceType() const &noexcept
Returns OTC Markets price type of this OTC Markets order events.
Definition OtcMarketsOrder.hpp:589
bool isNmsConditional() const noexcept
Returns whether this event represents a NMS conditional.
Definition OtcMarketsOrder.hpp:692
void assign(std::shared_ptr< EventType > event) override
Replaces the contents of the event.
Definition OtcMarketsOrder.cpp:103
OtcMarketsOrder & withAction(const OrderAction &action) noexcept
Changes action of this OTC Markets order and returns it.
Definition OtcMarketsOrder.hpp:312
void setUnsolicited(bool unsolicited) noexcept
Changes whether this event is unsolicited.
Definition OtcMarketsOrder.hpp:565
static const EventTypeEnum & TYPE
Type identifier and additional information about the current event class.
Definition OtcMarketsOrder.hpp:149
std::string toString() const override
Returns a string representation of the current object.
Definition OtcMarketsOrder.cpp:64
OtcMarketsOrder & withSource(const OrderSource &source) noexcept
Changes event's source and returns the current OTC Markets order.
Definition OtcMarketsOrder.hpp:223
OtcMarketsOrder & withCount(std::int64_t count) noexcept
Changes number of individual orders in this aggregate order.
Definition OtcMarketsOrder.hpp:388
void setQuoteAccessPayment(std::int32_t quoteAccessPayment) noexcept
Changes Quote Access Payment (QAP) of this OTC Markets order.
Definition OtcMarketsOrder.hpp:502
OtcMarketsOrder & withMarketMaker(const StringLike &marketMaker) noexcept
Changes market maker or other aggregate identifier of this OTC Markets order.
Definition OtcMarketsOrder.hpp:478
static Ptr fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition OtcMarketsOrder.cpp:45
OtcMarketsOrder & withEventFlags(const EventFlagsMask &eventFlags) noexcept
Changes transactional event flags and returns the current OTC Markets order.
Definition OtcMarketsOrder.hpp:245
OtcMarketsOrder() noexcept
Creates new OTC Markets order event with default values.
Definition OtcMarketsOrder.cpp:111
void setSaturated(bool saturated) noexcept
Changes whether this event should NOT be considered for the inside price.
Definition OtcMarketsOrder.hpp:631
void setOtcMarketsPriceType(const OtcMarketsPriceType &otcPriceType) noexcept
Changes OTC Markets price type of this OTC Markets order events.
Definition OtcMarketsOrder.hpp:599
OtcMarketsOrder & withSize(double size) noexcept
Changes size of this OTC Markets order.
Definition OtcMarketsOrder.hpp:366
OtcMarketsOrder & withScope(const Scope &scope) noexcept
Changes scope of this OTC Markets order.
Definition OtcMarketsOrder.hpp:465
OtcMarketsOrder & withTradeSize(double tradeSize) noexcept
Changes trade size.
Definition OtcMarketsOrder.hpp:421
OtcMarketsOrder & withQuoteAccessPayment(std::int32_t quoteAccessPayment) noexcept
Changes Quote Access Payment (QAP) and returns the current OTC Markets order.
Definition OtcMarketsOrder.hpp:512
OtcMarketsOrder & withOrderId(std::int64_t orderId) noexcept
Changes order ID.
Definition OtcMarketsOrder.hpp:333
OtcMarketsOrder(const StringLike &eventSymbol) noexcept
Creates new OTC Markets order event with the specified event symbol.
Definition OtcMarketsOrder.hpp:188
std::int32_t getQuoteAccessPayment() const noexcept
Returns Quote Access Payment (QAP) of this OTC Markets order.
Definition OtcMarketsOrder.hpp:493
OtcMarketsOrder & withUnsolicited(bool unsolicited) noexcept
Changes whether this event is unsolicited.
Definition OtcMarketsOrder.hpp:578
OtcMarketsOrder & withExchangeCode(char exchangeCode) noexcept
Changes exchange code of this OTC Markets order.
Definition OtcMarketsOrder.hpp:432
OtcMarketsOrder & withOrderSide(const Side &side) noexcept
Changes side of this OTC Markets order.
Definition OtcMarketsOrder.hpp:454
void setOpen(bool open) noexcept
Changes whether this event is available for business within the operating hours of the OTC Link syste...
Definition OtcMarketsOrder.hpp:533
bool isAutoExecution() const noexcept
Returns whether this event is in 'AutoEx' mode.
Definition OtcMarketsOrder.hpp:656
OtcMarketsOrder & withOtcMarketsPriceType(const OtcMarketsPriceType &otcPriceType) noexcept
Changes OTC Markets price type of this OTC Markets order events.
Definition OtcMarketsOrder.hpp:611
OtcMarketsOrder & withSaturated(bool saturated) noexcept
Changes whether this event should NOT be considered for the inside price.
Definition OtcMarketsOrder.hpp:644
OtcMarketsOrder & withTradePrice(double tradePrice) noexcept
Changes trade price.
Definition OtcMarketsOrder.hpp:410
OtcMarketsOrder & withActionTime(std::int64_t actionTime) noexcept
Changes time of the last action and returns current OTC Markets order.
Definition OtcMarketsOrder.hpp:322
OtcMarketsOrder & withExchangeCode(std::int16_t exchangeCode) noexcept
Changes exchange code of this OTC Markets order.
Definition OtcMarketsOrder.hpp:443
void setAutoExecution(bool autoExecution) noexcept
Changes whether this event is in 'AutoEx' mode.
Definition OtcMarketsOrder.hpp:665
bool isUnsolicited() const noexcept
Returns whether this event is unsolicited.
Definition OtcMarketsOrder.hpp:556
OtcMarketsOrder & withEventTime(std::int64_t eventTime) noexcept
Changes event's creation time and returns the current OTC Markets order.
Definition OtcMarketsOrder.hpp:210
OtcMarketsOrder & withTimeNanos(std::int64_t timeNanos) noexcept
Changes time of this OTC Markets order and returns it.
Definition OtcMarketsOrder.hpp:302
bool isOpen() const noexcept
Returns whether this event is available for business within the operating hours of the OTC Link syste...
Definition OtcMarketsOrder.hpp:524
OtcMarketsOrder & withTimeNanoPart(std::int32_t timeNanoPart) noexcept
Changes microseconds and nanoseconds time part of this OTC Markets order.
Definition OtcMarketsOrder.hpp:279
void * toGraal() const override
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition OtcMarketsOrder.cpp:71
OtcMarketsOrder & withSequence(std::int32_t sequence) noexcept
Changes sequence number of this OTC Markets order.
Definition OtcMarketsOrder.hpp:291
OtcMarketsOrder & withNmsConditional(bool nmsConditional) noexcept
Changes whether this event represents a NMS conditional.
Definition OtcMarketsOrder.hpp:714
OtcMarketsOrder & withIndex(std::int64_t index) noexcept
Changes unique per-symbol index of this OTC Markets order and returns it.
Definition OtcMarketsOrder.hpp:257
OtcMarketsOrder & withEventFlags(std::int32_t eventFlags) noexcept
Changes transactional event flags and returns the current OTC Markets order.
Definition OtcMarketsOrder.hpp:234
OtcMarketsOrder & withOpen(bool open) noexcept
Changes whether this event is available for business within the operating hours of the OTC Link syste...
Definition OtcMarketsOrder.hpp:545
OtcMarketsOrder & withTime(std::int64_t time) noexcept
Changes time of this OTC Markets order and returns it.
Definition OtcMarketsOrder.hpp:268
OtcMarketsOrder & withTradeId(std::int64_t tradeId) noexcept
Changes trade ID.
Definition OtcMarketsOrder.hpp:399
bool isShortSaleRestricted() const noexcept
Returns short sale restriction status of the security instrument.
Definition Profile.hpp:179
const TradingStatus & getTradingStatus() const &noexcept
Returns trading status of the security instrument.
Definition Profile.hpp:188
static const EventTypeEnum & TYPE
Type identifier and additional information about the current event class.
Definition Profile.hpp:83
double getLow52WeekPrice() const noexcept
Returns the minimal (low) price in last 52 weeks.
Definition Profile.hpp:340
double getHigh52WeekPrice() const noexcept
Returns the maximal (high) price in last 52 weeks.
Definition Profile.hpp:322
double getExDividendAmount() const noexcept
Returns the amount of the last paid dividend.
Definition Profile.hpp:412
void setHaltEndTime(std::int64_t haltEndTime) noexcept
Changes ending time of the trading halt interval.
Definition Profile.hpp:277
void setHigh52WeekPrice(double high52WeekPrice) noexcept
Changes the maximal (high) price in last 52 weeks.
Definition Profile.hpp:331
double getBeta() const noexcept
Returns the correlation coefficient of the instrument to the S&P500 index.
Definition Profile.hpp:358
double getFreeFloat() const noexcept
Returns free-float - the number of shares outstanding that are available to the public for trade.
Definition Profile.hpp:468
double getLowLimitPrice() const noexcept
Returns the minimal (low) allowed price.
Definition Profile.hpp:304
void setEarningsPerShare(double earningsPerShare) noexcept
Changes Earnings per share (the company’s profits divided by the number of shares).
Definition Profile.hpp:385
bool isTradingHalted() const noexcept
Returns trading halt status of the security instrument.
Definition Profile.hpp:206
Profile(const StringLike &eventSymbol) noexcept
Creates a new profile event with the specified event symbol.
Definition Profile.hpp:122
double getHighLimitPrice() const noexcept
Returns the maximal (high) allowed price.
Definition Profile.hpp:286
double getDividendFrequency() const noexcept
Returns frequency of cash dividends payments per year (calculated).
Definition Profile.hpp:394
void setExDividendAmount(double exDividendAmount) noexcept
Changes the amount of the last paid dividend.
Definition Profile.hpp:421
void setFreeFloat(double freeFloat) noexcept
Changes free-float - the number of shares outstanding that are available to the public for trade.
Definition Profile.hpp:476
void setDividendFrequency(double dividendFrequency) noexcept
Changes frequency of cash dividends payments per year.
Definition Profile.hpp:403
const ShortSaleRestriction & getShortSaleRestriction() const &noexcept
Returns short sale restriction of the security instrument.
Definition Profile.hpp:161
const std::string & getDescription() const &noexcept
Returns description of the security instrument.
Definition Profile.hpp:130
void setHighLimitPrice(double highLimitPrice) noexcept
Changes the maximal (high) allowed price.
Definition Profile.hpp:295
double getEarningsPerShare() const noexcept
Returns earnings per share (the company’s profits divided by the number of shares).
Definition Profile.hpp:376
std::string toString() const override
Returns a string representation of the current object.
Definition Profile.cpp:107
std::int64_t getHaltStartTime() const noexcept
Returns starting time of the trading halt interval.
Definition Profile.hpp:247
const std::optional< std::string > & getStatusReasonOpt() const &noexcept
Returns a description of the reason that trading was halted.
Definition Profile.hpp:228
void setLowLimitPrice(double lowLimitPrice) noexcept
Changes the minimal (low) allowed price.
Definition Profile.hpp:313
Profile() noexcept
Creates a new profile event with default values.
Definition Profile.cpp:163
void setLow52WeekPrice(double low52WeekPrice) noexcept
Changes the minimal (low) price in last 52 weeks.
Definition Profile.hpp:349
void setShortSaleRestriction(const ShortSaleRestriction &restriction) noexcept
Changes short sale restriction of the security instrument.
Definition Profile.hpp:170
void setShares(double shares) noexcept
Changes the number of shares outstanding.
Definition Profile.hpp:459
void setStatusReason(const StringLike &statusReason) noexcept
Changes description of the reason that trading was halted.
Definition Profile.hpp:237
void * toGraal() const override
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition Profile.cpp:123
double getShares() const noexcept
Returns the number of shares outstanding.
Definition Profile.hpp:450
const std::optional< std::string > & getDescriptionOpt() const &noexcept
Returns description of the security instrument.
Definition Profile.hpp:143
std::int32_t getExDividendDayId() const noexcept
Returns identifier of the day of the last dividend payment (ex-dividend date).
Definition Profile.hpp:431
void setExDividendDayId(std::int32_t exDividendDayId) noexcept
Changes identifier of the day of the last dividend payment (ex-dividend date).
Definition Profile.hpp:441
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition Profile.cpp:136
void setTradingStatus(const TradingStatus &status) noexcept
Changes trading status of the security instrument.
Definition Profile.hpp:197
void setBeta(double beta) noexcept
Changes the correlation coefficient of the instrument to the S&P500 index.
Definition Profile.hpp:367
void setHaltStartTime(std::int64_t haltStartTime) noexcept
Changes starting time of the trading halt interval.
Definition Profile.hpp:257
void assign(std::shared_ptr< EventType > event) override
Replaces the contents of the event.
Definition Profile.cpp:155
const std::string & getStatusReason() const &noexcept
Returns a description of the reason that trading was halted.
Definition Profile.hpp:215
static Ptr fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition Profile.cpp:88
void setDescription(const StringLike &description) noexcept
Changes description of the security instrument.
Definition Profile.hpp:152
std::int64_t getHaltEndTime() const noexcept
Returns ending time of the trading halt interval.
Definition Profile.hpp:267
Quote & withAskSize(double askSize) noexcept
Changes ask size and returns the current quote.
Definition Quote.hpp:536
std::string getAskExchangeCodeString() const noexcept
Returns ask exchange code as UTF8 string.
Definition Quote.cpp:40
Quote & withAskExchangeCode(char askExchangeCode) noexcept
Changes ask exchange code and returns the current quote.
Definition Quote.hpp:457
static const EventTypeEnum & TYPE
Type identifier and additional information about the current event class.
Definition Quote.hpp:69
std::int16_t getBidExchangeCode() const noexcept
Returns bid exchange code.
Definition Quote.cpp:18
void setBidTime(std::int64_t bidTime) noexcept
Changes time of the last bid change.
Definition Quote.hpp:252
std::int64_t getTimeNanos() const noexcept
Returns time of the last bid or ask change in nanoseconds.
Definition Quote.hpp:194
Quote() noexcept
Creates a new quote event with default values.
Definition Quote.cpp:169
double getAskSize() const
Returns ask size.
Definition Quote.hpp:517
Quote & withAskExchangeCode(std::int16_t askExchangeCode) noexcept
Changes ask exchange code and returns the current quote.
Definition Quote.hpp:476
void setAskExchangeCode(char askExchangeCode) noexcept
Changes ask exchange code.
Definition Quote.cpp:46
void setTimeNanoPart(std::int32_t timeNanoPart) noexcept
Changes microseconds and nanoseconds part of time of the last bid or ask change.
Definition Quote.hpp:213
void setBidPrice(double bidPrice) noexcept
Changes bid price.
Definition Quote.hpp:340
Quote & withTimeNanoPart(std::int32_t timeNanoPart) noexcept
Changes microseconds and nanoseconds part of time of the last bid or ask change and returns the curre...
Definition Quote.hpp:224
Quote & withBidExchangeCode(std::int16_t bidExchangeCode) noexcept
Changes bid exchange code and returns the current quote.
Definition Quote.hpp:320
Quote & withBidExchangeCode(char bidExchangeCode) noexcept
Changes bid exchange code and returns the current quote.
Definition Quote.hpp:301
void setAskPrice(double askPrice)
Changes ask price.
Definition Quote.hpp:496
std::int64_t getBidTime() const noexcept
Returns time of the last bid change.
Definition Quote.hpp:239
void setAskSize(double askSize)
Changes ask size.
Definition Quote.hpp:526
double getBidPrice() const noexcept
Returns bid price.
Definition Quote.hpp:331
void setAskExchangeCode(std::int16_t askExchangeCode) noexcept
Changes ask exchange code.
Definition Quote.cpp:50
void assign(std::shared_ptr< EventType > event) override
Replaces the contents of the event.
Definition Quote.cpp:161
std::int64_t getAskTime() const noexcept
Returns time of the last ask change.
Definition Quote.hpp:395
Quote & withEventTime(std::int64_t eventTime) noexcept
Changes event's creation time and returns the current quote.
Definition Quote.hpp:137
Quote & withSequence(std::int32_t sequence) noexcept
Changes sequence number of this quote and returns the current quote.
Definition Quote.hpp:171
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition Quote.cpp:142
Quote & withBidSize(double bidSize) noexcept
Changes bid size and returns the current quote.
Definition Quote.hpp:380
Quote & withBidPrice(double bidPrice) noexcept
Changes bid price and returns the current quote.
Definition Quote.hpp:350
Quote & withAskPrice(double askPrice) noexcept
Changes ask price and returns the current quote.
Definition Quote.hpp:506
static Ptr fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition Quote.cpp:110
void * toGraal() const override
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition Quote.cpp:129
Quote & withBidTime(std::int64_t bidTime) noexcept
Changes time of the last bid change and returns the current quote.
Definition Quote.hpp:268
void setAskTime(std::int64_t askTime) noexcept
Changes time of the last ask change.
Definition Quote.hpp:408
std::string toString() const override
Returns a string representation of the current object.
Definition Quote.cpp:99
std::int64_t getTime() const noexcept
Returns time of the last bid or ask change.
Definition Quote.hpp:183
Quote & withEventSymbol(const StringLike &eventSymbol) noexcept
Changes an event's symbol and returns the current quote.
Definition Quote.hpp:124
Quote(const StringLike &eventSymbol) noexcept
Creates a new quote event with the specified event symbol.
Definition Quote.hpp:115
double getBidSize() const noexcept
Returns bid size.
Definition Quote.hpp:361
Quote & withAskTime(std::int64_t askTime) noexcept
Changes time of the last ask change and returns the current quote.
Definition Quote.hpp:424
void setSequence(std::int32_t sequence)
Changes sequence number of this quote.
Definition Quote.cpp:172
void setBidExchangeCode(char bidExchangeCode) noexcept
Changes bid exchange code.
Definition Quote.cpp:28
std::int32_t getTimeNanoPart() const noexcept
Returns microseconds and nanoseconds part of time of the last bid or ask change.
Definition Quote.hpp:203
static constexpr std::uint32_t MAX_SEQUENCE
Maximum allowed sequence value.
Definition Quote.hpp:76
std::int32_t getSequence() const noexcept
Returns a sequence number of this quote to distinguish quotes that have the same time.
Definition Quote.hpp:150
std::string getBidExchangeCodeString() const noexcept
Returns bid exchange code as UTF8 string.
Definition Quote.cpp:22
void setBidExchangeCode(std::int16_t bidExchangeCode) noexcept
Changes bid exchange code.
Definition Quote.cpp:32
void setBidSize(double bidSize) noexcept
Changes bid size.
Definition Quote.hpp:370
std::int16_t getAskExchangeCode() const noexcept
Returns ask exchange code.
Definition Quote.cpp:36
double getAskPrice() const
Returns ask price.
Definition Quote.hpp:487
TimeSeriesSubscriptionSymbol(const SymbolWrapper &eventSymbol, std::int64_t fromTime)
Creates a time-series subscription symbol with a specified event symbol and subscription time.
void * toGraal() const override
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition TimeSeriesSubscriptionSymbol.cpp:19
std::string toString() const override
Returns string representation of this time-series subscription symbol.
Definition TimeSeriesSubscriptionSymbol.cpp:66
std::int64_t getFromTime() const
Returns the subscription time.
Definition TimeSeriesSubscriptionSymbol.cpp:15
static TimeSeriesSubscriptionSymbol fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure (rec...
Definition TimeSeriesSubscriptionSymbol.cpp:50
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition TimeSeriesSubscriptionSymbol.cpp:33
The AuthToken class represents an authorization token and encapsulates information about the authoriz...
Definition AuthToken.hpp:30
std::string getScheme() const
Returns the authentication scheme.
Definition AuthToken.cpp:79
std::string getPassword() const
Returns the password or dxfcpp::String::NUL (std::string{"<null>"}) if it is not known or applicable.
Definition AuthToken.cpp:71
static AuthToken createBasicToken(const StringLike &user, const StringLike &password)
Constructs an AuthToken with the specified username and password per RFC2617.
Definition AuthToken.cpp:23
static AuthToken createBasicTokenOrNull(const StringLike &user, const StringLike &password)
Constructs an AuthToken with the specified username and password per RFC2617.
Definition AuthToken.cpp:27
std::string getHttpAuthorization() const
Returns the HTTP authorization header value.
Definition AuthToken.cpp:55
static AuthToken createBearerToken(const StringLike &token)
Constructs an AuthToken with the specified bearer token per RFC6750.
Definition AuthToken.cpp:37
static AuthToken createCustomToken(const StringLike &scheme, const StringLike &value)
Constructs an AuthToken with a custom scheme and value.
Definition AuthToken.cpp:51
std::string getValue() const
Returns the access token for RFC6750 or the Base64-encoded "username:password" for RFC2617.
Definition AuthToken.cpp:87
static AuthToken createBearerTokenOrNull(const StringLike &token)
Constructs an AuthToken with the specified bearer token per RFC6750.
Definition AuthToken.cpp:41
std::string getUser() const
Returns the username or dxfcpp::String::NUL (std::string{"<null>"}) if it is not known or applicable.
Definition AuthToken.cpp:63
static AuthToken valueOf(const StringLike &string)
Constructs an AuthToken from the specified string.
Definition AuthToken.cpp:15
static AuthToken createBasicToken(const StringLike &userPassword)
Constructs an AuthToken with the specified username and password per RFC2617.
Definition AuthToken.cpp:19
Candle alignment attribute of CandleSymbol defines how candles are aligned with respect to time.
Definition CandleAlignment.hpp:32
static const CandleAlignment DEFAULT
Default alignment is CandleAlignment::MIDNIGHT.
Definition CandleAlignment.hpp:46
static const CandleAlignment MIDNIGHT
Align candles at midnight.
Definition CandleAlignment.hpp:14
static const CandleAlignment SESSION
Align candles on trading sessions.
Definition CandleAlignment.hpp:15
static std::reference_wrapper< const CandleAlignment > getAttributeForSymbol(const StringLike &symbol)
Returns candle alignment of the given candle symbol string.
Definition CandleAlignment.cpp:50
std::string toString() const
Returns string representation of this candle alignment.
Definition CandleAlignment.cpp:28
static std::reference_wrapper< const CandleAlignment > parse(const StringLike &s)
Parses string representation of candle alignment into an object.
Definition CandleAlignment.cpp:36
static const std::string ATTRIBUTE_KEY
The attribute key that is used to store the value of CandleAlignment in a symbol string using methods...
Definition CandleAlignment.hpp:17
std::string changeAttributeForSymbol(const StringLike &symbol) const override
Returns candle event symbol string with this candle alignment set.
Definition CandleAlignment.cpp:23
static std::string normalizeAttributeForSymbol(const StringLike &symbol)
Returns candle symbol string with the normalized representation of the candle alignment attribute.
Definition CandleAlignment.cpp:56
Exchange attribute of CandleSymbol defines the exchange identifier where data is taken from to build ...
Definition CandleExchange.hpp:29
char getExchangeCode() const noexcept
Returns exchange code.
Definition CandleExchange.cpp:17
static const CandleExchange DEFAULT
Default exchange is CandleExchange::COMPOSITE.
Definition CandleExchange.hpp:38
std::string toString() const
Returns string representation of this exchange.
Definition CandleExchange.cpp:25
std::string changeAttributeForSymbol(const StringLike &symbol) const override
Returns candle event symbol string with this exchange set.
Definition CandleExchange.cpp:21
static CandleExchange valueOf(char exchangeCode) noexcept
Returns an exchange attribute object that corresponds to the specified exchange code character.
Definition CandleExchange.cpp:33
static CandleExchange getAttributeForSymbol(const StringLike &symbol)
Returns exchange an attribute object of the given candle symbol string.
Definition CandleExchange.cpp:37
static const CandleExchange COMPOSITE
Composite exchange where data is taken from all exchanges.
Definition CandleExchange.hpp:32
Period attribute of CandleSymbol defines an aggregation period of the candles.
Definition CandlePeriod.hpp:34
double getValue() const noexcept
Returns aggregation period value.
Definition CandlePeriod.cpp:27
static const std::string ATTRIBUTE_KEY
The attribute key that is used to store the value of CandlePeriod in a symbol string using methods of...
Definition CandlePeriod.hpp:80
static const CandlePeriod TICK
Tick aggregation where each candle represents an individual tick.
Definition CandlePeriod.hpp:77
static std::string normalizeAttributeForSymbol(const StringLike &symbol)
Returns candle symbol string with the normalized representation of the candle period attribute.
Definition CandlePeriod.cpp:96
static CandlePeriod valueOf(double value, const CandleType &type) noexcept
Returns candle period with the given value and type.
Definition CandlePeriod.cpp:78
static const CandlePeriod DEFAULT
The default period is CandlePeriod::TICK.
Definition CandlePeriod.hpp:48
std::int64_t getPeriodIntervalMillis() const noexcept
Returns an aggregation period in milliseconds as closely as possible.
Definition CandlePeriod.cpp:18
static const CandlePeriod DAY
Day aggregation where each candle represents a day.
Definition CandlePeriod.hpp:78
const CandleType & getType() const &noexcept
Returns aggregation period type.
Definition CandlePeriod.cpp:31
const std::string & toString() const &
Returns string representation of this aggregation period.
Definition CandlePeriod.cpp:35
std::string changeAttributeForSymbol(const StringLike &symbol) const override
Returns candle event symbol string with this aggregation period set.
Definition CandlePeriod.cpp:22
static CandlePeriod getAttributeForSymbol(const StringLike &symbol) noexcept
Returns candle period of the given candle symbol string.
Definition CandlePeriod.cpp:90
static CandlePeriod parse(const StringLike &s)
Parses string representation of an aggregation period into an object.
Definition CandlePeriod.cpp:50
Candle price level attribute of CandleSymbol defines how candles shall be aggregated in respect to a ...
Definition CandlePriceLevel.hpp:40
std::string changeAttributeForSymbol(const StringLike &symbol) const override
Returns candle event symbol string with this candle price level set.
Definition CandlePriceLevel.cpp:33
static CandlePriceLevel valueOf(double value)
Returns candle price level with the given value.
Definition CandlePriceLevel.cpp:42
static const CandlePriceLevel DEFAULT
Default price level corresponds to NaN (std::numeric_limits<double>::quiet_NaN())
Definition CandlePriceLevel.hpp:108
static CandlePriceLevel parse(const StringLike &s)
Parses string representation of candle price level into an object.
Definition CandlePriceLevel.cpp:38
std::string toString() const
Returns string representation of this price level.
Definition CandlePriceLevel.cpp:21
double getValue() const noexcept
Returns price level value.
Definition CandlePriceLevel.cpp:17
static const std::string ATTRIBUTE_KEY
The attribute key that is used to store the value of CandlePriceLevel in a symbol string using method...
Definition CandlePriceLevel.hpp:110
static std::string normalizeAttributeForSymbol(const StringLike &symbol)
Returns candle symbol string with the normalized representation of the candle price level attribute.
Definition CandlePriceLevel.cpp:56
static CandlePriceLevel getAttributeForSymbol(const StringLike &symbol)
Returns candle price level of the given candle symbol string.
Definition CandlePriceLevel.cpp:50
Price type attribute of CandleSymbol defines the price used to build the candles.
Definition CandlePrice.hpp:34
static std::string normalizeAttributeForSymbol(const StringLike &symbol)
Returns candle symbol string with the normalized representation of the candle price type attribute.
Definition CandlePrice.cpp:58
static const CandlePrice BID
Quote bid price.
Definition CandlePrice.hpp:85
static const CandlePrice ASK
Quote ask price.
Definition CandlePrice.hpp:86
static const CandlePrice MARK
Market price defined as average between quote bid and ask prices.
Definition CandlePrice.hpp:87
const std::string & toString() const &noexcept
Returns string representation of this candle price type.
Definition CandlePrice.cpp:25
static const CandlePrice DEFAULT
The default price type is CandlePrice::LAST.
Definition CandlePrice.hpp:65
static const CandlePrice SETTLEMENT
Official settlement price that is defined by exchange or last trading price otherwise.
Definition CandlePrice.hpp:88
static std::reference_wrapper< const CandlePrice > getAttributeForSymbol(const StringLike &symbol) noexcept
Returns the candle price type of the given candle symbol string.
Definition CandlePrice.cpp:52
static const CandlePrice LAST
Last trading price.
Definition CandlePrice.hpp:84
static std::reference_wrapper< const CandlePrice > parse(const StringLike &s)
Parses string representation of a candle price type into an object.
Definition CandlePrice.cpp:33
std::string changeAttributeForSymbol(const StringLike &symbol) const override
Returns candle event symbol string with this candle price type set.
Definition CandlePrice.cpp:20
static const std::string ATTRIBUTE_KEY
The attribute key that is used to store the value of CandlePrice in a symbol string using methods of ...
Definition CandlePrice.hpp:91
const std::string & toString() const &noexcept
Returns string representation of this candle session attribute.
Definition CandleSession.cpp:86
static const CandleSession REGULAR
Only regular trading session data is used to build candles.
Definition CandleSession.hpp:134
const SessionFilter & getSessionFilter() const &noexcept
Returns a session filter that corresponds to this session attribute.
Definition CandleSession.cpp:77
static std::reference_wrapper< const CandleSession > getAttributeForSymbol(const StringLike &symbol)
Returns candle session attribute of the given candle symbol string.
Definition CandleSession.cpp:113
static const CandleSession ANY
All trading sessions are used to build candles.
Definition CandleSession.hpp:133
static const std::string ATTRIBUTE_KEY
The attribute key that is used to store the value of CandleSession in a symbol string using methods o...
Definition CandleSession.hpp:60
std::string changeAttributeForSymbol(const StringLike &symbol) const override
Returns candle event symbol string with this session attribute set.
Definition CandleSession.cpp:81
static std::reference_wrapper< const CandleSession > parse(const StringLike &s)
Parses string representation of the candle session attribute into an object.
Definition CandleSession.cpp:94
static const CandleSession DEFAULT
The default trading session is CandleSession::ANY.
Definition CandleSession.hpp:51
static std::string normalizeAttributeForSymbol(const StringLike &symbol) noexcept
Returns candle symbol string with the normalized representation of the candle session attribute.
Definition CandleSession.cpp:119
Attribute of the CandleSymbol.
Definition CandleSymbolAttribute.hpp:19
virtual std::string changeAttributeForSymbol(const StringLike &symbol) const =0
Returns candle event symbol string with this attribute set.
Symbol that should be used with DXFeedSubscription class to subscribe for Candle events.
Definition CandleSymbol.hpp:82
const std::optional< CandlePeriod > & getPeriod() const &noexcept
Returns the aggregation period of this symbol.
Definition CandleSymbol.cpp:226
const std::optional< CandlePriceLevel > & getPriceLevel() const &noexcept
Returns the price level attribute of this symbol.
Definition CandleSymbol.cpp:234
const std::optional< CandleExchange > & getExchange() const &noexcept
Returns exchange attribute of this symbol.
Definition CandleSymbol.cpp:214
static CandleSymbol valueOf(const StringLike &symbol, const CandleSymbolAttributeVariant &attribute) noexcept
Converts the given string symbol into the candle symbol object with the specified attribute set.
Definition CandleSymbol.cpp:334
const std::string & getBaseSymbol() const &noexcept
Returns base market symbol without attributes.
Definition CandleSymbol.cpp:210
static CandleSymbol valueOf(const StringLike &symbol, CandleSymbolAttributesCollection &&attributes) noexcept
Converts the given string symbol into the candle symbol object with the specified attributes set.
Definition CandleSymbol.hpp:275
static CandleSymbol valueOf(const StringLike &symbol, std::initializer_list< CandleSymbolAttributeVariant > attributes) noexcept
Converts the given string symbol into the candle symbol object with the specified attributes set (ini...
Definition CandleSymbol.cpp:338
static CandleSymbol valueOf(const StringLike &symbol) noexcept
Converts the given string symbol into the candle symbol object.
Definition CandleSymbol.cpp:330
const std::optional< CandlePrice > & getPrice() const &noexcept
Returns the price type attribute of this symbol.
Definition CandleSymbol.cpp:218
static CandleSymbol valueOf(const StringLike &symbol, CandleSymbolAttributeIt begin, CandleSymbolAttributeIt end) noexcept
Converts the given string symbol into the candle symbol object with the specified attribute set (iter...
Definition CandleSymbol.hpp:246
virtual void * toGraal() const
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition CandleSymbol.cpp:288
const std::string & toString() const &noexcept
Returns string representation of this symbol.
Definition CandleSymbol.cpp:238
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition CandleSymbol.cpp:299
const std::optional< CandleSession > & getSession() const &noexcept
Returns the session attribute of this symbol.
Definition CandleSymbol.cpp:222
static CandleSymbol fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition CandleSymbol.cpp:315
const std::optional< CandleAlignment > & getAlignment() const &noexcept
Returns alignment attribute of this symbol.
Definition CandleSymbol.cpp:230
Type of the candle aggregation period constitutes CandlePeriod type together its actual value.
Definition CandleType.hpp:24
static const CandleType VOLUME
Certain volume of trades.
Definition CandleType.hpp:73
static const CandleType MONTH
Certain number of months.
Definition CandleType.hpp:58
static const CandleType PRICE_RENKO
Certain price change, calculated according to the following rules:
Definition CandleType.hpp:108
static const CandleType DAY
Certain number of days.
Definition CandleType.hpp:42
std::int64_t getPeriodIntervalMillis() const noexcept
Returns a candle type period in milliseconds as closely as possible.
Definition CandleType.cpp:22
static const CandleType WEEK
Certain number of weeks.
Definition CandleType.hpp:43
static const CandleType TICK
Certain number of ticks.
Definition CandleType.hpp:38
static const CandleType HOUR
Certain number of hours.
Definition CandleType.hpp:41
static const CandleType PRICE
Certain price change, calculated according to the following rules:
Definition CandleType.hpp:84
static std::reference_wrapper< const CandleType > parse(const StringLike &s)
Parses string representation of a candle type into an object.
Definition CandleType.cpp:34
const std::string & toString() const &noexcept
Returns string representation of this candle type.
Definition CandleType.cpp:30
static const CandleType OPTEXP
Certain number of option expirations.
Definition CandleType.hpp:63
static const CandleType SECOND
Certain number of seconds.
Definition CandleType.hpp:39
static const CandleType MINUTE
Certain number of minutes.
Definition CandleType.hpp:40
const std::string & getName() const &noexcept
Returns a name of this candle type.
Definition CandleType.cpp:26
static const CandleType PRICE_MOMENTUM
Certain price change, calculated according to the following rules:
Definition CandleType.hpp:96
static const CandleType YEAR
Certain number of years.
Definition CandleType.hpp:68
Mixin for wrapping calls to common promise methods.
Definition Promise.hpp:73
JavaException getException() const
Returns exceptional outcome of computation.
Definition Promise.hpp:121
void cancel() const
This method cancels computation.
Definition Promise.hpp:168
bool hasResult() const
Returns true when computation has completed normally.
Definition Promise.hpp:89
bool isCancelled() const
Returns true when computation was cancelled.
Definition Promise.hpp:108
bool hasException() const
Returns true when a computation has completed exceptionally or was canceled.
Definition Promise.hpp:98
bool awaitWithoutException(const std::chrono::milliseconds &timeoutInMilliseconds) const
Wait for computation to complete or timeout or throw an exception in case of exceptional completion.
Definition Promise.hpp:155
bool isDone() const
Returns true when a computation has completed normally, or exceptionally, or was canceled.
Definition Promise.hpp:79
bool awaitWithoutException(std::int32_t timeoutInMilliseconds) const
Wait for computation to complete or timeout or throw an exception in case of exceptional completion.
Definition Promise.hpp:138
Manages network connections to feed or publisher.
Definition DXEndpoint.hpp:172
bool isClosed() const
Definition DXEndpoint.cpp:511
SimpleHandler< void(DXEndpoint::State, DXEndpoint::State)> & onStateChange() noexcept
Returns the onStateChange handler that can be used to add or remove listeners.
Definition DXEndpoint.cpp:523
static const std::string DXFEED_PASSWORD_PROPERTY
"dxfeed.password"
Definition DXEndpoint.hpp:238
static std::shared_ptr< DXEndpoint > create(Role role)
Creates an endpoint with a specified role.
Definition DXEndpoint.cpp:498
std::shared_ptr< DXFeed > getFeed() const
Definition DXEndpoint.cpp:224
std::shared_ptr< DXEndpoint > password(const StringLike &password)
Changes password for this endpoint.
Definition DXEndpoint.cpp:151
State
Represents the current state of endpoint.
Definition DXEndpoint.hpp:436
@ CLOSED
Endpoint was closed.
Definition DXEndpoint.hpp:456
@ CONNECTING
The connect method was called to establish connection to remove endpoint, but the connection is not e...
Definition DXEndpoint.hpp:446
@ CONNECTED
The connection to the remote endpoint is established.
Definition DXEndpoint.hpp:451
@ NOT_CONNECTED
Endpoint was created by is not connected to remote endpoints.
Definition DXEndpoint.hpp:440
std::shared_ptr< DXEndpoint > user(const StringLike &user)
Changes username for this endpoint.
Definition DXEndpoint.cpp:144
void reconnect() const
Terminates all established network connections and initiates connecting again with the same address.
Definition DXEndpoint.cpp:170
static std::shared_ptr< DXEndpoint > create()
Creates an endpoint with FEED role.
Definition DXEndpoint.cpp:489
void removeStateChangeListener(std::size_t listenerId) noexcept
Removes a listener notified about changes in state property.
Definition DXEndpoint.cpp:519
const std::string & getName() const &noexcept
Definition DXEndpoint.cpp:515
Role
Represents the role of an endpoint that was specified during its creation.
Definition DXEndpoint.hpp:365
@ PUBLISHER
PUBLISHER endpoint connects to the remote publisher hub (also known as multiplexor) or creates a publ...
Definition DXEndpoint.hpp:410
@ STREAM_FEED
STREAM_FEED endpoint is similar to DXEndpoint::FEED and also connects to the remote data feed provide...
Definition DXEndpoint.hpp:398
@ LOCAL_HUB
LOCAL_HUB endpoint is a local hub without the ability to establish network connections.
Definition DXEndpoint.hpp:426
@ ON_DEMAND_FEED
ON_DEMAND_FEED endpoint is similar to DXEndpoint::FEED, but it is designed to be used with OnDemandSe...
Definition DXEndpoint.hpp:389
@ STREAM_PUBLISHER
STREAM_PUBLISHER endpoint is similar to DXEndpoint::PUBLISHER and also connects to the remote publish...
Definition DXEndpoint.hpp:419
@ FEED
FEED endpoint connects to the remote data feed provider and is optimized for real-time or delayed dat...
Definition DXEndpoint.hpp:376
std::string toString() const override
Returns a string representation of the current object.
Definition DXEndpoint.cpp:388
void awaitProcessed() const
Waits until this endpoint stops processing data (becomes quiescent).
Definition DXEndpoint.cpp:206
std::shared_ptr< DXPublisher > getPublisher() const
Definition DXEndpoint.cpp:233
static const std::string DXFEED_WILDCARD_ENABLE_PROPERTY
"dxfeed.wildcard.enable"
Definition DXEndpoint.hpp:266
std::size_t addStateChangeListener(std::function< void(State, State)> listener) noexcept
Adds a listener notified about changes in state property.
Definition DXEndpoint.hpp:611
static const std::string DXENDPOINT_EVENT_TIME_PROPERTY
"dxendpoint.eventTime"
Definition DXEndpoint.hpp:311
static const std::string DXPUBLISHER_THREAD_POOL_SIZE_PROPERTY
"dxpublisher.threadPoolSize"
Definition DXEndpoint.hpp:294
State getState() const
Returns the state of this endpoint.
Definition DXEndpoint.cpp:140
static const std::string DXENDPOINT_STORE_EVERYTHING_PROPERTY
"dxendpoint.storeEverything"
Definition DXEndpoint.hpp:324
void awaitNotConnected() const
Waits while this endpoint state becomes NOT_CONNECTED or CLOSED.
Definition DXEndpoint.cpp:197
static std::shared_ptr< DXEndpoint > getInstance(Role role)
Returns a default application-wide singleton instance of DXEndpoint for a specific role.
Definition DXEndpoint.cpp:471
static const std::string DXFEED_AGGREGATION_PERIOD_PROPERTY
"dxfeed.aggregationPeriod"
Definition DXEndpoint.hpp:257
void close() const
Closes this endpoint.
Definition DXEndpoint.cpp:527
static const std::string DXFEED_THREAD_POOL_SIZE_PROPERTY
"dxfeed.threadPoolSize"
Definition DXEndpoint.hpp:247
void disconnect() const
Terminates all remote network connections.
Definition DXEndpoint.cpp:179
void closeAndAwaitTermination() const
Closes this endpoint and wait until all pending data processing tasks are completed.
Definition DXEndpoint.cpp:215
static std::shared_ptr< DXEndpoint > getInstance()
Returns a default application-wide singleton instance of DXEndpoint with a FEED role.
Definition DXEndpoint.cpp:462
static const std::string DXPUBLISHER_ADDRESS_PROPERTY
"dxpublisher.address"
Definition DXEndpoint.hpp:285
static const std::string DXFEED_USER_PROPERTY
"dxfeed.user"
Definition DXEndpoint.hpp:228
static const std::string NAME_PROPERTY
"name"
Definition DXEndpoint.hpp:189
static const std::string DXSCHEME_ENABLED_PROPERTY_PREFIX
"dxscheme.enabled."
Definition DXEndpoint.hpp:358
static const std::string DXPUBLISHER_PROPERTIES_PROPERTY
"dxpublisher.properties"
Definition DXEndpoint.hpp:275
static const std::string DXSCHEME_NANO_TIME_PROPERTY
"dxscheme.nanoTime"
Definition DXEndpoint.hpp:344
static const std::string DXFEED_ADDRESS_PROPERTY
"dxfeed.address"
Definition DXEndpoint.hpp:218
void disconnectAndClear() const
Terminates all remote network connections and clears stored data.
Definition DXEndpoint.cpp:188
Role getRole() const noexcept
Returns the role of this endpoint.
Definition DXEndpoint.cpp:507
static const std::string DXFEED_PROPERTIES_PROPERTY
"dxfeed.properties"
Definition DXEndpoint.hpp:200
static std::shared_ptr< Builder > newBuilder()
Creates a new Builder instance.
Definition DXEndpoint.cpp:480
std::shared_ptr< DXEndpoint > connect(const StringLike &address)
Connects to the specified remote address.
Definition DXEndpoint.cpp:158
Main entry class for dxFeed API (read it first).
Definition DXFeed.hpp:115
void detachSubscriptionAndClear(const std::shared_ptr< DXFeedSubscription > &subscription) const
Detaches the given subscription from this feed and clears data delivered to this subscription by publ...
Definition DXFeed.cpp:68
std::vector< std::shared_ptr< E > > getTimeSeriesIfSubscribed(const SymbolWrapper &symbol, std::int64_t fromTime) const
Returns time series of events for the specified event type, symbol and a range of time (without an up...
Definition DXFeed.hpp:1002
std::shared_ptr< PromiseList< E > > getLastEventsPromises(std::initializer_list< SymbolWrapper > collection) const
Requests the last events for the specified event type and a collection of symbols.
Definition DXFeed.hpp:718
std::vector< std::shared_ptr< E > > getTimeSeriesIfSubscribed(const SymbolWrapper &symbol, std::chrono::milliseconds fromTime, std::chrono::milliseconds toTime) const
Returns time series of events for the specified event type, symbol and a range of time if there is a ...
Definition DXFeed.hpp:986
std::vector< std::shared_ptr< E > > getTimeSeriesIfSubscribed(const SymbolWrapper &symbol, std::int64_t fromTime, std::int64_t toTime) const
Returns time series of events for the specified event type, symbol and a range of time if there is a ...
Definition DXFeed.hpp:934
std::shared_ptr< DXFeedSubscription > createSubscription(const EventTypeEnum &eventType) const
Creates a new subscription for a single event type that is attached to this feed.
Definition DXFeed.cpp:88
std::shared_ptr< DXFeedTimeSeriesSubscription > createTimeSeriesSubscription(std::initializer_list< EventTypeEnum > eventTypes) const
Creates new subscription for multiple event types that is attached to this feed.
Definition DXFeed.cpp:137
std::shared_ptr< Promise< std::vector< std::shared_ptr< E > > > > getTimeSeriesPromise(const SymbolWrapper &symbol, std::int64_t fromTime, std::int64_t toTime) const
Requests time series of events for the specified event type, symbol and a range of time.
Definition DXFeed.hpp:882
std::shared_ptr< DXFeedSubscription > createSubscription(EventTypeIt begin, EventTypeIt end) const
Creates new subscription for multiple event types that is attached to this feed.
Definition DXFeed.hpp:357
std::shared_ptr< PromiseList< E > > getLastEventsPromises(const SymbolsCollection &collection) const
Requests the last events for the specified event type and a collection of symbols.
Definition DXFeed.hpp:672
std::shared_ptr< E > getLastEventIfSubscribed(const SymbolWrapper &symbol)
Returns the last event for the specified event type and symbol if there is a subscription for it.
Definition DXFeed.hpp:304
std::shared_ptr< DXFeedSubscription > createSubscription(std::initializer_list< EventTypeEnum > eventTypes) const
Creates new subscription for multiple event types that is attached to this feed.
Definition DXFeed.cpp:101
std::vector< std::shared_ptr< E > > getTimeSeriesIfSubscribed(const SymbolWrapper &symbol, std::chrono::milliseconds fromTime) const
Returns time series of events for the specified event type, symbol and a range of time (without an up...
Definition DXFeed.hpp:1017
std::shared_ptr< DXFeedTimeSeriesSubscription > createTimeSeriesSubscription(EventTypeIt begin, EventTypeIt end) const
Creates new subscription for multiple event types that is attached to this feed.
Definition DXFeed.hpp:469
static std::shared_ptr< DXFeed > getInstance()
Returns a default application-wide singleton instance of feed.
Definition DXFeed.cpp:19
std::shared_ptr< E > getLastEvent(std::shared_ptr< E > event)
Returns the last event for the specified event instance.
Definition DXFeed.hpp:244
std::shared_ptr< PromiseList< E > > getLastEventsPromises(SymbolIt begin, SymbolIt end) const
Requests the last events for the specified event type and a collection of symbols.
Definition DXFeed.hpp:625
std::shared_ptr< DXFeedSubscription > createSubscription(const EventTypesCollection &eventTypes) const
Creates new subscription for multiple event types that is attached to this feed.
Definition DXFeed.hpp:407
std::shared_ptr< Promise< std::shared_ptr< E > > > getLastEventPromise(const SymbolWrapper &symbol) const
Requests the last event for the specified event type and symbol.
Definition DXFeed.hpp:577
std::shared_ptr< DXFeedTimeSeriesSubscription > createTimeSeriesSubscription(const EventTypesCollection &eventTypes) const
Creates new subscription for multiple event types that is attached to this feed.
Definition DXFeed.hpp:536
std::string toString() const override
Returns a string representation of the current object.
Definition DXFeed.cpp:226
std::shared_ptr< Promise< std::vector< std::shared_ptr< E > > > > getIndexedEventsPromise(const SymbolWrapper &symbol, const IndexedEventSource &source) const
Requests a container of indexed events for the specified event type, symbol and source.
Definition DXFeed.hpp:771
void detachSubscription(const std::shared_ptr< DXFeedSubscription > &subscription) const
Detaches the given subscription from this feed.
Definition DXFeed.cpp:48
std::vector< std::shared_ptr< E > > getIndexedEventsIfSubscribed(const SymbolWrapper &symbol, const IndexedEventSource &source) const
Returns a vector of indexed events for the specified event type, symbol and source if there is a subs...
Definition DXFeed.hpp:827
const Collection & getLastEvents(const Collection &events)
Returns the last events for the specified list of event instances.
Definition DXFeed.hpp:265
void attachSubscription(const std::shared_ptr< DXFeedSubscription > &subscription) const
Attaches the given subscription to this feed.
Definition DXFeed.cpp:28
std::shared_ptr< DXFeedTimeSeriesSubscription > createTimeSeriesSubscription(const EventTypeEnum &eventType) const
Creates a new subscription for a single event type that is attached to this feed.
Definition DXFeed.cpp:116
Provides API for publishing of events to local or remote DXFeed.
Definition DXPublisher.hpp:56
std::shared_ptr< ObservableSubscription > getSubscription(const EventTypeEnum &eventType)
Returns observable set of subscribed symbols for the specified event type.
Definition DXPublisher.cpp:45
void publishEvents(std::initializer_list< std::shared_ptr< EventType > > events) noexcept
Publishes events to the corresponding feed.
Definition DXPublisher.hpp:178
void publishEvents(EventIt begin, EventIt end)
Publishes events to the corresponding feed.
Definition DXPublisher.hpp:198
std::string toString() const override
Returns a string representation of the current object.
Definition DXPublisher.cpp:60
static std::shared_ptr< DXPublisher > getInstance()
Returns a default application-wide singleton instance of DXPublisher.
Definition DXPublisher.cpp:20
void publishEvents(EventsCollection &&events) noexcept
Publishes events to the corresponding feed.
Definition DXPublisher.hpp:160
void publishEvents(std::shared_ptr< EventType > event) noexcept
Publishes an event to the corresponding feed.
Definition DXPublisher.hpp:187
Direction of the price movement.
Definition Direction.hpp:21
static const DXFCPP_EXPORT Direction UNDEFINED
Direction is undefined, unknown or inapplicable.
Definition Direction.hpp:12
static const DXFCPP_EXPORT Direction DOWN
The current price is lower than the previous price.
Definition Direction.hpp:13
static const DXFCPP_EXPORT Direction ZERO
The current price is equal to the only known price value suitable for price direction computation.
Definition Direction.hpp:15
static const DXFCPP_EXPORT Direction ZERO_DOWN
The current price is the same as the previous price and is lower than the last known price of differe...
Definition Direction.hpp:14
static const DXFCPP_EXPORT Direction UP
The current price is higher than the previous price.
Definition Direction.hpp:17
static const DXFCPP_EXPORT Direction ZERO_UP
The current price is the same as the previous price and is higher than the last known price of differ...
Definition Direction.hpp:16
Base abstract class for all dxFeed C++ API entities.
Definition Entity.hpp:13
virtual ~Entity() noexcept
The default virtual d-tor.
Definition Entity.hpp:15
Mixin for wrapping Promise method calls for a single event.
Definition Promise.hpp:237
std::shared_ptr< E > getResult() const
Returns result of computation.
Definition Promise.hpp:245
std::shared_ptr< E > await() const
Wait for the computation to complete and return its result or throw an exception in case of exception...
Definition Promise.hpp:255
std::shared_ptr< E > await(const std::chrono::milliseconds &timeoutInMilliseconds) const &
Wait for computation to complete or timeout and return its result or throw an exception in case of ex...
Definition Promise.hpp:285
std::shared_ptr< E > await(std::int32_t timeoutInMilliseconds) const &
Wait for computation to complete or timeout and return its result or throw an exception in case of ex...
Definition Promise.hpp:270
bool isOrderSource() const noexcept
Definition EventSourceWrapper.hpp:242
std::unique_ptr< void, decltype(&EventSourceWrapper::freeGraal)> toGraalUnique() const noexcept
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition EventSourceWrapper.hpp:200
std::string toStringUnderlying() const
Returns a string representation of the underlying object.
Definition EventSourceWrapper.hpp:224
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition EventSourceWrapper.hpp:163
std::string toString() const
Returns a string representation of the current object.
Definition EventSourceWrapper.hpp:209
void * toGraal() const noexcept
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition EventSourceWrapper.hpp:184
static EventSourceWrapper fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition EventSourceWrapper.cpp:50
const DataType & getData() const noexcept
Definition EventSourceWrapper.hpp:266
EventSourceWrapper(const IndexedEventSource &data) noexcept
Constructs a wrapper from IndexedEventSource.
Definition EventSourceWrapper.hpp:145
bool isIndexedEventSource() const noexcept
Definition EventSourceWrapper.hpp:235
std::optional< IndexedEventSource > asIndexedEventSource() const noexcept
Definition EventSourceWrapper.hpp:250
std::optional< OrderSource > asOrderSource() const noexcept
Definition EventSourceWrapper.hpp:259
EventSourceWrapper(const OrderSource &data) noexcept
Constructs a wrapper from OrderSource.
Definition EventSourceWrapper.hpp:153
Event type parametrized by a symbol.
Definition EventType.hpp:108
virtual const std::optional< Symbol > & getEventSymbolOpt() const &noexcept=0
Returns the event symbol that identifies this event type in subscription.
virtual void setEventSymbol(const Symbol &eventSymbol) noexcept=0
Changes the event symbol that identifies this event type in subscription.
virtual const Symbol & getEventSymbol() const &noexcept=0
Returns the event symbol that identifies this event type in subscription.
Marks all event types that can be received via dxFeed API.
Definition EventType.hpp:31
std::string toString() const override
Returns a string representation of the current object.
Definition api.cpp:57
virtual void * toGraal() const =0
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
virtual std::int64_t getEventTime() const noexcept
Returns time when an event was created or zero when time is not available.
Definition api.cpp:44
virtual void assign(std::shared_ptr< EventType > event)
Replaces the contents of the event.
Definition api.cpp:53
virtual void setEventTime(std::int64_t eventTime) noexcept
Changes event creation time.
Definition api.cpp:48
This marker interface marks subscription symbol classes (like TimeSeriesSubscriptionSymbol) that atta...
Definition FilteredSubscriptionSymbol.hpp:27
The wrapper over CEntryPointErrorsEnum, the error code returned by GraalVM.
Definition GraalException.hpp:21
GraalException(CEntryPointErrorsEnum entryPointErrorsEnum)
Constructs an exception.
Definition GraalException.cpp:8
void handle(ArgTypes... args)
Calls the listeners and pass the args to them.
Definition Handler.hpp:122
std::size_t add(ListenerType &&listener)
Adds the listener to "main" group.
Definition Handler.hpp:156
std::size_t operator%=(ListenerType &&listener)
Adds the low priority listener (to the "low priority" group).
Definition Handler.hpp:208
std::size_t operator+=(ListenerType &&listener)
Adds the listener to "main" group.
Definition Handler.hpp:197
void operator()(ArgTypes... args)
Calls the listeners and pass the ars to them.
Definition Handler.hpp:146
Handler(std::size_t mainFuturesSize=MAIN_FUTURES_DEFAULT_SIZE) noexcept
Creates the new handler by specified size of circular buffer of futures.
Definition Handler.hpp:84
void operator-=(std::size_t id)
Removes a listener by the id.
Definition Handler.hpp:236
std::size_t addLowPriority(ListenerType &&listener)
Adds the low priority listener (to the "low priority" group) It will be called after the "main" liste...
Definition Handler.hpp:177
void remove(std::size_t id)
Removes a listener by the id.
Definition Handler.hpp:217
static std::shared_ptr< Builder > newBuilder()
Creates a new instance of HistoryEndpoint::Builder with default configurations.
Definition HistoryEndpoint.cpp:83
Compression
The Compression enum represents different compression algorithms that can be applied to data during t...
Definition HistoryEndpoint.hpp:70
Format
The Format enum represents different formats that can be used to handle data.
Definition HistoryEndpoint.hpp:85
std::vector< std::shared_ptr< E > > getTimeSeries(const SymbolWrapper &symbol, std::int64_t from, std::int64_t to)
Retrieves a list of time series events for a specific type of event and symbol within the given time ...
Definition HistoryEndpoint.hpp:195
Type of iceberg order.
Definition IcebergType.hpp:19
static const DXFCPP_EXPORT IcebergType SYNTHETIC
Represents synthetic (managed outside the exchange) iceberg type.
Definition IcebergType.hpp:13
static const DXFCPP_EXPORT IcebergType UNDEFINED
Iceberg type is undefined, unknown or inapplicable.
Definition IcebergType.hpp:11
static const DXFCPP_EXPORT IcebergType NATIVE
Represents a native (exchange-managed) iceberg type.
Definition IcebergType.hpp:12
Represents an indexed collection of up-to-date information about some condition or state of an extern...
Definition IndexedEvent.hpp:41
virtual EventFlagsMask getEventFlagsMask() const noexcept=0
Returns transactional event flags.
virtual const IndexedEventSource & getSource() const &noexcept=0
Returns the source of this event.
static const EventFlag TX_PENDING
0x01 - A bitmask to get transaction pending indicator from the value of eventFlags property.
Definition IndexedEvent.hpp:48
virtual std::int64_t getIndex() const noexcept=0
Returns unique per-symbol index of this event.
static const EventFlag SNAPSHOT_END
0x08 - A bitmask to get snapshot end indicator from the value of eventFlags property.
Definition IndexedEvent.hpp:57
virtual std::int32_t getEventFlags() const noexcept=0
Returns transactional event flags.
static const EventFlag SNAPSHOT_MODE
0x40 - A bitmask to set snapshot mode indicator into the value of eventFlags property.
Definition IndexedEvent.hpp:63
static const EventFlag SNAPSHOT_SNIP
0x10 - A bitmask to get snapshot snip indicator from the value of eventFlags property.
Definition IndexedEvent.hpp:60
static const EventFlag REMOVE_EVENT
0x02 - A bitmask to get removal indicator from the value of eventFlags property.
Definition IndexedEvent.hpp:51
virtual void setIndex(std::int64_t index)=0
Changes unique per-symbol index of this event.
static const EventFlag SNAPSHOT_BEGIN
0x04 - A bitmask to get snapshot begin indicator from the value of eventFlags property.
Definition IndexedEvent.hpp:54
virtual void setEventFlags(std::int32_t eventFlags) noexcept=0
Changes transactional event flags.
virtual void setEventFlags(const EventFlagsMask &eventFlags) noexcept=0
Changes transactional event flags.
Thrown to indicate that a method has been passed an illegal or inappropriate argument.
Definition InvalidArgumentException.hpp:18
A wrapper over the interceptable Java exceptions thrown by the dxFeed Native Graal SDK.
Definition JavaException.hpp:20
static void throwIfJavaThreadExceptionExists()
Throws a JavaException if it exists (i.e. intercepted by Graal SDK)
Definition JavaException.cpp:31
static JavaException create(void *exceptionHandle)
Creates an exception using native (GraalVM) Java exception handle.
Definition JavaException.cpp:21
JavaException(const StringLike &message, const StringLike &className, const StringLike &stackTrace)
Creates an exception using Java message, className and stack trace.
Definition JavaException.cpp:13
Represents up-to-date information about some condition or state of an external entity that updates in...
Definition LastingEvent.hpp:28
Helper class to compose and parse symbols for market events.
Definition MarketEventSymbols.hpp:39
static bool hasExchangeCode(const StringLike &symbol) noexcept
Returns true if the specified symbol has the exchange code specification.
Definition MarketEventSymbols.hpp:46
static char getExchangeCode(const StringLike &symbol) noexcept
Returns exchange code of the specified symbol or ‘’\0'` if none is defined.
Definition MarketEventSymbols.hpp:56
static std::optional< std::string > getAttributeStringByKey(const StringLike &symbol, const StringLike &key) noexcept
Returns value of the attribute with the specified key.
Definition MarketEventSymbols.hpp:109
static std::string removeAttributeStringByKey(const StringLike &symbol, const StringLike &key) noexcept
Removes one attribute with the specified key while leaving exchange code and other attributes intact.
Definition MarketEventSymbols.hpp:139
static std::string changeAttributeStringByKey(const StringLike &symbol, const StringLike &key, const StringLike &value) noexcept
Changes the value of one attribute value while leaving exchange code and other attributes intact.
Definition MarketEventSymbols.hpp:123
static std::string getBaseSymbol(const StringLike &symbol) noexcept
Returns base symbol without exchange code and attributes.
Definition MarketEventSymbols.hpp:81
static std::string changeExchangeCode(const StringLike &symbol, char exchangeCode) noexcept
Changes exchange code of the specified symbol or removes it if the new exchange code is ‘’\0'`.
Definition MarketEventSymbols.hpp:68
static std::string changeBaseSymbol(const StringLike &symbol, const StringLike &baseSymbol) noexcept
Changes base symbol while leaving exchange code and attributes intact.
Definition MarketEventSymbols.hpp:91
Base class for all market events.
Definition MarketEvent.hpp:24
void setEventTime(std::int64_t eventTime) noexcept override
Changes event creation time.
Definition MarketEvent.cpp:76
MarketEvent(const StringLike &eventSymbol) noexcept
Protected constructor for concrete implementation classes that initializes eventSymbol property.
Definition MarketEvent.cpp:13
const std::string & getEventSymbol() const &noexcept override
Returns a symbol of this event.
Definition MarketEvent.cpp:55
std::int64_t getEventTime() const noexcept override
Returns time when an event was created or zero when time is not available.
Definition MarketEvent.cpp:72
const std::optional< std::string > & getEventSymbolOpt() const &noexcept override
Returns a symbol of this event.
Definition MarketEvent.cpp:63
void assign(std::shared_ptr< EventType > event) override
Replaces the contents of the event.
Definition MarketEvent.cpp:48
void setEventSymbol(const StringLike &eventSymbol) noexcept override
Changes symbol of this event.
Definition MarketEvent.cpp:67
The listener interface for receiving notifications on the changes of observed subscription.
Definition ObservableSubscriptionChangeListener.hpp:23
static std::shared_ptr< ObservableSubscriptionChangeListener > create(std::function< void(const std::unordered_set< SymbolWrapper > &symbols)> onSymbolsAdded)
Creates a listener that will notify the callback about added symbols.
Definition ObservableSubscriptionChangeListener.cpp:69
static std::shared_ptr< ObservableSubscriptionChangeListener > create(std::function< void(const std::unordered_set< SymbolWrapper > &symbols)> onSymbolsAdded, std::function< void(const std::unordered_set< SymbolWrapper > &symbols)> onSymbolsRemoved, std::function< void()> onSubscriptionClosed)
Creates a listener that will notify callbacks about events of adding and deleting symbols,...
Definition ObservableSubscriptionChangeListener.cpp:86
Observable set of subscription symbols.
Definition ObservableSubscription.hpp:21
virtual std::size_t addChangeListener(std::shared_ptr< ObservableSubscriptionChangeListener > listener)=0
Adds subscription change listener.
virtual bool containsEventType(const EventTypeEnum &eventType)=0
Returns true if this subscription contains the corresponding event type.
virtual void removeChangeListener(std::size_t id)=0
Removes subscription change listener by id.
virtual bool isClosed()=0
virtual std::unordered_set< EventTypeEnum > getEventTypes()=0
Provides on-demand historical tick data replay controls.
Definition OnDemandService.hpp:71
Action enum for the Full Order Book (FOB) Orders.
Definition OrderAction.hpp:21
static const DXFCPP_EXPORT OrderAction TRADE
Non-Book Trade - this Trade not refers to any entry in Order Book.
Definition OrderAction.hpp:19
static const DXFCPP_EXPORT OrderAction EXECUTE
Order is fully executed and removed from the Order Book.
Definition OrderAction.hpp:18
static const DXFCPP_EXPORT OrderAction BUST
Prior Trade/Order Execution bust.
Definition OrderAction.hpp:20
static const DXFCPP_EXPORT OrderAction PARTIAL
Size is changed (usually reduced) due to partial order execution.
Definition OrderAction.hpp:17
static const DXFCPP_EXPORT OrderAction REPLACE
Order is modified, and price-time-priority is not maintained (i.e.
Definition OrderAction.hpp:14
static const DXFCPP_EXPORT OrderAction MODIFY
Order is modified without changing its price-time-priority (usually due to partial cancel by the user...
Definition OrderAction.hpp:15
static const DXFCPP_EXPORT OrderAction DELETE
Order is fully canceled and removed from Order Book.
Definition OrderAction.hpp:16
static const DXFCPP_EXPORT OrderAction NEW
New Order is added to Order Book.
Definition OrderAction.hpp:13
static const DXFCPP_EXPORT OrderAction UNDEFINED
Default enum value for orders that do not support "Full Order Book" and for backward compatibility - ...
Definition OrderAction.hpp:12
Type of prices on the OTC Markets.
Definition OtcMarketsPriceType.hpp:22
static const DXFCPP_EXPORT OtcMarketsPriceType WANTED
Offer Wanted/Bid Wanted (OW/BW) is used to solicit sellers/buyers, without displaying actual price or...
Definition OtcMarketsPriceType.hpp:13
static const DXFCPP_EXPORT OtcMarketsPriceType UNPRICED
Unpriced quotes are an indication of interest (IOI) in a security used when a trader does not wish to...
Definition OtcMarketsPriceType.hpp:11
static const DXFCPP_EXPORT OtcMarketsPriceType ACTUAL
Actual (Priced) is the actual amount a trader is willing to buy or sell securities.
Definition OtcMarketsPriceType.hpp:12
Type of the price value.
Definition PriceType.hpp:19
static const DXFCPP_EXPORT PriceType PRELIMINARY
Preliminary price (preliminary settlement price), usually posted prior to PriceType::FINAL price.
Definition PriceType.hpp:13
static const DXFCPP_EXPORT PriceType FINAL
Final price (final settlement price).
Definition PriceType.hpp:14
static const DXFCPP_EXPORT PriceType REGULAR
Regular price.
Definition PriceType.hpp:11
static const DXFCPP_EXPORT PriceType INDICATIVE
Indicative price (derived via math formula).
Definition PriceType.hpp:12
A list of event receiving results that will be completed normally or exceptionally in the future.
Definition Promise.hpp:435
Result of a computation that will be completed normally or exceptionally in the future.
Definition Promise.hpp:351
A class that represents a promise-based implementation often used for handling asynchronous operation...
Definition Promises.hpp:41
A helper class needed to construct smart pointers to objects and does not allow explicit construction...
Definition SharedEntity.hpp:88
static auto createShared(Args &&...args)
Creates a smart pointer to an object.
Definition SharedEntity.hpp:102
A runtime axception with stacktrace.
Definition RuntimeException.hpp:20
const std::string & getStackTrace() const &
Definition RuntimeException.cpp:83
RuntimeException(const StringLike &message, const StringLike &additionalStackTrace="")
Constructs a runtime exception.
Definition RuntimeException.cpp:67
Scope of an order.
Definition Scope.hpp:21
static const DXFCPP_EXPORT Scope AGGREGATE
Represents aggregate information for a given price level or best bid or the best offer for a given ma...
Definition Scope.hpp:13
static const DXFCPP_EXPORT Scope ORDER
Represents individual order on the market.
Definition Scope.hpp:14
static const DXFCPP_EXPORT Scope COMPOSITE
Represents the best bid or the best offer for the whole market.
Definition Scope.hpp:11
static const DXFCPP_EXPORT Scope REGIONAL
Represents the best bid or the best offer for a given exchange code.
Definition Scope.hpp:12
static const SessionFilter TRADING
Accepts trading sessions only - those with (Session::isTrading() == true).
Definition SessionFilter.hpp:122
static const SessionFilter ANY
Accepts any session - useful for pure schedule navigation.
Definition SessionFilter.hpp:121
SessionFilter(SessionFilterEnum code, const StringLike &name, std::optional< SessionType > type, std::optional< bool > trading) noexcept
Creates a filter with specified type and trading flag conditions.
Definition CandleSession.cpp:52
static const SessionFilter AFTER_MARKET
Accepts any session with type SessionType::AFTER_MARKET.
Definition SessionFilter.hpp:130
static const SessionFilter REGULAR
Accepts any session with type SessionType::REGULAR.
Definition SessionFilter.hpp:129
static const SessionFilter NO_TRADING
Accepts any session with type SessionType::NO_TRADING.
Definition SessionFilter.hpp:125
static const SessionFilter NON_TRADING
Accepts non-trading sessions only - those with (Session::isTrading() == false).
Definition SessionFilter.hpp:123
static const SessionFilter PRE_MARKET
Accepts any session with type SessionType::PRE_MARKET.
Definition SessionFilter.hpp:127
bool accept(Session session) const noexcept
Tests whether or not the specified session is an acceptable result.
Definition SessionFilter.hpp:104
std::optional< bool > trading_
Required trading flag, std::nullopt if not relevant.
Definition SessionFilter.hpp:70
std::optional< SessionType > type_
Required type, std::nullopt if not relevant.
Definition SessionFilter.hpp:68
Defines type of session - what kind of trading activity is allowed (if any), what rules are used,...
Definition SessionType.hpp:33
static const SessionType AFTER_MARKET
After-market session type marks extended trading session after regular trading hours.
Definition SessionType.hpp:117
static const SessionType PRE_MARKET
Pre-market session type marks extended trading session before regular trading hours.
Definition SessionType.hpp:115
static const SessionType REGULAR
Regular session type marks regular trading hours session.
Definition SessionType.hpp:116
static const SessionType NO_TRADING
Non-trading session type is used to mark periods of time during which trading is not allowed.
Definition SessionType.hpp:114
bool isTrading() const noexcept
Returns true if trading activity is allowed for this type of session.
Definition CandleSession.cpp:34
A base abstract "shared entity" class. Has some helpers for dynamic polymorphism.
Definition SharedEntity.hpp:20
virtual std::string toString() const
Returns a string representation of the current object.
Definition SharedEntity.hpp:77
std::shared_ptr< T > sharedAs() const noexcept
Returns a pointer to the current object wrapped in a smart pointer to type T.
Definition SharedEntity.hpp:68
std::shared_ptr< T > sharedAs() noexcept
Returns a pointer to the current object wrapped in a smart pointer to type T.
Definition SharedEntity.hpp:55
bool is() const noexcept
Checks that the pointer to the current type could be converted to type T* In other words: whether typ...
Definition SharedEntity.hpp:34
Short sale restriction on an instrument.
Definition ShortSaleRestriction.hpp:21
static const DXFCPP_EXPORT ShortSaleRestriction INACTIVE
Short sale restriction is inactive.
Definition ShortSaleRestriction.hpp:13
static const DXFCPP_EXPORT ShortSaleRestriction UNDEFINED
Short sale restriction is undefined, unknown or inapplicable.
Definition ShortSaleRestriction.hpp:11
static const DXFCPP_EXPORT ShortSaleRestriction ACTIVE
Short sale restriction is active.
Definition ShortSaleRestriction.hpp:12
Side of an order or a trade.
Definition Side.hpp:21
static const DXFCPP_EXPORT Side SELL
Sell side (ask or offer).
Definition Side.hpp:13
static const DXFCPP_EXPORT Side UNDEFINED
Side is undefined, unknown or inapplicable.
Definition Side.hpp:11
static const DXFCPP_EXPORT Side BUY
Buy side (bid).
Definition Side.hpp:12
std::size_t operator+=(ListenerType &&listener)
Adds the listener to "main" group.
Definition Handler.hpp:379
void remove(std::size_t id)
Removes a listener by the id.
Definition Handler.hpp:399
void handle(ArgTypes... args)
Calls the listeners and pass the args to them.
Definition Handler.hpp:317
void operator()(ArgTypes... args)
Calls the listeners and pass the ars to them.
Definition Handler.hpp:328
std::size_t addLowPriority(ListenerType &&listener)
Adds the low priority listener (to the "low priority" group) It will be called after the "main" liste...
Definition Handler.hpp:359
void operator-=(std::size_t id)
Removes a listener by the id.
Definition Handler.hpp:418
std::size_t operator%=(ListenerType &&listener)
Adds the low priority listener (to the "low priority" group).
Definition Handler.hpp:390
SimpleHandler() noexcept
Creates the new handler.
Definition Handler.hpp:289
std::size_t add(ListenerType &&listener)
Adds the listener to "main" group.
Definition Handler.hpp:338
Universal functional object that allows searching std::unordered_map for string-like keys.
Definition Common.hpp:959
Universal functional object that allows searching std::unordered_map for string-like keys.
Definition StringUtils.hpp:171
A simple wrapper around strings or something similar to strings to reduce the amount of code for meth...
Definition Common.hpp:842
A lightweight wrapper around strings or string-like inputs.
Definition StringUtils.hpp:27
StringSymbol(std::string_view stringView) noexcept
Constructs StringSymbol from a std::string_view.
Definition StringSymbol.hpp:55
StringSymbol(const char *chars) noexcept
Constructs StringSymbol from a char array.
Definition StringSymbol.hpp:40
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition StringSymbol.cpp:56
std::string toString() const
Returns a string representation of the current object.
Definition StringSymbol.hpp:105
static StringSymbol fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition StringSymbol.cpp:72
void * toGraal() const
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition StringSymbol.cpp:45
std::optional< CandleSymbol > asCandleSymbol() const noexcept
Definition SymbolWrapper.hpp:381
SymbolWrapper(Symbol &&symbol) noexcept
Constructor for any wrapped symbol.
Definition SymbolWrapper.hpp:157
bool isIndexedEventSubscriptionSymbol() const noexcept
Definition SymbolWrapper.hpp:339
std::string toString() const
Returns a string representation of the current object.
Definition SymbolWrapper.hpp:285
static SymbolWrapper fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition SymbolWrapper.cpp:86
std::string toStringUnderlying() const
Returns a string representation of the underlying object.
Definition SymbolWrapper.hpp:300
std::unique_ptr< void, decltype(&SymbolWrapper::freeGraal)> toGraalUnique() const noexcept
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition SymbolWrapper.hpp:276
bool isStringSymbol() const noexcept
Definition SymbolWrapper.hpp:311
std::optional< IndexedEventSubscriptionSymbol > asIndexedEventSubscriptionSymbol() const noexcept
Definition SymbolWrapper.hpp:347
bool isWildcardSymbol() const noexcept
Definition SymbolWrapper.hpp:325
void * toGraal() const noexcept
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition SymbolWrapper.hpp:257
SymbolWrapper(const IndexedEventSubscriptionSymbol &indexedEventSubscriptionSymbol) noexcept
Constructor for IndexedEventSubscriptionSymbol.
Definition SymbolWrapper.hpp:196
const DataType & getData() const noexcept
Definition SymbolWrapper.hpp:388
std::string asStringSymbol() const noexcept
Definition SymbolWrapper.hpp:318
SymbolWrapper(const StringSymbol &stringSymbol) noexcept
Constructor for any wrapped string symbol.
Definition SymbolWrapper.hpp:170
std::optional< WildcardSymbol > asWildcardSymbol() const noexcept
Definition SymbolWrapper.hpp:332
SymbolWrapper(const CandleSymbol &candleSymbol) noexcept
Constructor for CandleSymbol.
Definition SymbolWrapper.hpp:224
SymbolWrapper(const WildcardSymbol &wildcardSymbol) noexcept
Constructor for any wrapped wildcard (*) symbol.
Definition SymbolWrapper.hpp:183
bool isTimeSeriesSubscriptionSymbol() const noexcept
Definition SymbolWrapper.hpp:356
SymbolWrapper(const TimeSeriesSubscriptionSymbol &timeSeriesSubscriptionSymbol) noexcept
Constructor for TimeSeriesSubscriptionSymbol.
Definition SymbolWrapper.hpp:210
bool isCandleSymbol() const noexcept
Definition SymbolWrapper.hpp:373
std::optional< TimeSeriesSubscriptionSymbol > asTimeSeriesSubscriptionSymbol() const noexcept
Definition SymbolWrapper.hpp:364
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition SymbolWrapper.cpp:48
Type of a time and sale event.
Definition TimeAndSaleType.hpp:21
static const DXFCPP_EXPORT TimeAndSaleType NEW
Represents new time and sale event.
Definition TimeAndSaleType.hpp:11
static const DXFCPP_EXPORT TimeAndSaleType CANCEL
Represents cancel time and sale event.
Definition TimeAndSaleType.hpp:13
static const DXFCPP_EXPORT TimeAndSaleType CORRECTION
Represents correction time and sale event.
Definition TimeAndSaleType.hpp:12
Value class for a period of time with support for ISO8601 duration format.
Definition TimePeriod.hpp:21
static TimePeriod valueOf(const StringLike &value)
Returns TimePeriod represented with a given string.
Definition TimePeriod.cpp:24
static TimePeriod valueOf(std::chrono::milliseconds value)
Returns TimePeriod with value milliseconds.
Definition TimePeriod.hpp:44
std::int64_t getNanos() const
Returns value in nanoseconds.
Definition TimePeriod.cpp:44
static const TimePeriod ZERO
Time-period of zero.
Definition TimePeriod.hpp:25
std::int32_t getSeconds() const
Returns value in seconds.
Definition TimePeriod.cpp:36
std::int64_t getTime() const
Returns value in milliseconds.
Definition TimePeriod.cpp:28
static const TimePeriod UNLIMITED
Time-period of "infinity" (time of std::numeric_limits<std::int64_t>::max() or LLONG_MAX).
Definition TimePeriod.hpp:28
static TimePeriod valueOf(std::int64_t value)
Returns TimePeriod with value milliseconds.
Definition TimePeriod.cpp:20
Represents time-series snapshots of some process that is evolving in time or actual events in some ex...
Definition TimeSeriesEvent.hpp:81
const IndexedEventSource & getSource() const &noexcept override
Returns the source identifier for this event, which is always DEFAULT for time-series events.
Definition TimeSeriesEvent.hpp:92
std::int64_t getIndex() const noexcept override
Returns unique per-symbol index of this event.
Definition TimeSeriesEvent.hpp:113
virtual std::int64_t getTime() const noexcept=0
Returns timestamp of the event.
virtual std::int64_t getEventId() const noexcept
Returns unique per-symbol index of this event.
Definition TimeSeriesEvent.hpp:123
Trading status of an instrument.
Definition TradingStatus.hpp:21
static const DXFCPP_EXPORT TradingStatus UNDEFINED
Trading status is undefined, unknown or inapplicable.
Definition TradingStatus.hpp:11
static const DXFCPP_EXPORT TradingStatus HALTED
Trading is halted.
Definition TradingStatus.hpp:12
static const DXFCPP_EXPORT TradingStatus ACTIVE
Trading is active.
Definition TradingStatus.hpp:13
Mixin for wrapping Promise method calls for a void.
Definition Promise.hpp:178
void await(std::int32_t timeoutInMilliseconds) const &
Wait for the computation to complete or timeout and return its result or throw an exception in case o...
Definition Promise.hpp:210
void await(const std::chrono::milliseconds &timeoutInMilliseconds) const &
Wait for the computation to complete or timeout and return its result or throw an exception in case o...
Definition Promise.hpp:225
void await() const
Wait for the computation to complete and return its result or throw an exception in case of exception...
Definition Promise.hpp:195
void getResult() const
Returns result of computation.
Definition Promise.hpp:185
static void freeGraal(void *graalNative)
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
Definition WildcardSymbol.cpp:43
static const WildcardSymbol & fromGraal(void *graalNative)
Creates an object of the current type and fills it with data from the dxFeed Graal SDK structure.
Definition WildcardSymbol.cpp:49
void * toGraal() const noexcept
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Definition WildcardSymbol.cpp:33
static const WildcardSymbol ALL
Represents [wildcard] subscription to all events of the specific event type.
Definition WildcardSymbol.hpp:12
std::string toString() const
Returns string representation of this wildcard subscription symbol.
Definition WildcardSymbol.cpp:57
static const std::string RESERVED_PREFIX
Symbol prefix that is reserved for wildcard subscriptions.
Definition WildcardSymbol.hpp:27
The simple key-value structure that represents an endpoint's property.
Definition api.h:184
const char * key
The property's key.
Definition api.h:186
const char * value
The property's value.
Definition api.h:188