TT CORE SDK  0.1
TT CORE SDK documentation
tt_core_sdk Namespace Reference

Classes

struct  Account
 Account definition. More...
 
struct  change_request
 POD definition of an order change request. More...
 
struct  Connection
 User connections. More...
 
struct  download_failed_response
 Response delivered through OrderEventListener. More...
 
struct  execution_report_response
 Response delivered through OrderEventListener. More...
 
class  ExecutionReport
 Outbound order message receipt. More...
 
struct  fill_download_response
 Response delivered through OrderEventListener. More...
 
struct  fill_receipt
 
class  Instrument
 Definition of a contract on an exchange. More...
 
struct  MarketData
 User market data permissions. More...
 
struct  order_cancel_reject_response
 Response delivered through OrderEventListener. More...
 
struct  order_profile
 POD definition of an order to provide when submitting. More...
 
struct  order_timeout_response
 Response delivered through OrderEventListener. More...
 
struct  orderbook_download_response
 Response delivered through OrderEventListener. More...
 
class  OrderCancelReject
 Message receipt issued when a cancel or cancel/replace is rejected. More...
 
class  OrderEventListener
 Interface for listening to order events. More...
 
class  OrderHandle
 Represents the current state of the order. More...
 
class  OrderManager
 Manages a set of orders and delivers order notifications. More...
 
struct  position_download_response
 
struct  price_sub_key
 Internal use. More...
 
class  PriceEventListener
 Interface for listening to price subscription events. More...
 
struct  PriceSnap
 Price update data. More...
 
class  PriceSubscription
 Manages a price subscription. More...
 
struct  request_failed_response
 Response delivered through OrderEventListener. More...
 
struct  TimeSale
 Time and Sales update data. More...
 
struct  User
 User definition. More...
 

Typedefs

using Filter = std::bitset< 30 >
 Bitmask specifying which price updates trigger event notifications. More...
 

Enumerations

enum  instr_state : uint8_t { instr_state::DELETED = 1, instr_state::INACTIVE = 2, instr_state::ACTIVE = 4 }
 
enum  rounding { rounding::NONE, rounding::UP, rounding::DOWN, rounding::NEAREST }
 
enum  time_in_force {
  time_in_force::DAY = 1, time_in_force::GOOD_TILL_CANCEL = 2, time_in_force::AT_THE_OPENING = 3, time_in_force::IMMEDIATE_OR_CANCEL = 4,
  time_in_force::FILL_OR_KILL = 5, time_in_force::GOOD_TILL_CROSSING = 6, time_in_force::GOOD_TILL_DATE = 7, time_in_force::AT_THE_CLOSE = 8,
  time_in_force::GOOD_THROUGH_CROSSING = 9, time_in_force::AT_CROSSING = 10, time_in_force::GOOD_IN_SESSION = 14
}
 
enum  order_type {
  order_type::MARKET = 1, order_type::LIMIT = 2, order_type::STOP = 3, order_type::STOP_LIMIT = 4,
  order_type::MLM = 21
}
 
enum  order_side { order_side::BUY = 1, order_side::SELL = 2 }
 
enum  market : uint32_t {
  market::SYNTHETIC = 0, market::XETRA = 1, market::EUREX = 2, market::NYSE_LIFFE = 3,
  market::LSE = 4, market::OM = 5, market::CBOT = 6, market::CME = 7,
  market::CFFE = 8, market::SEHK = 9, market::ENXTFUT = 10, market::ENXTOPT = 11,
  market::SYCOM = 12, market::NQLX = 13, market::GARBAN = 15, market::LIFFE_EO = 16,
  market::ISE = 18, market::INSTINET = 19, market::NASDAQ = 20, market::BTECFUTURES = 21,
  market::BTEC = 22, market::ISLAND = 23, market::SFE = 24, market::EUREXUS = 25,
  market::CBOE = 26, market::ASX = 27, market::ARCHIPELAGO = 28, market::IB = 29,
  market::EURONEXT = 30, market::ICE = 32, market::COREEX = 43, market::NYMEX = 61,
  market::HOTSPOT = 62, market::MONTREAL = 63, market::SGX = 64, market::IDEM = 65,
  market::MEFF = 66, market::TFX = 67, market::TOCOM = 68, market::TSE = 69,
  market::HKEX = 70, market::OSE = 71, market::MEXDER = 72, market::KRX = 73,
  market::CCX = 74, market::ECX = 75, market::CCFE = 76, market::NSE = 77,
  market::LME = 79, market::FXMS = 80, market::USFE = 81, market::DME = 82,
  market::EBS = 83, market::SSE = 85, market::MCX = 86, market::SIMEX = 87,
  market::TMX = 89, market::BVMF = 90, market::MX = 91, market::NYSE_LIFFE_US = 92,
  market::CFE = 93, market::ERIS_GOVEX = 94, market::NASDAQ_OMX_EU = 95, market::AGGREGATOR = 96,
  market::TTEX = 97, market::ESPEED = 98, market::KCG = 99, market::EEX = 100,
  market::NFX = 102, market::NLX = 103, market::NORDIC = 104, market::SYNTHETIC_INSTR = 1000,
  market::ALGO_INSTR = 1001, market::DEBESYS = 1002, market::AGGREGATOR_INSTR = 1003, market::BANK_ALGO = 1004,
  market::ALGO_BACKTESTING = 2002, market::INVALID = 134217726
}
 
enum  market_state {
  market_state::INVALID = 0, market_state::UNKNOWN, market_state::HALTED, market_state::SUSPENDED,
  market_state::RESERVED, market_state::CLOSE, market_state::OPEN, market_state::LATE_OPEN,
  market_state::AUCTION, market_state::PRE_OPEN, market_state::OPENING_ROTATION, market_state::FAST_MARKET,
  market_state::FILTER, market_state::CLOSE_SESSION_ROLL, market_state::CROSSING, market_state::PRE_CROSS,
  market_state::NO_CANCEL, market_state::POST_CLOSE, market_state::OPENING_IOP, market_state::SESSION_CLOSE,
  market_state::IMPLIED_START, market_state::IMPLIED_END, market_state::PRE_TRADING, market_state::POST_TRADING,
  market_state::NON_TRADABLE, market_state::FREEZE, market_state::EXPIRED, market_state::OPENING_AUCTION,
  market_state::CLOSING_AUCTION, market_state::LEVEL, market_state::CIRCUIT_BREAKER, market_state::FEED_DOWN,
  market_state::PRICE_DISCOVERY
}
 Market State. More...
 
