thanks @guilledk for all that work from 2 years ago 😂
general cleanups / factoring in the API client
[x] don't think we need separate ._api, ._sapi, ._fapi
right? simply do the right endpoints parent call implicitly
based on venue selection?
factored and simplified in 24ef09a7
[x] futures live data feeds via ws api as per requirements in #519
[x] paper engine trading using these feeds alongside spot feeds
[x] ideally basic limit order control through emsd with accompanying tests
[x] live limits submission and group cancellation
daa1895..e54efb9
[x] drop OrderedDict usage? pretty sure with modern python
we don't need it any more
[x] dynamic swap to testnet user stream based on brokers.toml
config binance.futes.use_testnet: bool
~currently it's hardcoded..~
cdeee8d2, fbc15b96 (more or less XD)
[x] clearing processing with position update passthrough
easy enough just remapping the binance status set to our EMS
set :surfer:
[x] for now just relay the position values given directly from
binance via 'ACCOUNT_UPDATE' events from the user stream
(also see another bullet below.)
Replacement for #182 keeping as much of the work from @guilledk as possible!
This is the first proto which will begin to complete the tasks listed in #519 🏄🏼
More then likely I am going to rebase this onto #486 as well since I'm somewhat hoping that lands before this onto mainline.
ping @ebisu4
To defer to new issues/PRs
To CHERRY from downstream PRs that relate to this
.get_assets()
in.get_mkt_info()
ToDo Summary:
[x] adds first proto support for futures testnet endpoints, rest API and drafted functionality to support live order control via our EMS:
general cleanups / factoring in the API client
._api
,._sapi
,._fapi
right? simply do the right endpoints parent call implicitly based on venue selection?[x] futures live data feeds via ws api as per requirements in #519
[x] ideally basic limit order control through
emsd
with accompanying tests[x] live limits submission and group cancellation
daa1895..e54efb9
[x] drop
OrderedDict
usage? pretty sure with modern python we don't need it any more[x] dynamic swap to testnet user stream based on
brokers.toml
configbinance.futes.use_testnet: bool
~currently it's hardcoded..~
cdeee8d2, fbc15b96 (more or less XD)
[x] clearing processing with position update passthrough
easy enough just remapping the binance status set to our EMS set :surfer:
[x] for now just relay the position values given directly from binance via
'ACCOUNT_UPDATE'
events from the user stream (also see another bullet below.)[x] live order edit support
supported via 86c6e683
[x] position tracking?
can we defer this to a follow up?
[x] tracking via
binance
's native calcs: https://binance-docs.github.io/apidocs/futures/en/#event-balance-and-position-update[x] full dark order support
currently there's a precision bug (seemingly) on trigger where rounding isn't matched to binance's engine limit?
[x] existing live order loading
0705b8e4, d679f2a1
[x] load instead using trade endpoint https://binance-docs.github.io/apidocs/futures/en/#current-all-open-orders-user_data