Skip to content

Position/order rows show instrument long-name + primary exchange (contract-details lookup) #340

@rudyll

Description

@rudyll

Context: Follow-up to #335 — the symbol-first display landed there, and the richer display (company / instrument long-name, primary exchange) was intentionally deferred to a fresh issue. This is that issue.

Location: ui/src/lib/contract-display.tsx plus the position/order row renderers (ui/src/pages/UTADetailPage.tsx, ui/src/pages/TradingPage.tsx). A contract-details lookup is not currently joined into row rendering — rows only have what the position/order payload carries (symbol, secType, conId).

Impact: A bare AAPL row is fine for US single-listings, but for HK numeric codes, dual-listed names, and options the symbol + secType alone don't tell you what you're holding at a glance. Long-name + primary exchange disambiguates:

  • 00700 → Tencent Holdings · SEHK
  • AAPL → Apple Inc · NASDAQ
  • (and options/futures rows become readable instead of a bare root + secType)

Suggested fix: Wire a cached contract-details lookup into the row builder so each row can render <longName> · <exchange> alongside the symbol, keeping connector|conid in the hover tooltip (unchanged from #335). Cache by conId / aliceId so the lookup stays off the hot render path and survives re-renders.

Acceptance:

(Filed by FUDI — same shop as #294 / #295 / #314 / #208. Happy to test on our HK+US mixed paper book once it lands.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions