@huskly/ibkr-client 2.5.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -86,11 +86,14 @@ import { FlexClient } from "@huskly/ibkr-client";
86
86
 
87
87
  // Obtain these values from private deployment settings, not a tracked file.
88
88
  const flex = new FlexClient(flexToken);
89
- const referenceCode = await flex.requestReport({
90
- queryId,
91
- fromDate: "20260901",
92
- toDate: "20260902",
93
- }, abortSignal);
89
+ const referenceCode = await flex.requestReport(
90
+ {
91
+ queryId,
92
+ fromDate: "20260901",
93
+ toDate: "20260902",
94
+ },
95
+ abortSignal
96
+ );
94
97
 
95
98
  // Schedule this call after generation. A report can still be pending.
96
99
  const result = await flex.readStatement(referenceCode, abortSignal);
@@ -208,6 +211,10 @@ validated at runtime. Its broker-neutral account API includes:
208
211
  settlement style on this endpoint, and a known adjusted class (`TLRY1`) reports the same
209
212
  `multiplier` `"100"` and the same `cfi_code` `"OPXXXS"` as a standard class (`SPY`). The CONSUMER
210
213
  decides what the facts qualify.
214
+ - `resolveEquityContract(symbol)` returns one exact SMART-routed US `STK` identity. It requires
215
+ one IBKR `isUS` listing and verifies the conid, symbol, security type, USD currency, and SMART
216
+ routing against `iserver/contract/{conid}/info`. Empty, ambiguous, incomplete, or conflicting
217
+ evidence fails closed.
211
218
  - `getQuotes()` and `searchInstruments()` for equity/ETF discovery and quotes. Quote requests accept
212
219
  a symbol and an optional broker ID. A broker ID reads that exact contract without symbol
213
220
  discovery. A request without one can also resolve a complete OSI option symbol without loading