enum  product_type_id {
  product_type_id::NONE = 0, product_type_id::ASSET_BACKED_SECURITIES = 1, product_type_id::AMENDED_RESTATED = 2, product_type_id::OTHER_ANTICIPATION_NOTES = 3,
  product_type_id::BANKERS_ACCEPTANCE = 4, product_type_id::BANK_NOTES = 5, product_type_id::BILL_OF_EXCHANGES = 6, product_type_id::BRADY_BOND = 7,
  product_type_id::BRIDGE_LOAN = 8, product_type_id::BUY_SELLBACK = 9, product_type_id::CONVERTIBLE_BOND = 10, product_type_id::CERTIFICATE_OF_DEPOSIT = 11,
  product_type_id::CALL_LOANS = 12, product_type_id::CORP_MORTGAGE_BACKED_SECURITIES = 13, product_type_id::COLLATERALIZED_MORTGAGE_OBLIGATION = 14, product_type_id::CERTIFICATE_OF_OBLIGATION = 15,
  product_type_id::CERTIFICATE_OF_PARTICIPATION = 16, product_type_id::CORPORATE_BOND = 17, product_type_id::COMMERCIAL_PAPER = 18, product_type_id::CORPORATE_PRIVATE_PLACEMENT = 19,
  product_type_id::COMMON_STOCK = 20, product_type_id::DEFAULTED = 21, product_type_id::DEBTOR_IN_POSSESSION = 22, product_type_id::DEPOSIT_NOTES = 23,
  product_type_id::DUAL_CURRENCY = 24, product_type_id::EURO_CERTIFICATE_OF_DEPOSIT = 25, product_type_id::EURO_CORPORATE_BOND = 26, product_type_id::EURO_COMMERCIAL_PAPER = 27,
  product_type_id::EURO_SOVEREIGNS = 28, product_type_id::EURO_SUPRANATIONAL_COUPONS = 29, product_type_id::FEDERAL_AGENCY_COUPON = 30, product_type_id::FEDERAL_AGENCY_DISCOUNT_NOTE = 31,
  product_type_id::FOREIGN_EXCHANGE_CONTRACT = 32, product_type_id::FORWARD = 33, product_type_id::FUTURE = 34, product_type_id::GENERAL_OBLIGATION_BONDS = 35,
  product_type_id::IOETTE_MORTGAGE = 36, product_type_id::LETTER_OF_CREDIT = 37, product_type_id::LIQUIDITY_NOTE = 38, product_type_id::MATURED = 39,
  product_type_id::MORTGAGE_BACKED_SECURITIES = 40, product_type_id::MUTUAL_FUND = 41, product_type_id::MORTGAGE_INTEREST_ONLY = 42, product_type_id::MULTILEG_INSTRUMENT = 43,
  product_type_id::MORTGAGE_PRINCIPAL_ONLY = 44, product_type_id::MORTGAGE_PRIVATE_PLACEMENT = 45, product_type_id::MISCELLANEOUS_PASS_THROUGH = 46, product_type_id::MANDATORY_TENDER = 47,
  product_type_id::MEDIUM_TERM_NOTES = 48, product_type_id::NO_SECURITY_TYPE = 49, product_type_id::OVERNIGHT = 50, product_type_id::OPTION = 51,
  product_type_id::PRIVATE_EXPORT_FUNDING = 52, product_type_id::PFANDBRIEFE = 53, product_type_id::PROMISSORY_NOTE = 54, product_type_id::PREFERRED_STOCK = 55,
  product_type_id::PLAZOS_FIJOS = 56, product_type_id::REVENUE_ANTICIPATION_NOTE = 57, product_type_id::REPLACED = 58, product_type_id::REPURCHASE = 59,
  product_type_id::RETIRED = 60, product_type_id::REVENUE_BONDS = 61, product_type_id::REVOLVER_LOAN = 62, product_type_id::REVOLVER_TERM_LOAN = 63,
  product_type_id::SECURITIES_LOAN = 64, product_type_id::SECURITIES_PLEDGE = 65, product_type_id::SPECIAL_ASSESSMENT = 66, product_type_id::SPECIAL_OBLIGATION = 67,
  product_type_id::SPECIAL_TAX = 68, product_type_id::SHORT_TERM_LOAN_NOTE = 69, product_type_id::STRUCTURED_NOTES = 70, product_type_id::USD_SUPRANATIONAL_COUPONS = 71,
  product_type_id::SWING_LINE_FACILITY = 72, product_type_id::TAX_ANTICIPATION_NOTE = 73, product_type_id::TAX_ALLOCATION = 74, product_type_id::TO_BE_ANNOUNCED = 75,
  product_type_id::US_TREASURY_BILL_TBILL = 76, product_type_id::US_TREASURY_BOND = 77, product_type_id::PRINCIPAL_STRIP_OF_A_CALLABLE_BOND_OR_NOTE = 78, product_type_id::TIME_DEPOSIT = 79,
  product_type_id::TAX_EXEMPT_COMMERCIAL_PAPER = 80, product_type_id::TERM_LOAN = 81, product_type_id::INTEREST_STRIP_FROM_ANY_BOND_OR_NOTE = 82, product_type_id::TREASURY_INFLATION_PROTECTED_SECURITIES = 83,
  product_type_id::US_TREASURY_NOTE_TNOTE = 84, product_type_id::PRINCIPAL_STRIP_FROM_A_NON_CALLABLE_BOND_OR_NOTE = 85, product_type_id::TAX_REVENUE_ANTICIPATION_NOTE = 86, product_type_id::US_TREASURY_NOTE_UST = 87,
  product_type_id::US_TREASURY_BILL_USTB = 88, product_type_id::VARIABLE_RATE_DEMAND_NOTE = 89, product_type_id::WARRANT = 90, product_type_id::WITHDRAWN = 91,
  product_type_id::WILDCARD_ENTRY_FOR_USE_ON_SECURITY_DEFINITION_REQUEST = 92, product_type_id::EXTENDED_COMM_NOTE = 93, product_type_id::INDEXED_LINKED = 94, product_type_id::YANKEE_CORPORATE_BOND = 95,
  product_type_id::YANKEE_CERTIFICATE_OF_DEPOSIT = 96, product_type_id::OPTIONS_ON_PHYSICAL = 97, product_type_id::OPTIONS_ON_FUTURES = 98, product_type_id::CASH = 99,
  product_type_id::OPTIONS_ON_COMBO = 100, product_type_id::INTEREST_RATE_SWAP = 101, product_type_id::BANK_DEPOSITORY_NOTE = 102, product_type_id::CANADIAN_MONEY_MARKETS = 103,
  product_type_id::CANADIAN_TREASURY_NOTES = 104, product_type_id::CANADIAN_TREASURY_BILLS = 105, product_type_id::CREDIT_DEFAULT_SWAP = 106, product_type_id::CANADIAN_MORTGAGE_BONDS = 107,
  product_type_id::EURO_CORPORATE_FLOATING_RATE_NOTES = 108, product_type_id::US_CORPORATE_FLOATING_RATE_NOTES = 109, product_type_id::CANADIAN_PROVINCIAL_BONDS = 110, product_type_id::SECURED_LIQUIDITY_NOTE = 111,
  product_type_id::TREASURY_BILL = 112, product_type_id::TERM_LIQUIDITY_NOTE = 113, product_type_id::TAXABLE_MUNICIPAL_CP = 114, product_type_id::NON_DELIVERABLE_FORWARD = 115,
  product_type_id::FX_SPOT = 116, product_type_id::FX_FORWARD = 117, product_type_id::FX_SWAP = 118, product_type_id::OPTION_STRATEGY = 200,
  product_type_id::EMISSION = 201, product_type_id::SPOT = 202, product_type_id::INVALID = 134217726
}
 Product Type identifiers. More...
 
enum  currency_code {
  currency_code::AED = 1, currency_code::AFN = 2, currency_code::ALL = 3, currency_code::AMD = 4,
  currency_code::ANG = 5, currency_code::AOA = 6, currency_code::ARS = 7, currency_code::AUD = 8,
  currency_code::AWG = 9, currency_code::AZN = 10, currency_code::BAM = 11, currency_code::BBD = 12,
  currency_code::BDT = 13, currency_code::BGN = 14, currency_code::BHD = 15, currency_code::BIF = 16,
  currency_code::BMD = 17, currency_code::BND = 18, currency_code::BOB = 19, currency_code::BOV = 20,
  currency_code::BRL = 21, currency_code::BSD = 22, currency_code::BTN = 23, currency_code::BWP = 24,
  currency_code::BYR = 25, currency_code::BZD = 26, currency_code::CAD = 27, currency_code::CDF = 28,
  currency_code::CHE = 29, currency_code::CHF = 30, currency_code::CHW = 31, currency_code::CLF = 32,
  currency_code::CLP = 33, currency_code::CNY = 34, currency_code::COP = 35, currency_code::COU = 36,
  currency_code::CRC = 37, currency_code::CUC = 38, currency_code::CUP = 39, currency_code::CVE = 40,
  currency_code::CZK = 41, currency_code::DJF = 42, currency_code::DKK = 43, currency_code::DOP = 44,
  currency_code::DZD = 45, currency_code::EGP = 46, currency_code::ERN = 47, currency_code::ETB = 48,
  currency_code::EUR = 49, currency_code::FJD = 50, currency_code::FKP = 51, currency_code::GBP = 52,
  currency_code::GEL = 53, currency_code::GHS = 54, currency_code::GIP = 55, currency_code::GMD = 56,
  currency_code::GNF = 57, currency_code::GTQ = 58, currency_code::GYD = 59, currency_code::HKD = 60,
  currency_code::HNL = 61, currency_code::HRK = 62, currency_code::HTG = 63, currency_code::HUF = 64,
  currency_code::IDR = 65, currency_code::ILS = 66, currency_code::INR = 67, currency_code::IQD = 68,
  currency_code::IRR = 69, currency_code::ISK = 70, currency_code::JMD = 71, currency_code::JOD = 72,
  currency_code::JPY = 73, currency_code::KES = 74, currency_code::KGS = 75, currency_code::KHR = 76,
  currency_code::KMF = 77, currency_code::KPW = 78, currency_code::KRW = 79, currency_code::KWD = 80,
  currency_code::KYD = 81, currency_code::KZT = 82, currency_code::LAK = 83, currency_code::LBP = 84,
  currency_code::LKR = 85, currency_code::LRD = 86, currency_code::LSL = 87, currency_code::LTL = 88,
  currency_code::LVL = 89, currency_code::LYD = 90, currency_code::MAD = 91, currency_code::MDL = 92,
  currency_code::MGA = 93, currency_code::MKD = 94, currency_code::MMK = 95, currency_code::MNT = 96,
  currency_code::MOP = 97, currency_code::MRO = 98, currency_code::MUR = 99, currency_code::MVR = 100,
  currency_code::MWK = 101, currency_code::MXN = 102, currency_code::MXV = 103, currency_code::MYR = 104,
  currency_code::MZN = 105, currency_code::NAD = 106, currency_code::NGN = 107, currency_code::NIO = 108,
  currency_code::NOK = 109, currency_code::NPR = 110, currency_code::NZD = 111, currency_code::OMR = 112,
  currency_code::PAB = 113, currency_code::PEN = 114, currency_code::PGK = 115, currency_code::PHP = 116,
  currency_code::PKR = 117, currency_code::PLN = 118, currency_code::PYG = 119, currency_code::QAR = 120,
  currency_code::RON = 121, currency_code::RSD = 122, currency_code::RUB = 123, currency_code::RWF = 124,
  currency_code::SAR = 125, currency_code::SBD = 126, currency_code::SCR = 127, currency_code::SDG = 128,
  currency_code::SEK = 129, currency_code::SGD = 130, currency_code::SHP = 131, currency_code::SLL = 132,
  currency_code::SOS = 133, currency_code::SRD = 134, currency_code::SSP = 135, currency_code::STD = 136,
  currency_code::SVC = 137, currency_code::SYP = 138, currency_code::SZL = 139, currency_code::THB = 140,
  currency_code::TJS = 141, currency_code::TMT = 142, currency_code::TND = 143, currency_code::TOP = 144,
  currency_code::TRY = 145, currency_code::TTD = 146, currency_code::TWD = 147, currency_code::TZS = 148,
  currency_code::UAH = 149, currency_code::UGX = 150, currency_code::USD = 151, currency_code::USN = 152,
  currency_code::USS = 153, currency_code::UYI = 154, currency_code::UYU = 155, currency_code::UZS = 156,
  currency_code::VEF = 157, currency_code::VND = 158, currency_code::VUV = 159, currency_code::WST = 160,
  currency_code::XAF = 161, currency_code::XAG = 162, currency_code::XAU = 163, currency_code::XBA = 164,
  currency_code::XBB = 165, currency_code::XBC = 166, currency_code::XBD = 167, currency_code::XCD = 168,
  currency_code::XDR = 169, currency_code::XOF = 170, currency_code::XPD = 171, currency_code::XPF = 172,
  currency_code::XPT = 173, currency_code::XSU = 174, currency_code::XTS = 175, currency_code::XUA = 176,
  currency_code::XXX = 177, currency_code::YER = 178, currency_code::ZAR = 179, currency_code::ZMK = 180,
  currency_code::ZWL = 181, currency_code::RMB = 200, currency_code::CNH = 201
}
 ISO currency codes. More...
 
