TT CORE SDK
2.0.1.1
TT CORE SDK documentation
Loading...
Searching...
No Matches
extended_rejection_information.h
Go to the documentation of this file.
1
/***************************************************************************
2
*
3
* Unpublished Work Copyright (c) 2018-2020
4
* Trading Technologies International, Inc.
5
* All Rights Reserved Worldwide
6
*
7
* * * * S T R I C T L Y P R O P R I E T A R Y * * *
8
*
9
* WARNING: This program (or document) is unpublished, proprietary property
10
* of Trading Technologies International, Inc. and is to be maintained in
11
* strict confidence. Unauthorized reproduction, distribution or disclosure
12
* of this program (or document), or any program (or document) derived from
13
* it is prohibited by State and Federal law, and by local law outside of
14
* the U.S.
15
*
16
***************************************************************************/
17
#pragma once
18
19
#include "
enums/RejectCode.h
"
20
#include "
enums/OrderRejectReason.h
"
21
#include "
shared_ptr.h
"
22
#include "
consts.h
"
23
#include <math.h>
24
25
namespace
ttsdk
26
{
27
28
struct
ExtendedRejectionInformation
29
{
30
struct
ExceedsMaxOrderSize
31
{
32
double
size
= NAN;
33
double
max_size
= NAN;
34
};
35
struct
ExceedsMaxFamilyPosition
36
{
37
double
position
= NAN;
38
double
max_position
= NAN;
39
};
40
struct
ExceedsMaxProductPosition
41
{
42
double
position
= NAN;
43
double
max_position
= NAN;
44
};
45
struct
ExceedsMaxInstrumentPosition
46
{
47
double
position
= NAN;
48
double
max_position
= NAN;
49
};
50
struct
ExceedsLongShort
51
{
52
double
long_short
= NAN;
53
double
max_long_short
= NAN;
54
};
55
struct
ExceedsMaxCredit
56
{
57
double
max_credit
= NAN;
58
double
cost
= NAN;
59
};
60
struct
ExceedsPriceReasonability
61
{
62
double
deviation
= NAN;
63
double
max_deviation
= NAN;
64
double
percent_deviation
= NAN;
65
double
max_percent_deviation
= NAN;
66
};
67
enum
NoConnectionReason
68
{
69
NONE
= 0,
// Not set
70
UNSUPPORTED_MARKET
= 1,
// Routing to this market is not supported
71
NO_MATCHING_TYPE
= 2,
// No valid connection type could be found
72
UNAVAILABLE
= 3,
// A valid connection was found, but is currently unavailable
73
NO_RESPONSE_SOURCE
= 4
// A valid connection was found, but source/sender doesn't exist
74
};
75
enum
RejectIdType
76
{
77
REJECT_ID_NONE
= 0,
// Not set
78
REJECT_ID_TYPE_ACCOUNT
= 1,
79
REJECT_ID_TYPE_USER
= 2,
80
REJECT_ID_TYPE_USER_GROUP
= 3,
81
// Reject was on an account-user relationship field. reject_id will be the
82
// account id and secondary_reject_id will be the user id.
83
REJECT_ID_TYPE_ACCOUNT_USER
= 4
84
};
85
86
// tells what kind of reject this was
87
ttsdk::RejectCode
code
=
ttsdk::RejectCode::NotSet
;
88
89
// these fields are set if the reject is because of the limits on a given
90
// user/user group/account
91
RejectIdType
reject_id_type
=
RejectIdType::REJECT_ID_NONE
;
92
uint64_t
reject_id
=
U64NAN
;
93
uint64_t
secondary_reject_id
=
U64NAN
;
94
95
// Identifies the leg which violated the limit (spread contracts only).
96
// This is sort of a tricky one. It is only set on contract-level leg
97
// limit violations with one exception for inter-product spreads. If there
98
// is a product-level limit violation for an inter-product spread, then
99
// this field will be populated with the leg who's product limit was
100
// violated.
101
uint64_t
leg_instrument_id
=
U64NAN
;
102
103
// these fields are set for certain codes to provide additional information
104
// on the reject, the name of the field corresponds to the code name
105
ExceedsMaxOrderSize
exceeds_max_order_size
;
106
ExceedsMaxFamilyPosition
exceeds_max_family_position
;
107
ExceedsMaxProductPosition
exceeds_max_product_position
;
108
ExceedsMaxInstrumentPosition
exceeds_max_instrument_position
;
109
ExceedsMaxCredit
exceeds_max_credit
;
110
ExceedsLongShort
exceeds_long_short
;
111
ExceedsPriceReasonability
exceeds_price_reasonability
;
112
NoConnectionReason
no_connection
=
NoConnectionReason::NONE
;
113
};
114
115
116
}
OrderRejectReason.h
RejectCode.h
consts.h
U64NAN
#define U64NAN
Definition
consts.h:20
ttsdk
Definition
account.h:21
ttsdk::RejectCode
RejectCode
Definition
RejectCode.h:29
ttsdk::RejectCode::NotSet
@ NotSet
shared_ptr.h
ttsdk::ExtendedRejectionInformation::ExceedsLongShort
Definition
extended_rejection_information.h:51
ttsdk::ExtendedRejectionInformation::ExceedsLongShort::long_short
double long_short
Definition
extended_rejection_information.h:52
ttsdk::ExtendedRejectionInformation::ExceedsLongShort::max_long_short
double max_long_short
Definition
extended_rejection_information.h:53
ttsdk::ExtendedRejectionInformation::ExceedsMaxCredit
Definition
extended_rejection_information.h:56
ttsdk::ExtendedRejectionInformation::ExceedsMaxCredit::max_credit
double max_credit
Definition
extended_rejection_information.h:57
ttsdk::ExtendedRejectionInformation::ExceedsMaxCredit::cost
double cost
Definition
extended_rejection_information.h:58
ttsdk::ExtendedRejectionInformation::ExceedsMaxFamilyPosition
Definition
extended_rejection_information.h:36
ttsdk::ExtendedRejectionInformation::ExceedsMaxFamilyPosition::max_position
double max_position
Definition
extended_rejection_information.h:38
ttsdk::ExtendedRejectionInformation::ExceedsMaxFamilyPosition::position
double position
Definition
extended_rejection_information.h:37
ttsdk::ExtendedRejectionInformation::ExceedsMaxInstrumentPosition
Definition
extended_rejection_information.h:46
ttsdk::ExtendedRejectionInformation::ExceedsMaxInstrumentPosition::position
double position
Definition
extended_rejection_information.h:47
ttsdk::ExtendedRejectionInformation::ExceedsMaxInstrumentPosition::max_position
double max_position
Definition
extended_rejection_information.h:48
ttsdk::ExtendedRejectionInformation::ExceedsMaxOrderSize
Definition
extended_rejection_information.h:31
ttsdk::ExtendedRejectionInformation::ExceedsMaxOrderSize::max_size
double max_size
Definition
extended_rejection_information.h:33
ttsdk::ExtendedRejectionInformation::ExceedsMaxOrderSize::size
double size
Definition
extended_rejection_information.h:32
ttsdk::ExtendedRejectionInformation::ExceedsMaxProductPosition
Definition
extended_rejection_information.h:41
ttsdk::ExtendedRejectionInformation::ExceedsMaxProductPosition::max_position
double max_position
Definition
extended_rejection_information.h:43
ttsdk::ExtendedRejectionInformation::ExceedsMaxProductPosition::position
double position
Definition
extended_rejection_information.h:42
ttsdk::ExtendedRejectionInformation::ExceedsPriceReasonability
Definition
extended_rejection_information.h:61
ttsdk::ExtendedRejectionInformation::ExceedsPriceReasonability::max_percent_deviation
double max_percent_deviation
Definition
extended_rejection_information.h:65
ttsdk::ExtendedRejectionInformation::ExceedsPriceReasonability::deviation
double deviation
Definition
extended_rejection_information.h:62
ttsdk::ExtendedRejectionInformation::ExceedsPriceReasonability::percent_deviation
double percent_deviation
Definition
extended_rejection_information.h:64
ttsdk::ExtendedRejectionInformation::ExceedsPriceReasonability::max_deviation
double max_deviation
Definition
extended_rejection_information.h:63
ttsdk::ExtendedRejectionInformation
Definition
extended_rejection_information.h:29
ttsdk::ExtendedRejectionInformation::exceeds_max_family_position
ExceedsMaxFamilyPosition exceeds_max_family_position
Definition
extended_rejection_information.h:106
ttsdk::ExtendedRejectionInformation::leg_instrument_id
uint64_t leg_instrument_id
Definition
extended_rejection_information.h:101
ttsdk::ExtendedRejectionInformation::no_connection
NoConnectionReason no_connection
Definition
extended_rejection_information.h:112
ttsdk::ExtendedRejectionInformation::reject_id_type
RejectIdType reject_id_type
Definition
extended_rejection_information.h:91
ttsdk::ExtendedRejectionInformation::reject_id
uint64_t reject_id
Definition
extended_rejection_information.h:92
ttsdk::ExtendedRejectionInformation::NoConnectionReason
NoConnectionReason
Definition
extended_rejection_information.h:68
ttsdk::ExtendedRejectionInformation::NO_RESPONSE_SOURCE
@ NO_RESPONSE_SOURCE
Definition
extended_rejection_information.h:73
ttsdk::ExtendedRejectionInformation::UNAVAILABLE
@ UNAVAILABLE
Definition
extended_rejection_information.h:72
ttsdk::ExtendedRejectionInformation::NO_MATCHING_TYPE
@ NO_MATCHING_TYPE
Definition
extended_rejection_information.h:71
ttsdk::ExtendedRejectionInformation::UNSUPPORTED_MARKET
@ UNSUPPORTED_MARKET
Definition
extended_rejection_information.h:70
ttsdk::ExtendedRejectionInformation::NONE
@ NONE
Definition
extended_rejection_information.h:69
ttsdk::ExtendedRejectionInformation::RejectIdType
RejectIdType
Definition
extended_rejection_information.h:76
ttsdk::ExtendedRejectionInformation::REJECT_ID_TYPE_ACCOUNT_USER
@ REJECT_ID_TYPE_ACCOUNT_USER
Definition
extended_rejection_information.h:83
ttsdk::ExtendedRejectionInformation::REJECT_ID_TYPE_USER
@ REJECT_ID_TYPE_USER
Definition
extended_rejection_information.h:79
ttsdk::ExtendedRejectionInformation::REJECT_ID_NONE
@ REJECT_ID_NONE
Definition
extended_rejection_information.h:77
ttsdk::ExtendedRejectionInformation::REJECT_ID_TYPE_ACCOUNT
@ REJECT_ID_TYPE_ACCOUNT
Definition
extended_rejection_information.h:78
ttsdk::ExtendedRejectionInformation::REJECT_ID_TYPE_USER_GROUP
@ REJECT_ID_TYPE_USER_GROUP
Definition
extended_rejection_information.h:80
ttsdk::ExtendedRejectionInformation::exceeds_long_short
ExceedsLongShort exceeds_long_short
Definition
extended_rejection_information.h:110
ttsdk::ExtendedRejectionInformation::code
ttsdk::RejectCode code
Definition
extended_rejection_information.h:87
ttsdk::ExtendedRejectionInformation::exceeds_max_instrument_position
ExceedsMaxInstrumentPosition exceeds_max_instrument_position
Definition
extended_rejection_information.h:108
ttsdk::ExtendedRejectionInformation::exceeds_price_reasonability
ExceedsPriceReasonability exceeds_price_reasonability
Definition
extended_rejection_information.h:111
ttsdk::ExtendedRejectionInformation::exceeds_max_order_size
ExceedsMaxOrderSize exceeds_max_order_size
Definition
extended_rejection_information.h:105
ttsdk::ExtendedRejectionInformation::secondary_reject_id
uint64_t secondary_reject_id
Definition
extended_rejection_information.h:93
ttsdk::ExtendedRejectionInformation::exceeds_max_credit
ExceedsMaxCredit exceeds_max_credit
Definition
extended_rejection_information.h:109
ttsdk::ExtendedRejectionInformation::exceeds_max_product_position
ExceedsMaxProductPosition exceeds_max_product_position
Definition
extended_rejection_information.h:107
Header Files
extended_rejection_information.h
Generated by
1.10.0