public async Task GetUserTrades() { _fakeHttpMessageHandler.HandleRequestAsync = TestHelper.HandleContent(form => { Assert.Equal("BTC_USD", form["pair"]); Assert.Equal("100", form["limit"]); Assert.Equal("0", form["offset"]); }); _fakeHttpMessageHandler.ResponseMessage = new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent("{\"BTC_USD\":[{\"trade_id\":148003689,\"date\":1581882677,\"type\":\"buy\",\"pair\":\"BTC_USD\",\"order_id\":1234567890,\"quantity\":\"0.001\",\"price\":\"9750\",\"amount\":\"9.75\",\"exec_type\":\"\",\"commission_amount\":\"\",\"commission_currency\":\"\",\"commission_percent\":\"\"},{\"trade_id\":165608613,\"date\":1587673041,\"type\":\"sell\",\"pair\":\"BTC_USD\",\"order_id\":6245847935,\"quantity\":\"0.001321\",\"price\":\"7568.78\",\"amount\":\"9.99835839\",\"parent_order_id\":507061382318915832,\"exec_type\":\"taker\",\"commission_amount\":\"0.01999671\",\"commission_currency\":\"USD\",\"commission_percent\":\"0.2\"}]}") }; var request = new UserTradesRequest { Pairs = new CurrencyPairCollection("BTC_USD") }; var userTrades = await _authenticatedApi.GetUserTradesAsync(request); var btcUsd = userTrades["BTC_USD"]; Assert.Equal(2, btcUsd.Length); Assert.Equal(148003689, btcUsd[0].TradeId); Assert.Equal(1581882677, btcUsd[0].Date.ToUnixTimeSeconds()); Assert.Equal(TradeType.Buy, btcUsd[0].Type); Assert.Equal(1234567890, btcUsd[0].OrderId); Assert.Equal(0.001m, btcUsd[0].Quantity); Assert.Equal(9750m, btcUsd[0].Price); Assert.Equal(9.75m, btcUsd[0].Amount); Assert.Null(btcUsd[0].ParentOrderId); Assert.Null(btcUsd[0].ExecutionType); Assert.Null(btcUsd[0].CommissionAmount); Assert.Null(btcUsd[0].CommissionPercent); Assert.Empty(btcUsd[0].CommissionCurrency); Assert.Equal(165608613, btcUsd[1].TradeId); Assert.Equal(1587673041, btcUsd[1].Date.ToUnixTimeSeconds()); Assert.Equal(TradeType.Sell, btcUsd[1].Type); Assert.Equal(6245847935, btcUsd[1].OrderId); Assert.Equal(0.001321m, btcUsd[1].Quantity); Assert.Equal(7568.78m, btcUsd[1].Price); Assert.Equal(9.99835839m, btcUsd[1].Amount); Assert.Equal(507061382318915832, btcUsd[1].ParentOrderId); Assert.Equal(ExecutionType.Taker, btcUsd[1].ExecutionType); Assert.Equal(0.01999671m, btcUsd[1].CommissionAmount); Assert.Equal(0.2m, btcUsd[1].CommissionPercent); Assert.Equal("USD", btcUsd[1].CommissionCurrency); }
public Task <CurrencyPairDictionary <OrderTrade[]> > GetUserTradesAsync(UserTradesRequest request, CancellationToken cancellationToken = default) { return(_client.PostAsync <CurrencyPairDictionary <OrderTrade[]> >("user_trades", request, cancellationToken)); }