enum  exec_type {
  exec_type::NEW = 1, exec_type::DONE_FOR_DAY = 2, exec_type::CANCELED = 3, exec_type::REPLACED = 4,
  exec_type::PENDING_CANCEL = 5, exec_type::STOPPED = 6, exec_type::REJECTED = 7, exec_type::SUSPENDED = 8,
  exec_type::PENDING_NEW = 9, exec_type::CALCULATED = 10, exec_type::EXPIRED = 11, exec_type::RESTATED = 12,
  exec_type::PENDING_REPLACE = 13, exec_type::TRADE = 14, exec_type::TRADE_CORRECT = 15, exec_type::TRADE_CANCEL = 16,
  exec_type::ORDER_STATUS = 17, exec_type::TRADE_IN_A_CLEARING_HOLD = 18, exec_type::TRADE_HAS_BEEN_RELEASED_TO_CLEARING = 19, exec_type::TRIGGERED_OR_ACTIVATED_BY_SYSTEM = 20,
  exec_type::POSITION_RESERVE_CANCEL_REJECT = 21, exec_type::POSITION_RESERVE_REPLACE_REJECT = 22, exec_type::ALGO_MESSAGE = 23, exec_type::EXPIRED_ORDERBOOK = 24,
  exec_type::SQUARE_OFF = 25
}
 
enum  order_status {
  order_status::NEW = 1, order_status::PARTIALLY_FILLED = 2, order_status::FILLED = 3, order_status::DONE_FOR_DAY = 4,
  order_status::CANCELED = 5, order_status::PENDING_CANCEL = 6, order_status::STOPPED = 7, order_status::REJECTED = 8,
  order_status::SUSPENDED = 9, order_status::PENDING_NEW = 10, order_status::CALCULATED = 11, order_status::EXPIRED = 12,
  order_status::ACCEPTED_FOR_BIDDING = 13, order_status::PENDING_REPLACE = 14, order_status::UNKNOWN = 16
}
 
enum  trade_status { trade_status::REGULAR = 0, trade_status::BUST = 1, trade_status::CORRECTION = 12, trade_status::UNKNOWN = 255 }
 
enum  trade_qualifier {
  trade_qualifier::REGULAR = 0, trade_qualifier::IMPLIEDTRADE = 1, trade_qualifier::LEGTRADE = 12, trade_qualifier::AUCTION = 20,
  trade_qualifier::UNKNOWN = 255
}
 
enum  reject_source {
  reject_source::EDGE = 0, reject_source::RISK = 1, reject_source::GATEWAY = 2, reject_source::EXCHANGE = 3,
  reject_source::ALGO = 4, reject_source::ASE = 5
}
 
enum  ord_rej_reason {
  ord_rej_reason::BROKER = 1, ord_rej_reason::UNKNOWN_SYMBOL = 2, ord_rej_reason::INVALID_INVESTOR_ID = 3, ord_rej_reason::UNSUPPORTED_ORDER_CHARACTERISTIC = 4,
  ord_rej_reason::SURVEILLENCE_OPTION = 5, ord_rej_reason::INCORRECT_QUANTITY = 6, ord_rej_reason::INCORRECT_ALLOCATED_QUANTITY = 7, ord_rej_reason::UNKNOWN_ACCOUNT = 8,
  ord_rej_reason::EXCHANGE_CLOSED = 9, ord_rej_reason::ORDER_EXCEEDS_LIMIT = 10, ord_rej_reason::TOO_LATE_TO_ENTER = 11, ord_rej_reason::UNKNOWN_ORDER = 12,
  ord_rej_reason::DUPLICATE_ORDER = 13, ord_rej_reason::DUPLICATE_OF_A_VERBALLY_COMMUNICATED_ORDER = 14, ord_rej_reason::STALE_ORDER = 15, ord_rej_reason::TRADE_ALONG_REQUIRED = 16,
  ord_rej_reason::OTHER = 17, ord_rej_reason::INVALID_PRICE_INCREMENT = 18, ord_rej_reason::PRICE_EXCEEDS_CURRENT_PRICE_BAND = 19, ord_rej_reason::MESSAGE_PENDING = 20,
  ord_rej_reason::ROUTING_ERROR = 21, ord_rej_reason::ORDER_RETRANSMITTED = 22, ord_rej_reason::TOO_LATE_TO_CANCEL = 23, ord_rej_reason::ORDER_ALREADY_IN_PENDING_CANCEL_OR_PENDING_REPLACE_STATUS = 24,
  ord_rej_reason::UNABLE_TO_PROCESS_ORDER_MASS_CANCEL_REQUEST = 25, ord_rej_reason::ORIGORDMODTIME = 26, ord_rej_reason::DUPLICATE_CLORDID = 27, ord_rej_reason::PRICE_EXCEEDS_CURRENT_PRICE = 28,
  ord_rej_reason::UNABLE_TO_REDUCE_FOR_INTERNALIZATION = 29, ord_rej_reason::ORDER_EXCEEDS_THROTTLE_LIMIT = 30, ord_rej_reason::CANNOT_FORCE_DELETE_UNKNOWN_ORDER = 31, ord_rej_reason::MARKET_CLOSED = 32,
  ord_rej_reason::FIX_FIELD_MISSING_OR_INCORRECT = 33, ord_rej_reason::REQUIRED_FIELD_MISSING = 34, ord_rej_reason::FIX_FIELD_INCORRECT = 35, ord_rej_reason::PRICE_MUST_BE_GREATER_THAN_ZERO = 36,
  ord_rej_reason::INVALID_ORDER_QUALIFIER = 37, ord_rej_reason::USER_NOT_AUTHORIZED = 38, ord_rej_reason::MARKET_ORDERS_NOT_SUPPORTED_BY_OPPOSITE = 39, ord_rej_reason::INVALID_EXPIRE_DATE = 40,
  ord_rej_reason::ORDER_NOT_IN_BOOK = 41, ord_rej_reason::ORDER_NOT_IN_BOOK2 = 42, ord_rej_reason::DISCLOSED_QTY_CANNOT_BE_GREATER = 43, ord_rej_reason::UNKNOWN_CONTRACT = 44,
  ord_rej_reason::CANCEL_WITH_DIFFERENT_SENDER_COMP_ID = 45, ord_rej_reason::CLORDID_DIFFERENT_THAN_CORRELATIONCLORDID = 46, ord_rej_reason::CLORDID_DIFFERENT_THAN_ORIGINALCLORDID = 47, ord_rej_reason::DIFFERENT_SIDE = 48,
  ord_rej_reason::DIFFERENT_GROUP = 49, ord_rej_reason::DIFFERENT_SECURITY_TYPE = 50, ord_rej_reason::DIFFERENT_ACCOUNT = 51, ord_rej_reason::DIFFERENT_QTY = 52,
  ord_rej_reason::CANCEL_WITH_DIFFERENT_TRADER_ID = 53, ord_rej_reason::STOP_PRICE_MUST_BE_GREATER = 54, ord_rej_reason::STOP_PRICE_MUST_BE_SMALLER = 55, ord_rej_reason::SELL_STOP_PRICE_MUST_BE_BELOW_LTP = 56,
  ord_rej_reason::BUY_STOP_PRICE_MUST_BE_ABOVE_LTP = 57, ord_rej_reason::DIFFERENT_PRODUCT = 58, ord_rej_reason::DIFFERENT_INFLIGHT_FILL_MITIGATION = 59, ord_rej_reason::MODIFY_WITH_DIFFERENT_SENDER_COMP_ID = 60,
  ord_rej_reason::MODIFY_WITH_DIFFERENT_TRADER_ID = 61, ord_rej_reason::ORDER_QTY_OUTSIDE_ALLOWABLE_RANGE = 62, ord_rej_reason::INVALID_ORDER_TYPE_FOR_PCP = 63, ord_rej_reason::ORDER_PRICE_OUTSIDE_LIMITS = 64,
  ord_rej_reason::ORDER_PRICE_OUTSIDE_BANDS = 65, ord_rej_reason::INVALID_ORDER_TYPE_FOR_GROUP = 66, ord_rej_reason::INSTRUMENT_CROSS_REQUEST_IN_PROGRESS = 67, ord_rej_reason::ORDER_QTY_TOO_LOW = 68,
  ord_rej_reason::ORDER_REJECTED = 69, ord_rej_reason::MARKET_IN_NO_CANCEL = 70, ord_rej_reason::INVALID_ORDER_TYPE_FOR_RESERVED_MARKET = 71, ord_rej_reason::ORDER_SESSION_DATE_IN_PAST = 72,
  ord_rej_reason::DISCLOSED_QTY_CANNOT_BE_SMALLER = 73, ord_rej_reason::MARKET_MAKER_PROTECTION_HAS_TRIPPED = 74, ord_rej_reason::ENGINE_DID_NOT_RESPOND = 75, ord_rej_reason::CONTRACT_NOT_GTC_GTD_ELIGIBLE = 76,
  ord_rej_reason::CONTRACT_PAST_EXPIRATION = 77, ord_rej_reason::MAX_CONTRACT_WORKING_QTY_EXCEEDED = 78, ord_rej_reason::MODIFY_WITH_DIFFERENT_SIDE = 79, ord_rej_reason::CONTRACT_NOT_GTC_GTD_ELIGIBLE2 = 80,
  ord_rej_reason::NO_TRADING_CALENDAR_FOR_EXPIRE_DATE = 81, ord_rej_reason::EXPIRE_DATE_BEYOND_INSTRUMENT_EXPIRATION = 82, ord_rej_reason::EXPIRE_DATE_BEYOND_LEG_INSTRUMENT_EXPIRATION = 83, ord_rej_reason::TECHNICAL_ERROR_FUNCTION_NOT_PERFORMED = 84,
  ord_rej_reason::DUPLICATE_QUOTE = 85
}
 
