providers_sync: required API updates and .brokers refinements #56

Merged
goodboy merged 15 commits from providers_sync into main 2026-01-07 18:23:14 +00:00

Various required 2025 data/broker backend updates according to breaking changes namely from binance’s data APIs (which they seem to break at least monthly).

This patch is now a re-factoring of related changes and replaces #40 with a follow up .brokers.ib change-set in suit as #59.


Indeed, included “for your pleasure” here is,

  • obviously tons of .binance API updates to prevent us from breaking on a piker chart..
  • a few .kraken (async, debug-tracing and API) “fixes”.
  • bit of typing updates (related to tractor.to_asyncio stuffs) for the .ib backend).
Various **required** 2025 data/broker backend updates according to breaking changes namely from `binance`'s data APIs (which they seem to break at least monthly). This patch is now a re-factoring of related changes and replaces #40 with a follow up `.brokers.ib` change-set in suit as #59. --- Indeed, included "for your pleasure" here is, - obviously tons of `.binance` API updates to prevent us from breaking on a `piker chart`.. - a few `.kraken` (async, debug-tracing and API) "fixes". - bit of typing updates (related to `tractor.to_asyncio` stuffs) for the `.ib` backend).
goodboy added 15 commits 2026-01-06 20:39:00 +00:00
9e7ad816d4 `.kraken`: add masked pauses for order req debug
Such that the next time i inevitably must debug the some order-request
error status or precision discrepancy, i have the mkt-symbol branch
ready to go. Also, switch to `'action': 'buy'|'sell' as action,` style
`case` matching instead of the post-`if` predicate style.
a578f7a21f Update `binance` spot pairs with `amendAllowed`
As per API updates,
https://developers.binance.com/docs/binance-spot-api-docs
https://developers.binance.com/docs/binance-spot-api-docs/faqs/order_amend_keep_priority

I also slightly tweaked the filed mismatch exception note to include the
`repr(pair_type)` so the dev can know which pair types should be
changed.
10a6f666b9 kraken: `Pair.costmin` is now optional?
Some pairs don't seem to define it but it's not listed as deprecated on
official API page (new one now linked in type def's doc string).
d1ecbd8142 kraken: add crash-handling around `Pair()` init
Since it can otherwise be difficult to debug due to nursery cancellation
(we need that taskman yo!).
16c73a0e5a binance: set `Pair.pegInstructionsAllowed = False`
Lol, a cheeky unforeseen bug due to TOML's lack of a null type and
thinking i can render an `Optional` field on a `msgspec.Struct`
(defaulted to `None`) the `binance.symcache.toml` cache file..

I didn't catch this when i first updated to the 3.1 API in f7caa75228
because i never did a cache-files flush.. lesson learned and we **really
need tests for this**!!
254bb57ecc binance: add `Pair.opoAllowed` field
Handle new API field per 2025-12-02 update.

(this patch was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code
goodboy force-pushed providers_sync from c1215ae21c to d66d1c1597 2026-01-07 02:46:14 +00:00 Compare
goodboy force-pushed providers_sync from d66d1c1597 to 9be8ca6097 2026-01-07 05:05:12 +00:00 Compare
goodboy merged commit d75c34d173 into main 2026-01-07 18:23:14 +00:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: pikers/piker#56
There is no content yet.