@@ -244,7 +251,7 @@ Use the explicit session lifecycle API for gateways and long-running processes:
244
251
  ```ts
245
252
  await client.initializeBrokerageSession({ compete: false, publish: true });
246
253
  const evidence = await client.getSessionEvidence();
247
- await client.tickle();
254
+ const tickleEvidence = await client.tickle();
248
255
  await client.renewBrokerageSession({ compete: false, publish: true });
249
256
  await client.logout();
250
257
  await client.close();
@@ -252,8 +259,10 @@ await client.close();
252
259
 
253
260
  Initialization and renewal pass both flags to IBKR once. Both flags must be exact booleans, and
254
261
  renewal only accepts `compete: false`. Invalid or missing flags fail before raw client access.
255
- `tickle()` is a safe read and can use the read scheduler retry policy. `logout()` makes at most one
256
- broker request for each client, including when that request fails. `close()` only closes local
262
+ `tickle()` is a safe read and can use the read scheduler retry policy. It returns the authentication,
263
+ connection, and competition evidence from the tickle response. Missing or malformed evidence stays
264
+ `null`. `logout()` makes at most one broker request for each client, including when that request
265
+ fails. `close()` only closes local
257
266
  admission. It does not invent a transport close operation and does not log out implicitly. After
258
267
  `close()`, the client rejects new lifecycle operations and broker requests.
259
268
 
@@ -536,6 +545,15 @@ normalized result includes paper/live environment, commission, initial and maint
536
545
  warnings, rejection reasons, and `submitted: false`. An incomplete nominal success fails closed.
537
546
  Permission metadata is diagnostic only; the What-If response remains authoritative.
538
547
 
548
+ ### Guarded US equity order execution
549
+
550
+ `resolveEquityContract(symbol)` must produce the exact contract before an order can be previewed.
551
+ `previewEquityOrder(...)` sends one What-If request and always returns `submitted: false`.
552
+ `submitEquityOrder(...)` accepts only BUY or SELL limit orders for positive whole-share quantities
553
+ and requires a stable client order ID. `cancelEquityOrder(...)` sends one cancellation request. These
554
+ broker writes never retry automatically. Warning, lifecycle, and recovery evidence use the same
555
+ strict normalization as single derivative orders.
556
+
539
557
  ### Guarded derivative order execution
540
558
 
541
559
  `IbkrClient` implements a separate `DerivativeExecutionClient` capability for callers that have
@@ -0,0 +1,4 @@
1
+ import type { EquityContract } from "../types.js";
2
+ /** Normalize one complete US equity identity without inferring missing contract facts. */
3
+ export declare function normalizeEquityContract(input: unknown): EquityContract | null;
4
+ //# sourceMappingURL=equityContract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"equityContract.d.ts","sourceRoot":"","sources":["../../src/ibkr/equityContract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAiBlD,0FAA0F;AAC1F,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,GAAG,IAAI,CA+B7E"}
@@ -0,0 +1,45 @@
1
+ const exactKeys = new Set([
2
+ "conid",
3
+ "assetClass",
4
+ "symbol",
5
+ "exchange",
6
+ "primaryExchange",
7
+ "currency",
8
+ ]);
9
+ function normalizedText(value, pattern) {
10
+ if (typeof value !== "string" || /[\r\n\t]/.test(value))
11
+ return null;
12
+ const normalized = value.trim().toUpperCase();
13
+ return pattern.test(normalized) ? normalized : null;
14
+ }
15
+ /** Normalize one complete US equity identity without inferring missing contract facts. */
16
+ export function normalizeEquityContract(input) {
17
+ if (typeof input !== "object" || input === null || Array.isArray(input))
18
+ return null;
19
+ const record = input;
20
+ if (Object.keys(record).some((key) => !exactKeys.has(key)))
21
+ return null;
22
+ const conid = record["conid"];
23
+ const symbol = normalizedText(record["symbol"], /^[A-Z0-9][A-Z0-9 .-]{0,31}$/);
24
+ const exchange = normalizedText(record["exchange"], /^[A-Z0-9][A-Z0-9._ -]{0,31}$/);
25
+ const primaryExchange = normalizedText(record["primaryExchange"], /^[A-Z0-9][A-Z0-9._ -]{0,31}$/);
26
+ const currency = normalizedText(record["currency"], /^[A-Z]{3}$/);
27
+ if (!Number.isSafeInteger(conid) ||
28
+ conid <= 0 ||
29
+ record["assetClass"] !== "STK" ||
30
+ symbol === null ||
31
+ exchange !== "SMART" ||
32
+ primaryExchange === null ||
33
+ currency !== "USD") {
34
+ return null;
35
+ }
36
+ return Object.freeze({
37
+ conid: conid,
38
+ assetClass: "STK",
39
+ symbol,
40
+ exchange: "SMART",
41
+ primaryExchange,
42
+ currency: "USD",
43
+ });
44
+ }
45
+ //# sourceMappingURL=equityContract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"equityContract.js","sourceRoot":"","sources":["../../src/ibkr/equityContract.ts"],"names":[],"mappings":"AAEA,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,OAAO;IACP,YAAY;IACZ,QAAQ;IACR,UAAU;IACV,iBAAiB;IACjB,UAAU;CACX,CAAC,CAAC;AAEH,SAAS,cAAc,CAAC,KAAc,EAAE,OAAe;IACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrE,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,OAAO,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;AACtD,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,uBAAuB,CAAC,KAAc;IACpD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrF,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAExE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,6BAA6B,CAAC,CAAC;IAC/E,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,8BAA8B,CAAC,CAAC;IACpF,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,8BAA8B,CAAC,CAAC;IAClG,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC,CAAC;IAElE,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC;QAC3B,KAAgB,IAAI,CAAC;QACtB,MAAM,CAAC,YAAY,CAAC,KAAK,KAAK;QAC9B,MAAM,KAAK,IAAI;QACf,QAAQ,KAAK,OAAO;QACpB,eAAe,KAAK,IAAI;QACxB,QAAQ,KAAK,KAAK,EAClB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,KAAK,EAAE,KAAe;QACtB,UAAU,EAAE,KAAK;QACjB,MAAM;QACN,QAAQ,EAAE,OAAO;QACjB,eAAe;QACf,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { IbkrOauth1Config } from "./oauthConfig.js";
2
- import type { AccountBalances, AccountSettlementEvidence, ContractTransactionEvidence, OptionSeriesReferenceEvidence, UnderlyingInstrumentReferenceEvidence, ActiveDerivativeOrder, AuthStatus, IbkrSessionEvidence, IbkrSessionLifecycleClient, BrokerAccountOrders, BrokerClient, BrokerInstrument, BrokerInstrumentSearchProjection, BrokerOrdersOptions, BrokerPosition, BrokerQuote, BrokerQuoteOptions, BrokerQuoteRequest, BrokerTransactionHistory, BrokerErrorDetail, DerivativeContract, DerivativeContractQuery, DerivativeComboExecutionRequest, DerivativeComboReconciliation, DerivativeComboReconciliationRequest, DerivativeComboPreviewRequest, DerivativeComboPreviewResult, DerivativeContingentChildOrderRequest, DerivativeContingentParentOrderRequest, DerivativeDiscoveryClient, DerivativeExecutionClient, DerivativeExecution, DerivativeExecutionQuery, DerivativeMultiOrderResult, DerivativeOrderGraphLookup, DerivativeOrderGraphRequest, DerivativeOrderGraphResult, DerivativeOrderGraphWarningContinuation, DerivativeOrderCancellationResult, DerivativeOrderCancelRequest, DerivativeOrderLifecycle, DerivativeOrderLookup, DerivativeOrderSubmissionResult, DerivativeSingleOrderRequest, DerivativePreviewClient, DerivativeExpiry, DerivativeExpiryQuery, DerivativeQuote, DerivativeReferenceQuote, OptionChainSnapshot, OptionContract, OptionDefinitionCache, OptionDiscoveryTelemetry, OptionMarketQuote, OptionStrikeRange, OptionQuoteRequest, OptionRight, PriceHistoryContractCandidate, PriceHistoryRequest, PriceHistoryResult, PriceHistoryTelemetry, TradingDiagnostics } from "../types.js";
2
+ import type { AccountBalances, AccountSettlementEvidence, ContractTransactionEvidence, OptionSeriesReferenceEvidence, UnderlyingInstrumentReferenceEvidence, ActiveDerivativeOrder, AuthStatus, IbkrSessionEvidence, IbkrSessionLifecycleClient, BrokerAccountOrders, BrokerClient, BrokerInstrument, BrokerInstrumentSearchProjection, BrokerOrdersOptions, BrokerPosition, BrokerQuote, BrokerQuoteOptions, BrokerQuoteRequest, BrokerTransactionHistory, BrokerErrorDetail, EquityContract, EquityOrderCancelRequest, EquityOrderPreviewRequest, EquityOrderPreviewResult, EquityOrderRequest, DerivativeContract, DerivativeContractQuery, DerivativeComboExecutionRequest, DerivativeComboReconciliation, DerivativeComboReconciliationRequest, DerivativeComboPreviewRequest, DerivativeComboPreviewResult, DerivativeContingentChildOrderRequest, DerivativeContingentParentOrderRequest, DerivativeDiscoveryClient, DerivativeExecutionClient, DerivativeExecution, DerivativeExecutionQuery, DerivativeMultiOrderResult, DerivativeOrderGraphLookup, DerivativeOrderGraphRequest, DerivativeOrderGraphResult, DerivativeOrderGraphWarningContinuation, DerivativeOrderCancellationResult, DerivativeOrderCancelRequest, DerivativeOrderLifecycle, DerivativeOrderLookup, DerivativeOrderSubmissionResult, DerivativeSingleOrderRequest, DerivativePreviewClient, DerivativeExpiry, DerivativeExpiryQuery, DerivativeQuote, DerivativeReferenceQuote, OptionChainSnapshot, OptionContract, OptionDefinitionCache, OptionDiscoveryTelemetry, OptionMarketQuote, OptionStrikeRange, OptionQuoteRequest, OptionRight, PriceHistoryContractCandidate, PriceHistoryRequest, PriceHistoryResult, PriceHistoryTelemetry, TradingDiagnostics } from "../types.js";
3
3
  import { type IbkrRequestSchedulerOptions, type IbkrRequestTelemetry } from "./requestScheduler.js";
4
4
  interface IbkrRequestInput {
5
5
  path: string;
@@ -111,11 +111,13 @@ export declare class IbkrClient implements BrokerClient, IbkrSessionLifecycleCli
111
111
  publish: boolean;
112
112
  }): Promise<void>;
113
113
  getSessionEvidence(): Promise<IbkrSessionEvidence>;
114
- tickle(): Promise<void>;
114
+ tickle(): Promise<AuthStatus>;
115
115
  logout(): Promise<void>;
116
116
  close(): Promise<void>;
117
117
  getAuthStatus(): Promise<AuthStatus>;
118
118
  getTradingDiagnostics(accountId: string): Promise<TradingDiagnostics>;
119
+ previewEquityOrder(request: EquityOrderPreviewRequest): Promise<EquityOrderPreviewResult>;
120
+ submitEquityOrder(request: EquityOrderRequest): Promise<DerivativeOrderSubmissionResult>;
119
121
  previewDerivativeCombo(request: DerivativeComboPreviewRequest): Promise<DerivativeComboPreviewResult>;
120
122
  submitDerivativeCombo(request: DerivativeComboExecutionRequest): Promise<DerivativeOrderSubmissionResult>;
121
123
  submitDerivativeSingleOrder(request: DerivativeSingleOrderRequest): Promise<DerivativeOrderSubmissionResult>;
@@ -178,6 +180,9 @@ export declare class IbkrClient implements BrokerClient, IbkrSessionLifecycleCli
178
180
  listActiveDerivativeOrders(accountId: string): Promise<ActiveDerivativeOrder[]>;
179
181
  getDerivativeExecutions(input: DerivativeExecutionQuery): Promise<DerivativeExecution[]>;
180
182
  reconcileDerivativeComboExecution(request: DerivativeComboReconciliationRequest): Promise<DerivativeComboReconciliation>;
183
+ getEquityOrderStatus(accountId: string, orderId: string): Promise<DerivativeOrderLifecycle>;
184
+ findEquityOrder(input: DerivativeOrderLookup): Promise<DerivativeOrderLifecycle>;
185
+ cancelEquityOrder(input: EquityOrderCancelRequest): Promise<DerivativeOrderCancellationResult>;
181
186
  cancelDerivativeOrder(input: DerivativeOrderCancelRequest): Promise<DerivativeOrderCancellationResult>;
182
187
  getAccountId(): Promise<string>;
183
188
  getAccountBalances(): Promise<AccountBalances>;
@@ -271,6 +276,8 @@ export declare class IbkrClient implements BrokerClient, IbkrSessionLifecycleCli
271
276
  getQuotes(requests: readonly BrokerQuoteRequest[], options?: BrokerQuoteOptions): Promise<Record<string, BrokerQuote>>;
272
277
  private fetchQuotes;
273
278
  /** Resolve equity/ETF symbols to IBKR contracts via `trsrv/stocks`. */
279
+ /** Resolve one exact SMART-routed US stock or ETF contract. */
280
+ resolveEquityContract(symbol: string): Promise<EquityContract>;
274
281
  searchInstruments(symbol: string, projection?: BrokerInstrumentSearchProjection): Promise<BrokerInstrument[]>;
275
282
  /**
276
283
  * Read the transaction activity IBKR states for named contracts, without ever
@@ -348,6 +355,8 @@ export declare class IbkrClient implements BrokerClient, IbkrSessionLifecycleCli
348
355
  private recoveryOrderMatchesGraphNode;
349
356
  private exactStatusTicketMatchesGraphNode;
350
357
  private terminalOrderMatchesGraphNode;
358
+ private validateEquityOrderFields;
359
+ private equityOrderTicket;
351
360
  private validateSingleOrder;
352
361
  private validateSingleOrderFields;
353
362
  private cmeOperatorMetadata;
@@ -1 +1 @@
1
- {"version":3,"file":"ibkrClient.d.ts","sourceRoot":"","sources":["../../src/ibkr/ibkrClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ibkrClient.d.ts","sourceRoot":"","sources":["../../src/ibkr/ibkrClient.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { createRequire } from "node:module";
2
2
  import { ASSET_CLASS_LABELS, toNullableNumber, toNumber } from "../helpers.js";
3
3
  import { normalizeOptionContract, parseOsiOptionSymbol } from "./optionContract.js";
4
+ import { normalizeEquityContract } from "./equityContract.js";
4
5
  import { normalizeDerivativeContract, normalizeDerivativeDataAvailability, } from "./derivativeContract.js";
5
6
  import { IbkrRequestScheduler, } from "./requestScheduler.js";
6
7
  // `ibkr-client`'s published ESM build is broken: its `import` condition points
@@ -506,7 +507,15 @@ export class IbkrClient {
506
507
  }
507
508
  async tickle() {
508
509
  this.assertOpen();
509
- await this.req({ path: "tickle", method: "POST" });
510
+ const response = await this.req({ path: "tickle", method: "POST" });
511
+ const iserver = isUnknownRecord(response) ? response["iserver"] : null;
512
+ const authStatus = isUnknownRecord(iserver) ? iserver["authStatus"] : null;
513
+ const status = isUnknownRecord(authStatus) ? authStatus : {};
514
+ return {
515
+ authenticated: this.booleanOrNull(status["authenticated"]),
516
+ competing: this.booleanOrNull(status["competing"]),
517
+ connected: this.booleanOrNull(status["connected"]),
518
+ };
510
519
  }
511
520
  async logout() {
512
521
  this.assertOpen();
@@ -572,6 +581,39 @@ export class IbkrClient {
572
581
  : [],
573
582
  };
574
583
  }
584
+ async previewEquityOrder(request) {
585
+ this.assertOpen();
586
+ this.validateEquityOrderFields(request);
587
+ return this.withTradingMutation(request.accountId, "IBKR brokerage session is not safely authenticated for What-If", async (diagnostics) => {
588
+ await this.req({
589
+ path: "iserver/marketdata/snapshot",
590
+ params: { conids: String(request.contract.conid), fields: "6509" },
591
+ });
592
+ const response = await this.singleAttemptRequest({
593
+ path: `iserver/account/${request.accountId}/orders/whatif`,
594
+ method: "POST",
595
+ data: { orders: [this.equityOrderTicket(request)] },
596
+ });
597
+ return this.normalizeComboPreview(request.accountId, diagnostics, response);
598
+ });
599
+ }
600
+ async submitEquityOrder(request) {
601
+ this.assertOpen();
602
+ this.validateEquityOrderFields(request);
603
+ if (!request.clientOrderId.trim() || request.clientOrderId.length > 64) {
604
+ throw new Error("Client order ID must contain 1 to 64 characters");
605
+ }
606
+ return this.withTradingMutation(request.accountId, "IBKR brokerage session is not safely authenticated for submission", async () => {
607
+ const response = await this.singleAttemptRequest({
608
+ path: `iserver/account/${request.accountId}/orders`,
609
+ method: "POST",
610
+ data: {
611
+ orders: [{ ...this.equityOrderTicket(request), cOID: request.clientOrderId }],
612
+ },
613
+ });
614
+ return this.normalizeOrderSubmission(response, request.clientOrderId);
615
+ });
616
+ }
575
617
  async previewDerivativeCombo(request) {
576
618
  this.assertOpen();
577
619
  this.validateComboPreview(request);
@@ -1578,6 +1620,15 @@ export class IbkrClient {
1578
1620
  await this.wait(Math.min(pollMs, Math.max(0, deadline - this.now())));
1579
1621
  }
1580
1622
  }
1623
+ getEquityOrderStatus(accountId, orderId) {
1624
+ return this.getDerivativeOrderStatus(accountId, orderId);
1625
+ }
1626
+ findEquityOrder(input) {
1627
+ return this.findDerivativeOrder(input);
1628
+ }
1629
+ cancelEquityOrder(input) {
1630
+ return this.cancelDerivativeOrder({ ...input, assetClass: "STK" });
1631
+ }
1581
1632
  async cancelDerivativeOrder(input) {
1582
1633
  this.assertOpen();
1583
1634
  if (!input.accountId.trim() || !input.orderId.trim()) {
@@ -1979,6 +2030,72 @@ export class IbkrClient {
1979
2030
  return quotes;
1980
2031
  }
1981
2032
  /** Resolve equity/ETF symbols to IBKR contracts via `trsrv/stocks`. */
2033
+ /** Resolve one exact SMART-routed US stock or ETF contract. */
2034
+ async resolveEquityContract(symbol) {
2035
+ this.assertOpen();
2036
+ const requestedSymbol = symbol.trim().toUpperCase();
2037
+ if (!requestedSymbol || /[\r\n\t]/.test(symbol)) {
2038
+ throw new Error("Equity contract resolution requires a usable symbol");
2039
+ }
2040
+ const response = await this.req({
2041
+ path: "trsrv/stocks",
2042
+ params: { symbols: requestedSymbol },
2043
+ });
2044
+ if (!isUnknownRecord(response)) {
2045
+ throw new Error("IBKR returned incomplete exact US equity search evidence");
2046
+ }
2047
+ const rawListings = response[requestedSymbol];
2048
+ if (!Array.isArray(rawListings)) {
2049
+ throw new Error("IBKR returned no exact US equity listing evidence");
2050
+ }
2051
+ const byConid = new Map();
2052
+ let conflicting = false;
2053
+ for (const rawListing of rawListings) {
2054
+ if (!isUnknownRecord(rawListing) || rawListing["assetClass"] !== "STK")
2055
+ continue;
2056
+ const contracts = rawListing["contracts"];
2057
+ if (!Array.isArray(contracts))
2058
+ continue;
2059
+ for (const rawContract of contracts) {
2060
+ if (!isUnknownRecord(rawContract) || rawContract["isUS"] !== true)
2061
+ continue;
2062
+ const conid = rawContract["conid"];
2063
+ const primaryExchange = this.trimmedString(rawContract["exchange"])?.toUpperCase();
2064
+ if (!Number.isSafeInteger(conid) || conid <= 0 || !primaryExchange)
2065
+ continue;
2066
+ const previous = byConid.get(conid);
2067
+ if (previous !== undefined && previous !== primaryExchange)
2068
+ conflicting = true;
2069
+ byConid.set(conid, primaryExchange);
2070
+ }
2071
+ }
2072
+ if (conflicting || byConid.size !== 1) {
2073
+ throw new Error("IBKR did not return one exact US equity listing");
2074
+ }
2075
+ const [candidate] = byConid;
2076
+ if (candidate === undefined)
2077
+ throw new Error("IBKR returned no exact US equity listing");
2078
+ const [conid, primaryExchange] = candidate;
2079
+ const evidence = this.contractReferenceEvidence(conid, await this.readContractReference(conid));
2080
+ const validExchanges = evidence.validExchanges
2081
+ ?.split(",")
2082
+ .map((value) => value.trim().toUpperCase())
2083
+ .filter(Boolean) ?? [];
2084
+ const contract = normalizeEquityContract({
2085
+ conid: evidence.conid,
2086
+ assetClass: evidence.instrumentType?.toUpperCase(),
2087
+ symbol: evidence.symbol,
2088
+ exchange: evidence.exchange,
2089
+ primaryExchange,
2090
+ currency: evidence.currency,
2091
+ });
2092
+ if (contract?.conid !== conid ||
2093
+ contract.symbol !== requestedSymbol ||
2094
+ !validExchanges.includes("SMART")) {
2095
+ throw new Error("IBKR equity contract details are incomplete or conflicting");
2096
+ }
2097
+ return contract;
2098
+ }
1982
2099
  async searchInstruments(symbol, projection = "symbol-search") {
1983
2100
  this.assertOpen();
1984
2101
  if (projection !== "symbol-search" && projection !== "search") {
@@ -2439,6 +2556,44 @@ export class IbkrClient {
2439
2556
  return false;
2440
2557
  }
2441
2558
  }
2559
+ validateEquityOrderFields(request) {
2560
+ if (!request.accountId.trim())
2561
+ throw new Error("An explicit IBKR account ID is required");
2562
+ if (normalizeEquityContract(request.contract) === null) {
2563
+ throw new Error("Equity order requires one exact US equity contract");
2564
+ }
2565
+ const fields = request;
2566
+ if (fields["side"] !== "BUY" && fields["side"] !== "SELL") {
2567
+ throw new Error("Equity order side must be BUY or SELL");
2568
+ }
2569
+ if (!Number.isSafeInteger(fields["quantity"]) || fields["quantity"] <= 0) {
2570
+ throw new Error("Equity order quantity must be a positive integer");
2571
+ }
2572
+ if (fields["orderType"] !== "LMT" ||
2573
+ typeof fields["limit"] !== "number" ||
2574
+ !Number.isFinite(fields["limit"]) ||
2575
+ fields["limit"] <= 0) {
2576
+ throw new Error("Equity LIMIT order requires a positive limit price");
2577
+ }
2578
+ if (fields["tif"] !== "DAY" && fields["tif"] !== "GTC") {
2579
+ throw new Error("Equity order TIF must be DAY or GTC");
2580
+ }
2581
+ if (fields["session"] !== "REGULAR" && fields["session"] !== "OVERNIGHT") {
2582
+ throw new Error("Equity order session must be REGULAR or OVERNIGHT");
2583
+ }
2584
+ }
2585
+ equityOrderTicket(request) {
2586
+ return {
2587
+ acctId: request.accountId,
2588
+ conid: request.contract.conid,
2589
+ orderType: "LMT",
2590
+ side: request.side,
2591
+ price: request.limit,
2592
+ tif: request.tif,
2593
+ quantity: request.quantity,
2594
+ outsideRTH: request.session === "OVERNIGHT",
2595
+ };
2596
+ }
2442
2597
  validateSingleOrder(request) {
2443
2598
  this.validateSingleOrderFields(request);
2444
2599
  const identityFields = request;
@@ -2489,7 +2644,7 @@ export class IbkrClient {
2489
2644
  }
2490
2645
  }
2491
2646
  cmeOperatorMetadata(assetClass, input) {
2492
- if (assetClass === "OPT")
2647
+ if (assetClass !== "FOP")
2493
2648
  return {};
2494
2649
  if (!input.extOperator?.trim() || input.manualIndicator === undefined) {
2495
2650
  throw new Error(`${assetClass} orders require exact CME operator metadata`);