enum  cxl_rej_reason {
  cxl_rej_reason::TOO_LATE_TO_CANCEL = 1, cxl_rej_reason::UNKNOWN_ORDER = 2, cxl_rej_reason::BROKER = 3, cxl_rej_reason::ORDER_ALREADY_IN_PENDING_CANCEL_OR_PENDING_REPLACE_STATUS = 4,
  cxl_rej_reason::UNABLE_TO_PROCESS_ORDER_MASS_CANCEL_REQUEST = 5, cxl_rej_reason::ORIGORDMODTIME = 6, cxl_rej_reason::DUPLICATE_CLORDID = 7, cxl_rej_reason::OTHER = 8,
  cxl_rej_reason::INVALID_PRICE_INCREMENT = 9, cxl_rej_reason::PRICE_EXCEEDS_CURRENT_PRICE = 10, cxl_rej_reason::PRICE_EXCEEDS_CURRENT_PRICE_BAND = 11, cxl_rej_reason::UNABLE_TO_REDUCE_FOR_INTERNALIZATION = 12,
  cxl_rej_reason::UNSUPPORTED_ORDER_CHARACTERISTIC = 13, cxl_rej_reason::INCORRECT_QUANTITY = 14, cxl_rej_reason::INCORRECT_ALLOCATED_QUANTITY = 15, cxl_rej_reason::UNKNOWN_ACCOUNT = 16,
  cxl_rej_reason::EXCHANGE_CLOSED = 17, cxl_rej_reason::ORDER_EXCEEDS_LIMIT = 18, cxl_rej_reason::STALE_ORDER = 19, cxl_rej_reason::MESSAGE_PENDING = 20,
  cxl_rej_reason::ROUTING_ERROR = 21, cxl_rej_reason::ORDER_RETRANSMITTED = 22, cxl_rej_reason::INVALID_INVESTOR_ID = 23, cxl_rej_reason::SURVEILLENCE_OPTION = 24,
  cxl_rej_reason::ORDER_NOT_IN_BOOK_LONG_ENOUGH = 25, cxl_rej_reason::CANNOT_FORCE_DELETE_UNKNOWN_ORDER = 26, cxl_rej_reason::MARKET_CLOSED = 27, cxl_rej_reason::FIX_FIELD_MISSING_OR_INCORRECT = 28,
  cxl_rej_reason::REQUIRED_FIELD_MISSING = 29, cxl_rej_reason::FIX_FIELD_INCORRECT = 30, cxl_rej_reason::PRICE_MUST_BE_GREATER_THAN_ZERO = 31, cxl_rej_reason::INVALID_ORDER_QUALIFIER = 32,
  cxl_rej_reason::USER_NOT_AUTHORIZED = 33, cxl_rej_reason::MARKET_ORDERS_NOT_SUPPORTED_BY_OPPOSITE = 34, cxl_rej_reason::INVALID_EXPIRE_DATE = 35, cxl_rej_reason::ORDER_NOT_IN_BOOK = 36,
  cxl_rej_reason::ORDER_NOT_IN_BOOK2 = 37, cxl_rej_reason::DISCLOSED_QTY_CANNOT_BE_GREATER = 38, cxl_rej_reason::UNKNOWN_CONTRACT = 39, cxl_rej_reason::CANCEL_WITH_DIFFERENT_SENDER_COMP_ID = 40,
  cxl_rej_reason::CLORDID_DIFFERENT_THAN_CORRELATIONCLORDID = 41, cxl_rej_reason::CLORDID_DIFFERENT_THAN_ORIGINALCLORDID = 42, cxl_rej_reason::DIFFERENT_SIDE = 43, cxl_rej_reason::DIFFERENT_GROUP = 44,
  cxl_rej_reason::DIFFERENT_SECURITY_TYPE = 45, cxl_rej_reason::DIFFERENT_ACCOUNT = 46, cxl_rej_reason::DIFFERENT_QTY = 47, cxl_rej_reason::CANCEL_WITH_DIFFERENT_TRADER_ID = 48,
  cxl_rej_reason::STOP_PRICE_MUST_BE_GREATER = 49, cxl_rej_reason::STOP_PRICE_MUST_BE_SMALLER = 50, cxl_rej_reason::SELL_STOP_PRICE_MUST_BE_BELOW_LTP = 51, cxl_rej_reason::BUY_STOP_PRICE_MUST_BE_ABOVE_LTP = 52,
  cxl_rej_reason::DIFFERENT_PRODUCT = 53, cxl_rej_reason::DIFFERENT_INFLIGHT_FILL_MITIGATION = 54, cxl_rej_reason::MODIFY_WITH_DIFFERENT_SENDER_COMP_ID = 55, cxl_rej_reason::MODIFY_WITH_DIFFERENT_TRADER_ID = 56,
  cxl_rej_reason::ORDER_QTY_OUTSIDE_ALLOWABLE_RANGE = 57, cxl_rej_reason::INVALID_ORDER_TYPE_FOR_PCP = 58, cxl_rej_reason::ORDER_PRICE_OUTSIDE_LIMITS = 59, cxl_rej_reason::ORDER_PRICE_OUTSIDE_BANDS = 60,
  cxl_rej_reason::INVALID_ORDER_TYPE_FOR_GROUP = 61, cxl_rej_reason::INSTRUMENT_CROSS_REQUEST_IN_PROGRESS = 62, cxl_rej_reason::ORDER_QTY_TOO_LOW = 63, cxl_rej_reason::ORDER_REJECTED = 64,
  cxl_rej_reason::MARKET_IN_NO_CANCEL = 65, cxl_rej_reason::INVALID_ORDER_TYPE_FOR_RESERVED_MARKET = 66, cxl_rej_reason::ORDER_SESSION_DATE_IN_PAST = 67, cxl_rej_reason::DISCLOSED_QTY_CANNOT_BE_SMALLER = 68,
  cxl_rej_reason::MARKET_MAKER_PROTECTION_HAS_TRIPPED = 69, cxl_rej_reason::ENGINE_DID_NOT_RESPOND = 70, cxl_rej_reason::CONTRACT_NOT_GTC_GTD_ELIGIBLE = 71, cxl_rej_reason::CONTRACT_PAST_EXPIRATION = 72,
  cxl_rej_reason::MAX_CONTRACT_WORKING_QTY_EXCEEDED = 73, cxl_rej_reason::MODIFY_WITH_DIFFERENT_SIDE = 74, cxl_rej_reason::CONTRACT_NOT_GTC_GTD_ELIGIBLE2 = 75, cxl_rej_reason::NO_TRADING_CALENDAR_FOR_EXPIRE_DATE = 76,
  cxl_rej_reason::EXPIRE_DATE_BEYOND_INSTRUMENT_EXPIRATION = 77, cxl_rej_reason::EXPIRE_DATE_BEYOND_LEG_INSTRUMENT_EXPIRATION = 78, cxl_rej_reason::TECHNICAL_ERROR_FUNCTION_NOT_PERFORMED = 79, cxl_rej_reason::EURONEXT_UNKNOWN_ORDER = 80,
  cxl_rej_reason::EURONEXT_OTHER = 81, cxl_rej_reason::COMP_ID_PROBLEM = 82, cxl_rej_reason::LOGON_PROBLEM = 83, cxl_rej_reason::NO_ROUTER_FOR_SECURITY_GROUP = 84,
  cxl_rej_reason::ROUTER_NOT_AVAILABLE_OR_CONNECTED = 85, cxl_rej_reason::INVALID_PRICE = 86, cxl_rej_reason::INVALID_ORDQTY = 87, cxl_rej_reason::INVALID_ORDTYPE = 88,
  cxl_rej_reason::INVALID_SIDE = 89
}
 
enum  reject_code {
  reject_code::INVALID = 0, reject_code::UNKNOWN_ORDER = 1, reject_code::UNKNOWN_PRODUCT = 2, reject_code::UNKNOWN_INSTRUMENT = 3,
  reject_code::INVALID_QTY = 4, reject_code::NOT_ALLOWED = 5, reject_code::NO_CONNECTION = 6, reject_code::DUPLICATE_ORDER = 7,
  reject_code::NO_LIMIT = 8, reject_code::EXCEEDS_MAX_ORDER_SIZE = 9, reject_code::EXCEEDS_MAX_PRODUCT_POSITION = 10, reject_code::EXCEEDS_MAX_INSTRUMENT_POSITION = 11,
  reject_code::EXCEEDS_CREDIT_LIMIT = 12, reject_code::INCORRECT_INSTRUMENT_TYPE = 13, reject_code::EXCEEDS_LONG_SHORT = 14, reject_code::TIF_FORBIDDEN = 15,
  reject_code::DELETE_FORBIDDEN = 16, reject_code::SUBMIT_FORBIDDEN = 17, reject_code::GTC_GTD_FORBIDDEN = 18, reject_code::MARKET_ORDER_FORBIDDEN = 19,
  reject_code::ALGO_ORDER_FORBIDDEN = 20, reject_code::WHOLESALE_ORDER_FORBIDDEN = 21, reject_code::OUTRIGHT_FORBIDDEN = 22, reject_code::SPREAD_FORBIDDEN = 23,
  reject_code::TRADING_DISABLED = 24, reject_code::EXCEEDS_PRICE_REASONABILITY = 25, reject_code::ASE_ORDER_FORBIDDEN = 26, reject_code::UNSUPPORTED_SECURITY_TYPE = 27,
  reject_code::INVALID_PRICE = 28, reject_code::MANUAL_FILL_SUBMIT_FORBIDDEN = 29, reject_code::MALFORMED_REQUEST = 30, reject_code::MOBILE_FORBIDDEN = 31,
  reject_code::UNSUPPORTED_MARKET = 32, reject_code::CROSSED_ORDER = 33, reject_code::UNSUPPORTED_REQUEST = 34, reject_code::EXCEEDS_RESERVE_QTY = 35,
  reject_code::NOT_TRADABLE_INSTRUMENT = 36, reject_code::CROSSED_ORDER_NO_TTINT = 37, reject_code::CROSSED_ORDER_MULTI_LEG = 38, reject_code::CHILD_ORDER_QTY_CHANGE_FORBIDDEN = 39,
  reject_code::LBM_SEND_FAILURE = 40, reject_code::INCORRECT_BROKER_ID = 41, reject_code::INVALID_COUNTERPARTY_ID = 42, reject_code::SUBMIT_STAGED_FORBIDDEN = 43,
  reject_code::CLAIM_STAGED_FORBIDDEN = 44, reject_code::CANCEL_REPLACE_STAGED_FORBIDDEN = 45, reject_code::STAGED_CHILD_FORBIDDEN = 46, reject_code::STAGED_ALREADY_IN_PENDING = 47,
  reject_code::RFQ_DISABLED = 48, reject_code::POSITION_NOT_OFF_SETTING = 49, reject_code::PRODUCT_MARGIN_NOT_SET = 50, reject_code::DUPLICATE_QUOTE = 51
}
 

Functions

std::shared_ptr< InstrumentDownloadInstrument (uint64_t instr_id)
 Synchronous Instrument download by instrument id. More...
 
std::shared_ptr< InstrumentDownloadInstrument (const std::string &query, enum market market_id)
 Synchronous Instrument download by name/alias. More...
 
PriceSubscription CreatePriceSubscription (const std::shared_ptr< Instrument > &instr, const Filter &filter, const std::shared_ptr< PriceEventListener > &listener)
 Create a price subscription. More...
 
void Initialize (const std::string &config_path)
 Initialize the TT CoreSDK shared library. More...
 
std::shared_ptr< const UserGetCurrentUser (void)
 Current user details. More...
 
std::string to_string (instr_state)
 TT Core SDK enum to_string conversions. More...
 
std::string to_string (time_in_force)
 
std::string to_string (order_type)
 
std::string to_string (order_side)
 
std::string to_string (market)
 
std::string to_string (market_state)
 
std::string to_string (product_type_id)
 
std::string to_string (currency_code)
 
std::string to_string (exec_type)
 
std::string to_string (order_status)
 
std::string to_string (trade_status)
 
std::string to_string (trade_qualifier)
 
std::string to_string (reject_source)
 
std::string to_string (ord_rej_reason)
 
std::string to_string (cxl_rej_reason)
 
std::string to_string (reject_code)
 
std::string to_string (const PriceSnap &snap)
 TT Core SDK to_string conversions. More...
 
std::string to_string (TimeSale::trade_type type)
 

Typedef Documentation

◆ Filter

Bitmask specifying which price updates trigger event notifications.

Filters are a property of the PriceSubscription Class, and will supress any PriceEventListener events that do not match the specified filter. For example, PRICE_FILTER_INSIDE_MARKET will only deliver events where the inside market has been modified.

Note
Fields can be logically or'd together.

Definition at line 127 of file prices.hpp.

Enumeration Type Documentation

◆ currency_code

ISO currency codes.

Enumerator
AED 
AFN 
ALL 
AMD 
ANG 
AOA 
ARS 
AUD 
AWG 
AZN 
BAM 
BBD 
BDT 
BGN 
BHD 
BIF 
BMD 
BND 
BOB 
BOV 
BRL 
BSD 
BTN 
BWP 
BYR 
BZD 
CAD 
CDF 
CHE 
CHF 
CHW 
CLF 
CLP 
CNY 
COP 
COU 
CRC 
CUC 
CUP 
CVE 
CZK 
DJF 
DKK 
DOP 
DZD 
EGP 
ERN 
ETB 
EUR 
FJD 
FKP 
GBP 
GEL 
GHS 
GIP 
GMD 
GNF 
GTQ 
GYD 
HKD 
HNL 
HRK 
HTG 
HUF 
IDR 
ILS 
INR 
IQD 
IRR 
ISK 
JMD 
JOD 
JPY 
KES 
KGS 
KHR 
KMF 
KPW 
KRW 
KWD 
KYD 
KZT 
LAK 
LBP 
LKR 
LRD 
LSL 
LTL 
LVL 
LYD 
MAD 
MDL 
MGA 
MKD 
MMK 
MNT 
MOP 
MRO 
MUR 
MVR 
MWK 
MXN 
MXV 
MYR 
MZN 
NAD 
NGN 
NIO 
NOK 
NPR 
NZD 
OMR 
PAB 
PEN 
PGK 
PHP 
PKR 
PLN 
PYG 
QAR 
RON 
RSD 
RUB 
RWF 
SAR 
SBD 
SCR 
SDG 
SEK 
SGD 
SHP 
SLL 
SOS 
SRD 
SSP 
STD 
SVC 
SYP 
SZL 
THB 
TJS 
TMT 
TND 
TOP 
TRY 
TTD 
TWD 
TZS 
UAH 
UGX 
USD 
USN 
USS 
UYI 
UYU 
UZS 
VEF 
VND 
VUV 
WST 
XAF 
XAG 
XAU 
XBA 
XBB 
XBC 
XBD 
XCD 
XDR 
XOF 
XPD 
XPF 
XPT 
XSU 
XTS 
XUA 
XXX 
YER 
ZAR 
ZMK 
ZWL 
RMB 
CNH 

Definition at line 329 of file enums.hpp.

◆ cxl_rej_reason

