Skip to main content

ibapi/
server_versions.rs

1#![allow(dead_code)]
2//! Server version constants for TWS API feature compatibility.
3//!
4//! These constants represent the minimum server version required for specific features.
5//! They are used internally to check if a feature is supported by the connected TWS/Gateway
6//! before sending requests that depend on that feature.
7
8/// Minimum server version for real-time bars functionality.
9pub const REAL_TIME_BARS: i32 = 34;
10/// Minimum server version for scale orders.
11pub const SCALE_ORDERS: i32 = 35;
12/// Minimum server version for snapshot market data.
13pub const SNAPSHOT_MKT_DATA: i32 = 35;
14/// Minimum server version for short sale combo legs.
15pub const SSHORT_COMBO_LEGS: i32 = 35;
16/// Minimum server version for what-if orders.
17pub const WHAT_IF_ORDERS: i32 = 36;
18/// Minimum server version for contract ID support.
19pub const CONTRACT_CONID: i32 = 37;
20
21/// Minimum server version for PTA (Principal Trading Adviser) orders.
22pub const PTA_ORDERS: i32 = 39;
23/// Minimum server version for fundamental data requests.
24pub const FUNDAMENTAL_DATA: i32 = 40;
25/// Minimum server version for delta neutral contracts.
26pub const DELTA_NEUTRAL: i32 = 40;
27/// Minimum server version for contract data chain.
28pub const CONTRACT_DATA_CHAIN: i32 = 40;
29/// Minimum server version for scale orders v2.
30pub const SCALE_ORDERS2: i32 = 40;
31/// Minimum server version for algorithmic orders.
32pub const ALGO_ORDERS: i32 = 41;
33/// Minimum server version for execution data chain.
34pub const EXECUTION_DATA_CHAIN: i32 = 42;
35/// Minimum server version for not-held orders.
36pub const NOT_HELD: i32 = 44;
37/// Minimum server version for security ID type.
38pub const SEC_ID_TYPE: i32 = 45;
39/// Minimum server version for placing orders with contract ID.
40pub const PLACE_ORDER_CONID: i32 = 46;
41/// Minimum server version for requesting market data with contract ID.
42pub const REQ_MKT_DATA_CONID: i32 = 47;
43/// Minimum server version for requesting implied volatility calculations.
44pub const REQ_CALC_IMPLIED_VOLAT: i32 = 49;
45/// Minimum server version for requesting option price calculations.
46pub const REQ_CALC_OPTION_PRICE: i32 = 50;
47/// Minimum server version for short sale slot value (old version).
48pub const SSHORTX_OLD: i32 = 51;
49/// Minimum server version for short sale slot value.
50pub const SSHORTX: i32 = 52;
51/// Minimum server version for global cancel requests.
52pub const REQ_GLOBAL_CANCEL: i32 = 53;
53/// Minimum server version for hedge orders.
54pub const HEDGE_ORDERS: i32 = 54;
55/// Minimum server version for market data type requests.
56pub const REQ_MARKET_DATA_TYPE: i32 = 55;
57/// Minimum server version for opting out of SMART routing.
58pub const OPT_OUT_SMART_ROUTING: i32 = 56;
59/// Minimum server version for SMART combo routing parameters.
60pub const SMART_COMBO_ROUTING_PARAMS: i32 = 57;
61/// Minimum server version for delta neutral contract ID.
62pub const DELTA_NEUTRAL_CONID: i32 = 58;
63/// Minimum server version for scale orders v3.
64pub const SCALE_ORDERS3: i32 = 60;
65/// Minimum server version for order combo legs price.
66pub const ORDER_COMBO_LEGS_PRICE: i32 = 61;
67/// Minimum server version for trailing percent orders.
68pub const TRAILING_PERCENT: i32 = 62;
69/// Minimum server version for delta neutral open/close.
70pub const DELTA_NEUTRAL_OPEN_CLOSE: i32 = 66;
71/// Minimum server version for position requests.
72pub const POSITIONS: i32 = 67;
73/// Minimum server version for account summary requests.
74pub const ACCOUNT_SUMMARY: i32 = 67;
75/// Minimum server version for trading class support.
76pub const TRADING_CLASS: i32 = 68;
77/// Minimum server version for scale table.
78pub const SCALE_TABLE: i32 = 69;
79/// Minimum server version for order linking.
80pub const LINKING: i32 = 70;
81/// Minimum server version for algorithm ID.
82pub const ALGO_ID: i32 = 71;
83/// Minimum server version for optional capabilities.
84pub const OPTIONAL_CAPABILITIES: i32 = 72;
85/// Minimum server version for order solicited flag.
86pub const ORDER_SOLICITED: i32 = 73;
87/// Minimum server version for linking authentication.
88pub const LINKING_AUTH: i32 = 74;
89/// Minimum server version for primary exchange.
90pub const PRIMARYEXCH: i32 = 75;
91/// Minimum server version for randomizing size and price.
92pub const RANDOMIZE_SIZE_AND_PRICE: i32 = 76;
93/// Minimum server version for fractional positions.
94pub const FRACTIONAL_POSITIONS: i32 = 101;
95/// Minimum server version for pegged to benchmark orders.
96pub const PEGGED_TO_BENCHMARK: i32 = 102;
97/// Minimum server version for models support.
98pub const MODELS_SUPPORT: i32 = 103;
99/// Minimum server version for security definition option parameters request.
100pub const SEC_DEF_OPT_PARAMS_REQ: i32 = 104;
101/// Minimum server version for extended operator.
102pub const EXT_OPERATOR: i32 = 105;
103/// Minimum server version for soft dollar tier.
104pub const SOFT_DOLLAR_TIER: i32 = 106;
105/// Minimum server version for requesting family codes.
106pub const REQ_FAMILY_CODES: i32 = 107;
107/// Minimum server version for requesting matching symbols.
108pub const REQ_MATCHING_SYMBOLS: i32 = 108;
109/// Minimum server version for past limit orders.
110pub const PAST_LIMIT: i32 = 109;
111/// Minimum server version for market data size multiplier.
112pub const MD_SIZE_MULTIPLIER: i32 = 110;
113/// Minimum server version for cash quantity orders.
114pub const CASH_QTY: i32 = 111;
115/// Minimum server version for market depth exchanges.
116pub const REQ_MKT_DEPTH_EXCHANGES: i32 = 112;
117/// Minimum server version for tick news.
118pub const TICK_NEWS: i32 = 113;
119/// Minimum server version for requesting SMART components.
120pub const REQ_SMART_COMPONENTS: i32 = 114;
121/// Minimum server version for requesting news providers.
122pub const REQ_NEWS_PROVIDERS: i32 = 115;
123/// Minimum server version for requesting news articles.
124pub const REQ_NEWS_ARTICLE: i32 = 116;
125/// Minimum server version for requesting historical news.
126pub const REQ_HISTORICAL_NEWS: i32 = 117;
127/// Minimum server version for requesting head timestamp.
128pub const REQ_HEAD_TIMESTAMP: i32 = 118;
129/// Minimum server version for requesting histogram data.
130pub const REQ_HISTOGRAM: i32 = 119;
131/// Minimum server version for service data type.
132pub const SERVICE_DATA_TYPE: i32 = 120;
133/// Minimum server version for aggregate group.
134pub const AGG_GROUP: i32 = 121;
135/// Minimum server version for underlying info.
136pub const UNDERLYING_INFO: i32 = 122;
137/// Minimum server version for canceling head timestamp.
138pub const CANCEL_HEADTIMESTAMP: i32 = 123;
139/// Minimum server version for synthetic real-time bars.
140pub const SYNT_REALTIME_BARS: i32 = 124;
141/// Minimum server version for CFD reroute.
142pub const CFD_REROUTE: i32 = 125;
143/// Minimum server version for market rules.
144pub const MARKET_RULES: i32 = 126;
145/// Minimum server version for profit and loss (PnL) requests.
146pub const PNL: i32 = 127;
147/// Minimum server version for news query origins.
148pub const NEWS_QUERY_ORIGINS: i32 = 128;
149/// Minimum server version for unrealized PnL data.
150pub const UNREALIZED_PNL: i32 = 129;
151/// Minimum server version for historical ticks.
152pub const HISTORICAL_TICKS: i32 = 130;
153/// Minimum server version for market cap price.
154pub const MARKET_CAP_PRICE: i32 = 131;
155/// Minimum server version for pre-open bid/ask.
156pub const PRE_OPEN_BID_ASK: i32 = 132;
157/// Minimum server version for real expiration date.
158pub const REAL_EXPIRATION_DATE: i32 = 134;
159/// Minimum server version for realized PnL data.
160pub const REALIZED_PNL: i32 = 135;
161/// Minimum server version for last liquidity.
162pub const LAST_LIQUIDITY: i32 = 136;
163/// Minimum server version for tick-by-tick data.
164pub const TICK_BY_TICK: i32 = 137;
165/// Minimum server version for decision maker.
166pub const DECISION_MAKER: i32 = 138;
167/// Minimum server version for MiFID execution.
168pub const MIFID_EXECUTION: i32 = 139;
169/// Minimum server version for tick-by-tick ignore size parameter.
170pub const TICK_BY_TICK_IGNORE_SIZE: i32 = 140;
171/// Minimum server version for auto price for hedge.
172pub const AUTO_PRICE_FOR_HEDGE: i32 = 141;
173/// Minimum server version for what-if extended fields.
174pub const WHAT_IF_EXT_FIELDS: i32 = 142;
175/// Minimum server version for scanner generic options.
176pub const SCANNER_GENERIC_OPTS: i32 = 143;
177/// Minimum server version for API bind order.
178pub const API_BIND_ORDER: i32 = 144;
179/// Minimum server version for order container.
180pub const ORDER_CONTAINER: i32 = 145;
181/// Minimum server version for SMART depth.
182pub const SMART_DEPTH: i32 = 146;
183/// Minimum server version for removing null all casting.
184pub const REMOVE_NULL_ALL_CASTING: i32 = 147;
185/// Minimum server version for D-peg orders.
186pub const D_PEG_ORDERS: i32 = 148;
187/// Minimum server version for market depth primary exchange.
188pub const MKT_DEPTH_PRIM_EXCHANGE: i32 = 149;
189/// Minimum server version for completed orders.
190pub const COMPLETED_ORDERS: i32 = 150;
191/// Minimum server version for price management algorithm.
192pub const PRICE_MGMT_ALGO: i32 = 151;
193/// Minimum server version for stock type.
194pub const STOCK_TYPE: i32 = 152;
195/// Minimum server version for encoding messages in ASCII7.
196pub const ENCODE_MSG_ASCII7: i32 = 153;
197/// Minimum server version for sending all family codes.
198pub const SEND_ALL_FAMILY_CODES: i32 = 154;
199/// Minimum server version for no default open/close.
200pub const NO_DEFAULT_OPEN_CLOSE: i32 = 155;
201/// Minimum server version for price-based volatility.
202pub const PRICE_BASED_VOLATILITY: i32 = 156;
203/// Minimum server version for replace FA end.
204pub const REPLACE_FA_END: i32 = 157;
205/// Minimum server version for duration.
206pub const DURATION: i32 = 158;
207/// Minimum server version for market data in shares.
208pub const MARKET_DATA_IN_SHARES: i32 = 159;
209/// Minimum server version for post to ATS.
210pub const POST_TO_ATS: i32 = 160;
211/// Minimum server version for WSHE calendar.
212pub const WSHE_CALENDAR: i32 = 161;
213/// Minimum server version for auto cancel parent.
214pub const AUTO_CANCEL_PARENT: i32 = 162;
215/// Minimum server version for fractional size support.
216pub const FRACTIONAL_SIZE_SUPPORT: i32 = 163;
217/// Minimum server version for size rules support.
218pub const SIZE_RULES: i32 = 164;
219/// Minimum server version for historical schedule.
220pub const HISTORICAL_SCHEDULE: i32 = 165;
221/// Minimum server version for advanced order reject.
222pub const ADVANCED_ORDER_REJECT: i32 = 166;
223/// Minimum server version for user info.
224pub const USER_INFO: i32 = 167;
225/// Minimum server version for crypto aggregated trades.
226pub const CRYPTO_AGGREGATED_TRADES: i32 = 168;
227/// Minimum server version for manual order time.
228pub const MANUAL_ORDER_TIME: i32 = 169;
229/// Minimum server version for PEG BEST/PEG MID offsets.
230pub const PEGBEST_PEGMID_OFFSETS: i32 = 170;
231/// Minimum server version for WSH event data filters.
232pub const WSH_EVENT_DATA_FILTERS: i32 = 171;
233/// Minimum server version for IPO prices.
234pub const IPO_PRICES: i32 = 172;
235/// Minimum server version for WSH event data filters with date.
236pub const WSH_EVENT_DATA_FILTERS_DATE: i32 = 173;
237/// Minimum server version for instrument timezone.
238pub const INSTRUMENT_TIMEZONE: i32 = 174;
239/// Minimum server version for HMDS market data in shares.
240pub const HMDS_MARKET_DATA_IN_SHARES: i32 = 175;
241/// Minimum server version for bond issuer ID.
242pub const BOND_ISSUERID: i32 = 176;
243/// Minimum server version for FA profile desupport.
244pub const FA_PROFILE_DESUPPORT: i32 = 177;
245
246/// Minimum server version for pending price revision.
247pub const PENDING_PRICE_REVISION: i32 = 178;
248/// Minimum server version for fund data fields.
249pub const FUND_DATA_FIELDS: i32 = 179;
250/// Minimum server version for manual order time on exercise options.
251pub const MANUAL_ORDER_TIME_EXERCISE_OPTIONS: i32 = 180;
252/// Minimum server version for open order AD strategy.
253pub const OPEN_ORDER_AD_STRATEGY: i32 = 181;
254/// Minimum server version for last trade date.
255pub const LAST_TRADE_DATE: i32 = 182;
256/// Minimum server version for customer account.
257pub const CUSTOMER_ACCOUNT: i32 = 183;
258/// Minimum server version for professional customer.
259pub const PROFESSIONAL_CUSTOMER: i32 = 184;
260/// Minimum server version for bond accrued interest.
261pub const BOND_ACCRUED_INTEREST: i32 = 185;
262/// Minimum server version for ineligibility reasons.
263pub const INELIGIBILITY_REASONS: i32 = 186;
264/// Minimum server version for RFQ fields.
265pub const RFQ_FIELDS: i32 = 187;
266/// Minimum server version for bond trading hours.
267pub const BOND_TRADING_HOURS: i32 = 188;
268/// Minimum server version for include overnight.
269pub const INCLUDE_OVERNIGHT: i32 = 189;
270/// Minimum server version for undo RFQ fields.
271pub const UNDO_RFQ_FIELDS: i32 = 190;
272/// Minimum server version for perm ID as long.
273pub const PERM_ID_AS_LONG: i32 = 191;
274/// Minimum server version for CME tagging fields.
275pub const CME_TAGGING_FIELDS: i32 = 192;
276/// Minimum server version for CME tagging fields in open order.
277pub const CME_TAGGING_FIELDS_IN_OPEN_ORDER: i32 = 193;
278/// Minimum server version for error time.
279pub const ERROR_TIME: i32 = 194;
280/// Minimum server version for full order preview fields.
281pub const FULL_ORDER_PREVIEW_FIELDS: i32 = 195;
282/// Minimum server version for historical data end message.
283pub const HISTORICAL_DATA_END: i32 = 196;
284/// Minimum server version for current time in milliseconds.
285pub const CURRENT_TIME_IN_MILLIS: i32 = 197;
286/// Minimum server version for submitter.
287pub const SUBMITTER: i32 = 198;
288/// Minimum server version for imbalance only.
289pub const IMBALANCE_ONLY: i32 = 199;
290/// Minimum server version for parametrized days of executions.
291pub const PARAMETRIZED_DAYS_OF_EXECUTIONS: i32 = 200;
292/// Minimum server version for protobuf messages.
293pub const PROTOBUF: i32 = 201;
294/// Minimum server version for zero strike.
295pub const ZERO_STRIKE: i32 = 202;
296/// Minimum server version for protobuf place order.
297pub const PROTOBUF_PLACE_ORDER: i32 = 203;
298/// Minimum server version for protobuf completed order.
299pub const PROTOBUF_COMPLETED_ORDER: i32 = 204;
300/// Minimum server version for protobuf contract data.
301pub const PROTOBUF_CONTRACT_DATA: i32 = 205;
302/// Minimum server version for protobuf market data.
303pub const PROTOBUF_MARKET_DATA: i32 = 206;
304/// Minimum server version for protobuf accounts and positions.
305pub const PROTOBUF_ACCOUNTS_POSITIONS: i32 = 207;
306/// Minimum server version for protobuf historical data.
307pub const PROTOBUF_HISTORICAL_DATA: i32 = 208;
308/// Minimum server version for protobuf news data.
309pub const PROTOBUF_NEWS_DATA: i32 = 209;
310/// Minimum server version for protobuf scan data.
311pub const PROTOBUF_SCAN_DATA: i32 = 210;
312/// Minimum server version for protobuf REST messages (batch 1).
313pub const PROTOBUF_REST_MESSAGES_1: i32 = 211;
314/// Minimum server version for protobuf REST messages (batch 2).
315pub const PROTOBUF_REST_MESSAGES_2: i32 = 212;
316/// Minimum server version for protobuf REST messages (batch 3).
317pub const PROTOBUF_REST_MESSAGES_3: i32 = 213;
318/// Minimum server version for adding Z suffix to UTC date time.
319pub const ADD_Z_SUFFIX_TO_UTC_DATE_TIME: i32 = 214;
320/// Minimum server version for cancel contract data.
321pub const CANCEL_CONTRACT_DATA: i32 = 215;
322/// Minimum server version for additional order params (batch 1).
323pub const ADDITIONAL_ORDER_PARAMS_1: i32 = 216;
324/// Minimum server version for additional order params (batch 2).
325pub const ADDITIONAL_ORDER_PARAMS_2: i32 = 217;
326/// Minimum server version for attached orders.
327pub const ATTACHED_ORDERS: i32 = 218;
328/// Minimum server version for configuration.
329pub const CONFIG: i32 = 219;
330/// Minimum server version for market data volumes in shares.
331pub const MARKET_DATA_VOLUMES_IN_SHARES: i32 = 220;
332/// Minimum server version for update configuration.
333pub const UPDATE_CONFIG: i32 = 221;