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"
21#include "shared_ptr.h"
22#include "consts.h"
23#include <math.h>
24
25namespace ttsdk
26{
27
29 {
31 {
32 double size = NAN;
33 double max_size = NAN;
34 };
36 {
37 double position = NAN;
38 double max_position = NAN;
39 };
41 {
42 double position = NAN;
43 double max_position = NAN;
44 };
46 {
47 double position = NAN;
48 double max_position = NAN;
49 };
51 {
52 double long_short = NAN;
53 double max_long_short = NAN;
54 };
56 {
57 double max_credit = NAN;
58 double cost = NAN;
59 };
61 {
62 double deviation = NAN;
63 double max_deviation = NAN;
64 double percent_deviation = NAN;
66 };
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 };
76 {
77 REJECT_ID_NONE = 0, // Not set
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.
84 };
85
86 // tells what kind of reject this was
88
89 // these fields are set if the reject is because of the limits on a given
90 // user/user group/account
92 uint64_t 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.
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
113 };
114
115
116}
#define U64NAN
Definition consts.h:20
ExceedsMaxInstrumentPosition exceeds_max_instrument_position