Enumerator
TOO_LATE_TO_CANCEL 
UNKNOWN_ORDER 
BROKER 
ORDER_ALREADY_IN_PENDING_CANCEL_OR_PENDING_REPLACE_STATUS 
UNABLE_TO_PROCESS_ORDER_MASS_CANCEL_REQUEST 
ORIGORDMODTIME 
DUPLICATE_CLORDID 
OTHER 
INVALID_PRICE_INCREMENT 
PRICE_EXCEEDS_CURRENT_PRICE 
PRICE_EXCEEDS_CURRENT_PRICE_BAND 
UNABLE_TO_REDUCE_FOR_INTERNALIZATION 
UNSUPPORTED_ORDER_CHARACTERISTIC 
INCORRECT_QUANTITY 
INCORRECT_ALLOCATED_QUANTITY 
UNKNOWN_ACCOUNT 
EXCHANGE_CLOSED 
ORDER_EXCEEDS_LIMIT 
STALE_ORDER 
MESSAGE_PENDING 
ROUTING_ERROR 
ORDER_RETRANSMITTED 
INVALID_INVESTOR_ID 
SURVEILLENCE_OPTION 
ORDER_NOT_IN_BOOK_LONG_ENOUGH 
CANNOT_FORCE_DELETE_UNKNOWN_ORDER 
MARKET_CLOSED 
FIX_FIELD_MISSING_OR_INCORRECT 
REQUIRED_FIELD_MISSING 
FIX_FIELD_INCORRECT 
PRICE_MUST_BE_GREATER_THAN_ZERO 
INVALID_ORDER_QUALIFIER 
USER_NOT_AUTHORIZED 
MARKET_ORDERS_NOT_SUPPORTED_BY_OPPOSITE 
INVALID_EXPIRE_DATE 
ORDER_NOT_IN_BOOK 
ORDER_NOT_IN_BOOK2 
DISCLOSED_QTY_CANNOT_BE_GREATER 
UNKNOWN_CONTRACT 
CANCEL_WITH_DIFFERENT_SENDER_COMP_ID 
CLORDID_DIFFERENT_THAN_CORRELATIONCLORDID 
CLORDID_DIFFERENT_THAN_ORIGINALCLORDID 
DIFFERENT_SIDE 
DIFFERENT_GROUP 
DIFFERENT_SECURITY_TYPE 
DIFFERENT_ACCOUNT 
DIFFERENT_QTY 
CANCEL_WITH_DIFFERENT_TRADER_ID 
STOP_PRICE_MUST_BE_GREATER 
STOP_PRICE_MUST_BE_SMALLER 
SELL_STOP_PRICE_MUST_BE_BELOW_LTP 
BUY_STOP_PRICE_MUST_BE_ABOVE_LTP 
DIFFERENT_PRODUCT 
DIFFERENT_INFLIGHT_FILL_MITIGATION 
MODIFY_WITH_DIFFERENT_SENDER_COMP_ID 
MODIFY_WITH_DIFFERENT_TRADER_ID 
ORDER_QTY_OUTSIDE_ALLOWABLE_RANGE 
INVALID_ORDER_TYPE_FOR_PCP 
ORDER_PRICE_OUTSIDE_LIMITS 
ORDER_PRICE_OUTSIDE_BANDS 
INVALID_ORDER_TYPE_FOR_GROUP 
INSTRUMENT_CROSS_REQUEST_IN_PROGRESS 
ORDER_QTY_TOO_LOW 
ORDER_REJECTED 
MARKET_IN_NO_CANCEL 
INVALID_ORDER_TYPE_FOR_RESERVED_MARKET 
ORDER_SESSION_DATE_IN_PAST 
DISCLOSED_QTY_CANNOT_BE_SMALLER 
MARKET_MAKER_PROTECTION_HAS_TRIPPED 
ENGINE_DID_NOT_RESPOND 
CONTRACT_NOT_GTC_GTD_ELIGIBLE 
CONTRACT_PAST_EXPIRATION 
MAX_CONTRACT_WORKING_QTY_EXCEEDED 
MODIFY_WITH_DIFFERENT_SIDE 
CONTRACT_NOT_GTC_GTD_ELIGIBLE2 
NO_TRADING_CALENDAR_FOR_EXPIRE_DATE 
EXPIRE_DATE_BEYOND_INSTRUMENT_EXPIRATION 
EXPIRE_DATE_BEYOND_LEG_INSTRUMENT_EXPIRATION 
TECHNICAL_ERROR_FUNCTION_NOT_PERFORMED 
EURONEXT_UNKNOWN_ORDER 
EURONEXT_OTHER 
COMP_ID_PROBLEM 
LOGON_PROBLEM 
NO_ROUTER_FOR_SECURITY_GROUP 
ROUTER_NOT_AVAILABLE_OR_CONNECTED 
INVALID_PRICE 
INVALID_ORDQTY 
INVALID_ORDTYPE 
INVALID_SIDE 

Definition at line 682 of file enums.hpp.

◆ exec_type

Enumerator
NEW 
DONE_FOR_DAY 
CANCELED 
REPLACED 
PENDING_CANCEL 
STOPPED 
REJECTED 
SUSPENDED 
PENDING_NEW 
CALCULATED 
EXPIRED 
RESTATED 
PENDING_REPLACE 
TRADE 
TRADE_CORRECT 
TRADE_CANCEL 
ORDER_STATUS 
TRADE_IN_A_CLEARING_HOLD 
TRADE_HAS_BEEN_RELEASED_TO_CLEARING 
TRIGGERED_OR_ACTIVATED_BY_SYSTEM 
POSITION_RESERVE_CANCEL_REJECT 
POSITION_RESERVE_REPLACE_REJECT 
ALGO_MESSAGE 
EXPIRED_ORDERBOOK 
SQUARE_OFF 

Definition at line 516 of file enums.hpp.

◆ instr_state

enum tt_core_sdk::instr_state : uint8_t
strong
Enumerator
DELETED 
INACTIVE 
ACTIVE 

Definition at line 8 of file enums.hpp.

◆ market

enum tt_core_sdk::market : uint32_t
strong
Enumerator
SYNTHETIC 
XETRA 
EUREX 
NYSE_LIFFE 
LSE 
OM 
CBOT 
CME 
CFFE 
SEHK 
ENXTFUT 
ENXTOPT 
SYCOM 
NQLX 
GARBAN 
LIFFE_EO 
ISE 
INSTINET 
NASDAQ 
BTECFUTURES 
BTEC 
ISLAND 
SFE 
EUREXUS 
CBOE 
ASX 
ARCHIPELAGO 
IB 
EURONEXT 
ICE 
COREEX 
NYMEX 
HOTSPOT 
MONTREAL 
SGX 
IDEM 
MEFF 
TFX 
TOCOM 
TSE 
HKEX 
OSE 
MEXDER 
KRX 
CCX 
ECX 
CCFE 
NSE 
LME 
FXMS 
USFE 
DME 
EBS 
SSE 
MCX 
SIMEX 
TMX 
BVMF 
MX 
NYSE_LIFFE_US 
CFE 
ERIS_GOVEX 
NASDAQ_OMX_EU 
AGGREGATOR 
TTEX 
ESPEED 
KCG 
EEX 
NFX 
NLX 
NORDIC 
SYNTHETIC_INSTR 
ALGO_INSTR 
DEBESYS 
AGGREGATOR_INSTR 
BANK_ALGO 
ALGO_BACKTESTING 
INVALID 

Definition at line 53 of file enums.hpp.

◆ market_state

Market State.

The possible states of a market. The following table shows the market states that each market supports.

CME CFE eSpeed Eurex BTec ICE EEX NFX NLX Nordic
HALTED Y Y Y Y Y
SUSPENDED Y
RESERVED Y
CLOSE Y Y Y Y Y Y Y Y Y Y
OPEN Y Y Y Y Y Y Y Y Y Y
LATE_OPEN Y
AUCTION Y Y Y Y Y
PRE_OPEN Y Y Y Y Y
OPENING_ROTATION Y
FAST_MARKET Y
FILTER Y
CLOSE_SESSION_ROLL Y Y
CROSSING Y Y
PRE_CROSS Y Y
NO_CANCEL Y Y
POST_CLOSE Y Y
OPENING_IOP Y Y
SESSION_CLOSE Y Y
IMPLIED_START Y Y
IMPIED_END Y Y
UNKNOWN Y Y
Enumerator
INVALID 
UNKNOWN 
HALTED 
SUSPENDED 
RESERVED 
CLOSE 
OPEN 
LATE_OPEN 
AUCTION 
PRE_OPEN 
OPENING_ROTATION 
FAST_MARKET 
FILTER 
CLOSE_SESSION_ROLL 
CROSSING 
PRE_CROSS 
NO_CANCEL 
POST_CLOSE 
OPENING_IOP 
SESSION_CLOSE 
IMPLIED_START 
IMPLIED_END 
PRE_TRADING 
POST_TRADING 
NON_TRADABLE 
FREEZE 
EXPIRED 
OPENING_AUCTION 
CLOSING_AUCTION 
LEVEL 
CIRCUIT_BREAKER 
FEED_DOWN 
PRICE_DISCOVERY 

Definition at line 163 of file enums.hpp.

◆ ord_rej_reason

Enumerator
BROKER 
UNKNOWN_SYMBOL 
INVALID_INVESTOR_ID 
UNSUPPORTED_ORDER_CHARACTERISTIC 
SURVEILLENCE_OPTION 
INCORRECT_QUANTITY 
INCORRECT_ALLOCATED_QUANTITY 
UNKNOWN_ACCOUNT 
EXCHANGE_CLOSED 
ORDER_EXCEEDS_LIMIT 
TOO_LATE_TO_ENTER 
UNKNOWN_ORDER 
DUPLICATE_ORDER 
DUPLICATE_OF_A_VERBALLY_COMMUNICATED_ORDER 
STALE_ORDER 
TRADE_ALONG_REQUIRED 
OTHER 
INVALID_PRICE_INCREMENT 
PRICE_EXCEEDS_CURRENT_PRICE_BAND 
MESSAGE_PENDING 
ROUTING_ERROR 
ORDER_RETRANSMITTED 
TOO_LATE_TO_CANCEL 
ORDER_ALREADY_IN_PENDING_CANCEL_OR_PENDING_REPLACE_STATUS 
UNABLE_TO_PROCESS_ORDER_MASS_CANCEL_REQUEST 
ORIGORDMODTIME 
DUPLICATE_CLORDID 
PRICE_EXCEEDS_CURRENT_PRICE 
UNABLE_TO_REDUCE_FOR_INTERNALIZATION 
ORDER_EXCEEDS_THROTTLE_LIMIT 
CANNOT_FORCE_DELETE_UNKNOWN_ORDER 
MARKET_CLOSED 
FIX_FIELD_MISSING_OR_INCORRECT 
REQUIRED_FIELD_MISSING 
FIX_FIELD_INCORRECT 
PRICE_MUST_BE_GREATER_THAN_ZERO 
INVALID_ORDER_QUALIFIER 
USER_NOT_AUTHORIZED 
MARKET_ORDERS_NOT_SUPPORTED_BY_OPPOSITE 
INVALID_EXPIRE_DATE 
ORDER_NOT_IN_BOOK 
ORDER_NOT_IN_BOOK2 
DISCLOSED_QTY_CANNOT_BE_GREATER 
UNKNOWN_CONTRACT 
CANCEL_WITH_DIFFERENT_SENDER_COMP_ID 
CLORDID_DIFFERENT_THAN_CORRELATIONCLORDID 
CLORDID_DIFFERENT_THAN_ORIGINALCLORDID 
DIFFERENT_SIDE 
DIFFERENT_GROUP 
DIFFERENT_SECURITY_TYPE 
DIFFERENT_ACCOUNT 
DIFFERENT_QTY 
CANCEL_WITH_DIFFERENT_TRADER_ID 
STOP_PRICE_MUST_BE_GREATER 
STOP_PRICE_MUST_BE_SMALLER 
SELL_STOP_PRICE_MUST_BE_BELOW_LTP 
BUY_STOP_PRICE_MUST_BE_ABOVE_LTP 
DIFFERENT_PRODUCT 
DIFFERENT_INFLIGHT_FILL_MITIGATION 
MODIFY_WITH_DIFFERENT_SENDER_COMP_ID 
MODIFY_WITH_DIFFERENT_TRADER_ID 
ORDER_QTY_OUTSIDE_ALLOWABLE_RANGE 
INVALID_ORDER_TYPE_FOR_PCP 
ORDER_PRICE_OUTSIDE_LIMITS 
ORDER_PRICE_OUTSIDE_BANDS 
INVALID_ORDER_TYPE_FOR_GROUP 
INSTRUMENT_CROSS_REQUEST_IN_PROGRESS 
ORDER_QTY_TOO_LOW 
ORDER_REJECTED 
MARKET_IN_NO_CANCEL 
INVALID_ORDER_TYPE_FOR_RESERVED_MARKET 
ORDER_SESSION_DATE_IN_PAST 
DISCLOSED_QTY_CANNOT_BE_SMALLER 
MARKET_MAKER_PROTECTION_HAS_TRIPPED 
ENGINE_DID_NOT_RESPOND 
CONTRACT_NOT_GTC_GTD_ELIGIBLE 
CONTRACT_PAST_EXPIRATION 
MAX_CONTRACT_WORKING_QTY_EXCEEDED 
MODIFY_WITH_DIFFERENT_SIDE 
CONTRACT_NOT_GTC_GTD_ELIGIBLE2 
NO_TRADING_CALENDAR_FOR_EXPIRE_DATE 
EXPIRE_DATE_BEYOND_INSTRUMENT_EXPIRATION 
EXPIRE_DATE_BEYOND_LEG_INSTRUMENT_EXPIRATION 
TECHNICAL_ERROR_FUNCTION_NOT_PERFORMED 
DUPLICATE_QUOTE 

Definition at line 591 of file enums.hpp.

◆ order_side

Enumerator
BUY 
SELL 

Definition at line 47 of file enums.hpp.

◆ order_status

Enumerator
NEW 
PARTIALLY_FILLED 
FILLED 
DONE_FOR_DAY 
CANCELED 
PENDING_CANCEL 
STOPPED 
REJECTED 
SUSPENDED 
PENDING_NEW 
CALCULATED 
EXPIRED 
ACCEPTED_FOR_BIDDING 
PENDING_REPLACE 
UNKNOWN 

Definition at line 545 of file enums.hpp.

◆ order_type

Enumerator
MARKET 
LIMIT 
STOP 
STOP_LIMIT 
MLM 

Definition at line 38 of file enums.hpp.

◆ product_type_id

Product Type identifiers.

Enumerator
NONE 
ASSET_BACKED_SECURITIES 
AMENDED_RESTATED 
OTHER_ANTICIPATION_NOTES 
BANKERS_ACCEPTANCE 
BANK_NOTES 
BILL_OF_EXCHANGES 
BRADY_BOND 
BRIDGE_LOAN 
BUY_SELLBACK 
CONVERTIBLE_BOND 
CERTIFICATE_OF_DEPOSIT 
CALL_LOANS 
CORP_MORTGAGE_BACKED_SECURITIES 
COLLATERALIZED_MORTGAGE_OBLIGATION 
CERTIFICATE_OF_OBLIGATION 
CERTIFICATE_OF_PARTICIPATION 
CORPORATE_BOND 
COMMERCIAL_PAPER 
CORPORATE_PRIVATE_PLACEMENT 
COMMON_STOCK 
DEFAULTED 
DEBTOR_IN_POSSESSION 
DEPOSIT_NOTES 
DUAL_CURRENCY 
EURO_CERTIFICATE_OF_DEPOSIT 
EURO_CORPORATE_BOND 
EURO_COMMERCIAL_PAPER 
EURO_SOVEREIGNS 
EURO_SUPRANATIONAL_COUPONS 
FEDERAL_AGENCY_COUPON 
FEDERAL_AGENCY_DISCOUNT_NOTE 
FOREIGN_EXCHANGE_CONTRACT 
FORWARD 
FUTURE 
GENERAL_OBLIGATION_BONDS 
IOETTE_MORTGAGE 
LETTER_OF_CREDIT 
LIQUIDITY_NOTE 
MATURED 
MORTGAGE_BACKED_SECURITIES 
MUTUAL_FUND 
MORTGAGE_INTEREST_ONLY 
MULTILEG_INSTRUMENT 
MORTGAGE_PRINCIPAL_ONLY 
MORTGAGE_PRIVATE_PLACEMENT 
MISCELLANEOUS_PASS_THROUGH 
MANDATORY_TENDER 
MEDIUM_TERM_NOTES 
NO_SECURITY_TYPE 
OVERNIGHT 
OPTION 
PRIVATE_EXPORT_FUNDING 
PFANDBRIEFE 
PROMISSORY_NOTE 
PREFERRED_STOCK 
PLAZOS_FIJOS 
REVENUE_ANTICIPATION_NOTE 
REPLACED 
REPURCHASE 
RETIRED 
REVENUE_BONDS 
REVOLVER_LOAN 
REVOLVER_TERM_LOAN 
SECURITIES_LOAN 
SECURITIES_PLEDGE 
SPECIAL_ASSESSMENT 
SPECIAL_OBLIGATION 
SPECIAL_TAX 
SHORT_TERM_LOAN_NOTE 
STRUCTURED_NOTES 
USD_SUPRANATIONAL_COUPONS 
SWING_LINE_FACILITY 
TAX_ANTICIPATION_NOTE 
TAX_ALLOCATION 
TO_BE_ANNOUNCED 
US_TREASURY_BILL_TBILL 
US_TREASURY_BOND 
PRINCIPAL_STRIP_OF_A_CALLABLE_BOND_OR_NOTE 
TIME_DEPOSIT 
TAX_EXEMPT_COMMERCIAL_PAPER 
TERM_LOAN 
INTEREST_STRIP_FROM_ANY_BOND_OR_NOTE 
TREASURY_INFLATION_PROTECTED_SECURITIES 
US_TREASURY_NOTE_TNOTE 
PRINCIPAL_STRIP_FROM_A_NON_CALLABLE_BOND_OR_NOTE 
TAX_REVENUE_ANTICIPATION_NOTE 
US_TREASURY_NOTE_UST 
US_TREASURY_BILL_USTB 
VARIABLE_RATE_DEMAND_NOTE 
WARRANT 
WITHDRAWN 
WILDCARD_ENTRY_FOR_USE_ON_SECURITY_DEFINITION_REQUEST 
EXTENDED_COMM_NOTE 
INDEXED_LINKED 
YANKEE_CORPORATE_BOND 
YANKEE_CERTIFICATE_OF_DEPOSIT 
OPTIONS_ON_PHYSICAL 
OPTIONS_ON_FUTURES 
CASH 
OPTIONS_ON_COMBO 
INTEREST_RATE_SWAP 
BANK_DEPOSITORY_NOTE 
CANADIAN_MONEY_MARKETS 
CANADIAN_TREASURY_NOTES 
CANADIAN_TREASURY_BILLS 
CREDIT_DEFAULT_SWAP 
CANADIAN_MORTGAGE_BONDS 
EURO_CORPORATE_FLOATING_RATE_NOTES 
US_CORPORATE_FLOATING_RATE_NOTES 
CANADIAN_PROVINCIAL_BONDS 
SECURED_LIQUIDITY_NOTE 
TREASURY_BILL 
TERM_LIQUIDITY_NOTE 
TAXABLE_MUNICIPAL_CP 
NON_DELIVERABLE_FORWARD 
FX_SPOT 
FX_FORWARD 
FX_SWAP 
OPTION_STRATEGY 
EMISSION 
SPOT 
INVALID 

