From f4183aaa646d6f0f208d3dc8c22323cfff1f518f Mon Sep 17 00:00:00 2001 From: nntaoli <2767415655@qq.com> Date: Sun, 28 Feb 2021 19:51:45 +0800 Subject: [PATCH] [binance] calculate the order average price --- binance/Binance.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/binance/Binance.go b/binance/Binance.go index 01bbcdf8..e0c82615 100644 --- a/binance/Binance.go +++ b/binance/Binance.go @@ -651,15 +651,22 @@ func (bn *Binance) adaptOrder(currencyPair CurrencyPair, orderMap map[string]int orderSide = BUY } + quoteQty := ToFloat64(orderMap["cummulativeQuoteQty"]) + qty := ToFloat64(orderMap["executedQty"]) + avgPrice := 0.0 + if qty > 0 { + avgPrice = FloatToFixed(quoteQty/qty, 8) + } + return Order{ OrderID: ToInt(orderMap["orderId"]), - OrderID2: fmt.Sprintf("%.0f",orderMap["orderId"]), + OrderID2: fmt.Sprintf("%.0f", orderMap["orderId"]), Cid: orderMap["clientOrderId"].(string), Currency: currencyPair, Price: ToFloat64(orderMap["price"]), Amount: ToFloat64(orderMap["origQty"]), DealAmount: ToFloat64(orderMap["executedQty"]), - AvgPrice: FloatToFixed(ToFloat64(orderMap["cummulativeQuoteQty"])/ToFloat64(orderMap["executedQty"]), 8), + AvgPrice: avgPrice, Side: TradeSide(orderSide), Status: adaptOrderStatus(orderMap["status"].(string)), OrderTime: ToInt(orderMap["time"]),