Skip to content

Fix/ibkr forex contract resolution#345

Open
jalilsedna wants to merge 2 commits into
TraderAlice:masterfrom
jalilsedna:fix/ibkr-forex-contract-resolution
Open

Fix/ibkr forex contract resolution#345
jalilsedna wants to merge 2 commits into
TraderAlice:masterfrom
jalilsedna:fix/ibkr-forex-contract-resolution

Conversation

@jalilsedna

Copy link
Copy Markdown

Fix/ibkr forex contract resolution

jalilsedna and others added 2 commits June 13, 2026 17:57
Comment out the VOLUME instruction for /data in Dockerfile.
placeOrder sent bare { conId, symbol } contracts to TWS with a naive
SMART/USD default, so forex (CASH/IDEALPRO, e.g. USDCHF) was rejected
with "error 200: No security definition has been found". getQuote already
resolved the same input correctly via reqContractDetails.

Extract that resolution into a shared resolveFullContract() and call it
from both placeOrder (inside the try, so a resolution failure returns a
clean error and never places a naked order) and getQuote, so the quote
and order paths can no longer diverge. CASH defaults to IDEALPRO, all
else to SMART; conId-without-secType round-trips through getContractDetails
once and is cached.

The attached TP/SL (bracket) refusal is unchanged - FX flow stays
entry-first, then standalone protective orders.

Tests: Case A (bare USDCHF conId -> CASH/IDEALPRO/USD.CHF, matches
getContractDetails), Case B (typed AAPL STK passes through unchanged, no
round-trip).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 15, 2026

Copy link
Copy Markdown

@jalilsedna is attempting to deploy a commit to the luokerenx4's Team Team on Vercel.

A member of the Team first needs to authorize it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant