exchanges/ftx: Order improvements: submission + websocket reports (#741)

* exchanges/ftx: add support for ReduceOnly, ImmediateOrCancel and PostOnly orders

* exchanges/ftx: adapt tests to ReduceOnly/ImmediateOrCancel/PostOnly boolean flags

* exchanges/ftx: wrong json key of WsFillsDataStore.FillsData was causing json.Unmarshal() to yield an empty struct

* exchanges/ftx: update WsFills to latest API

* exchanges/ftx: add TestFTX_wsHandleData_wsFills

* exchanges/ftx: WsOrders.FilledSize was never parsed properly because of a key error (was spelled `filedSize` -- with one L);  enrich data structure to support latest API fields

* exchanges/ftx: when order is closed, set status to closed, not canceled

* exchanges/ftx: compatibleOrderVars: compare floats for almost-equality

* order.Detail: add field: AverageExecutedPrice float64

* exchanges/ftx: FTX.wsHandleData() now populates all order.Detail fields properly on update/orders websocket message

* exchanges/ftx: implement TestFTX_wsHandleData_Details()

* exchanges/ftx: make golangci-lint happy

* exchanges/ftx: make golangci-lint happy

* exchanges/ftx/test: delete redundant commented code

* exchanges/ftx: move websocket tests from ftx_test.go to ftx_websocket_test.go

* exchanges/ftx: remove redundant line

* exchange/ftx: greatly simplify TestFTX_wsHandleData (thanks to @shazbert)

* exchanges/ftx: make golangci-lint/whitespace happy

* exchanges/ftx: requested review change: delete a redundant line

* exchanges/ftx/test: use predefined currency constants
This commit is contained in:
Yordan Miladinov
2021-08-11 03:28:47 +03:00
committed by GitHub
parent 232d6ebc1f
commit c7c8cac21f
7 changed files with 477 additions and 297 deletions

View File

@@ -578,9 +578,9 @@ func (f *FTX) SubmitOrder(s *order.Submit) (order.SubmitResponse, error) {
tempResp, err := f.Order(fPair.String(),
s.Side.Lower(),
s.Type.Lower(),
"",
"",
"",
s.ReduceOnly,
s.ImmediateOrCancel,
s.PostOnly,
s.ClientOrderID,
s.Price,
s.Amount)