Definition at line 201 of file enums.hpp.

◆ reject_code

Enumerator
INVALID 
UNKNOWN_ORDER 
UNKNOWN_PRODUCT 
UNKNOWN_INSTRUMENT 
INVALID_QTY 
NOT_ALLOWED 
NO_CONNECTION 
DUPLICATE_ORDER 
NO_LIMIT 
EXCEEDS_MAX_ORDER_SIZE 
EXCEEDS_MAX_PRODUCT_POSITION 
EXCEEDS_MAX_INSTRUMENT_POSITION 
EXCEEDS_CREDIT_LIMIT 
INCORRECT_INSTRUMENT_TYPE 
EXCEEDS_LONG_SHORT 
TIF_FORBIDDEN 
DELETE_FORBIDDEN 
SUBMIT_FORBIDDEN 
GTC_GTD_FORBIDDEN 
MARKET_ORDER_FORBIDDEN 
ALGO_ORDER_FORBIDDEN 
WHOLESALE_ORDER_FORBIDDEN 
OUTRIGHT_FORBIDDEN 
SPREAD_FORBIDDEN 
TRADING_DISABLED 
EXCEEDS_PRICE_REASONABILITY 
ASE_ORDER_FORBIDDEN 
UNSUPPORTED_SECURITY_TYPE 
INVALID_PRICE 
MANUAL_FILL_SUBMIT_FORBIDDEN 
MALFORMED_REQUEST 
MOBILE_FORBIDDEN 
UNSUPPORTED_MARKET 
CROSSED_ORDER 
UNSUPPORTED_REQUEST 
EXCEEDS_RESERVE_QTY 
NOT_TRADABLE_INSTRUMENT 
CROSSED_ORDER_NO_TTINT 
CROSSED_ORDER_MULTI_LEG 
CHILD_ORDER_QTY_CHANGE_FORBIDDEN 
LBM_SEND_FAILURE 
INCORRECT_BROKER_ID 
INVALID_COUNTERPARTY_ID 
SUBMIT_STAGED_FORBIDDEN 
CLAIM_STAGED_FORBIDDEN 
CANCEL_REPLACE_STAGED_FORBIDDEN 
STAGED_CHILD_FORBIDDEN 
STAGED_ALREADY_IN_PENDING 
RFQ_DISABLED 
POSITION_NOT_OFF_SETTING 
PRODUCT_MARGIN_NOT_SET 
DUPLICATE_QUOTE 

Definition at line 779 of file enums.hpp.

◆ reject_source

Enumerator
EDGE 
RISK 
GATEWAY 
EXCHANGE 
ALGO 
ASE 

Definition at line 581 of file enums.hpp.

◆ rounding

enum tt_core_sdk::rounding
strong
Enumerator
NONE 

Do not round the price.

UP 

Round the price up to the next tradable price.

DOWN 

Round the price down to the next tradable price.

NEAREST 

Round the price to the nearest tradable price, whether up or down.

Definition at line 15 of file enums.hpp.

◆ time_in_force

Enumerator
DAY 
GOOD_TILL_CANCEL 
AT_THE_OPENING 
IMMEDIATE_OR_CANCEL 
FILL_OR_KILL 
GOOD_TILL_CROSSING 
GOOD_TILL_DATE 
AT_THE_CLOSE 
GOOD_THROUGH_CROSSING 
AT_CROSSING 
GOOD_IN_SESSION 

Definition at line 23 of file enums.hpp.

◆ trade_qualifier

Enumerator
REGULAR 
IMPLIEDTRADE 
LEGTRADE 
AUCTION 
UNKNOWN 

Definition at line 572 of file enums.hpp.

◆ trade_status

Enumerator
REGULAR 
BUST 
CORRECTION 
UNKNOWN 

Definition at line 564 of file enums.hpp.

Function Documentation

◆ CreatePriceSubscription()

PriceSubscription tt_core_sdk::CreatePriceSubscription ( const std::shared_ptr< Instrument > &  instr,
const Filter filter,
const std::shared_ptr< PriceEventListener > &  listener 
)

Create a price subscription.

Subscribe to price updates for the provided contract, delivered to your own custom listener.

Parameters
[in]instrContract to receive updates on
[in]filterBitmask of fields that trigger event notifications
[in]listenerListener to invoke callbacks
Note
SDK will share ownership of shared resources
Returns
PriceSubscription Class controller
Exceptions
std::invalid_argumentInvalid parameters
std::domain_errorFailed to create the subscription

◆ DownloadInstrument() [1/2]

std::shared_ptr<Instrument> tt_core_sdk::DownloadInstrument ( uint64_t  instr_id)

Synchronous Instrument download by instrument id.

Downloads an instrument by it's unique id. Calling thread will be blocked until the download has completed or a timeout occurs.

Parameters
[in]instr_idUnique instrument id
Returns
Instrument on success, nullptr on timeout or failure

◆ DownloadInstrument() [2/2]

std::shared_ptr<Instrument> tt_core_sdk::DownloadInstrument ( const std::string &  query,
enum market  market_id 
)

Synchronous Instrument download by name/alias.

Downloads an instrument by the market and name/alias fields. The query string must be an exact match of the instrument name (e.g. "ESZ8") or instrument alias (e.g. "ES Dec18"). Calling thread will be blocked until the download has completed or a timeout occurs.

Parameters
[in]queryInstrument name or instrument alias
[in]market_idContract market
Returns
Instrument on success, nullptr on timeout or failure

◆ GetCurrentUser()

std::shared_ptr<const User> tt_core_sdk::GetCurrentUser ( void  )

Current user details.

Returns
Shared resource, or nullptr if unavailable
Warning
SDK must be initialized

◆ Initialize()

void tt_core_sdk::Initialize ( const std::string &  config_path)

Initialize the TT CoreSDK shared library.

The initialize function is a required call to setup the CoreSDK shared library according to the values within the provided configuration file. Once an application initializes the shared library, all other applications will use the same instance, so any subsequent calls will be a no-op.

Parameters
[in]config_pathDirectory containing the tt_core_sdk.conf file
Exceptions
std::runtime_errorInitialization failed

◆ to_string() [1/18]

std::string tt_core_sdk::to_string ( const PriceSnap snap)

TT Core SDK to_string conversions.

◆ to_string() [2/18]

std::string tt_core_sdk::to_string ( TimeSale::trade_type  type)

◆ to_string() [3/18]

std::string tt_core_sdk::to_string ( instr_state  )

TT Core SDK enum to_string conversions.

◆ to_string() [4/18]

std::string tt_core_sdk::to_string ( time_in_force  )

◆ to_string() [5/18]

std::string tt_core_sdk::to_string ( order_type  )

◆ to_string() [6/18]

std::string tt_core_sdk::to_string ( order_side  )

◆ to_string() [7/18]

std::string tt_core_sdk::to_string ( market  )

◆ to_string() [8/18]

std::string tt_core_sdk::to_string ( market_state  )

◆ to_string() [9/18]

std::string tt_core_sdk::to_string ( product_type_id  )

◆ to_string() [10/18]

std::string tt_core_sdk::to_string ( currency_code  )

◆ to_string() [11/18]

std::string tt_core_sdk::to_string ( exec_type  )

◆ to_string() [12/18]

std::string tt_core_sdk::to_string ( order_status  )

◆ to_string() [13/18]

std::string tt_core_sdk::to_string ( trade_status  )

◆ to_string() [14/18]

std::string tt_core_sdk::to_string ( trade_qualifier  )

◆ to_string() [15/18]

std::string tt_core_sdk::to_string ( reject_source  )

◆ to_string() [16/18]

std::string tt_core_sdk::to_string ( ord_rej_reason  )

◆ to_string() [17/18]

std::string tt_core_sdk::to_string ( cxl_rej_reason  )

◆ to_string() [18/18]

std::string tt_core_sdk::to_string ( reject_code  )