Skip to content

v0.28.0

Choose a tag to compare

@github-actions github-actions released this 12 Sep 13:42
· 3 commits to main since this release

v0.28.0

This release fixes incorrect market routing, fractional execution loss, incomplete account responses, and missing continuation support. It also adds LS common order management for tracked domestic orders.

Upgrade notes

  • Balance availability: unsupported metrics are listed in unavailable_fields and omitted from HTTP JSON instead of being reported as zero or filled with a different financial metric. Go callers must check UnavailableFields. This affects Toss cash/withdrawable cash/total assets and LS cash/buying power/withdrawable cash. LS total assets now use the provider's estimated net assets.
  • Account summaries: /accounts/summary returns HTTP 503 without partial totals when any account fails or cannot supply a required aggregate metric.
  • Fractional quantities: prefer filled_quantity_decimal, remaining_quantity_decimal, and fill quantity_decimal when present. Whole-share compatibility fields remain available.
  • LS raw Go responses: numeric values are decoded as json.Number to preserve large order identifiers and quantities. HTTP values remain JSON numbers.
  • LS order management: cancel, modify, order lookup, and fills are available for domestic orders placed through this account's common API with recorded credentials and the same Korean trading date. Unknown or prior-day orders are rejected; use the raw APIs for other scopes. Cancellation acceptance is not confirmation of completion.

See the common API contract for migration details and pagination examples.

Fixes and additions

  • KIS domestic placement, modification, and cancellation forward the requested exchange with current TR identifiers. Unsupported sandbox venues are rejected.
  • KIS overseas candles use the correct overseas endpoint. Date-range queries paginate with explicit limits, and position-source failures no longer become successful empty holdings. The documented sandbox bond limitation is handled separately.
  • Restore 106 optional KIS request properties in generated SDK types and OpenAPI documentation.
  • Kiwoom quote and chart requests use venue-specific NXT/SOR symbols, validate conflicting inputs, and use documented account query and withdrawal fields.
  • Add optional Go page interfaces and HTTP continuation headers for Kiwoom and LS while retaining existing raw response bodies. Common holdings and chart queries reject incomplete traversals; Kiwoom charts stop once the requested range or limit is covered.
  • Preserve Toss fractional executions and calculate remaining quantities without a floating-point round trip. Daily changes use the previous trading-session close in the exchange's timezone.
  • Correct Toss and LS balance field meanings and propagate upstream failures.
  • Add LS account, credential, and trading-date guards for common order management, exact order identifiers, and bounded order/fill history traversal.
  • Prevent failed or delayed LS reauthentication and stale automatic refreshes from replacing the active account identity or token.

KIS, Kiwoom, and Toss WebSocket support and Kiwoom common US/minute-chart expansion remain outside this release.

Validation

  • Full race-enabled test suite, plus an additional LS race suite after the final authentication changes.
  • Static analysis, vet, binary build, generated broker spec checks, and OpenAPI consistency checks.
  • Isolated build of the existing kis-requester consumer against this library.
  • Regression tests use local mocked providers; no live orders were submitted.

Full changelog: v0.27.0...v0.28.0