public async Task Test_TradeHistoryAsync() { const string symbol = "XBTUSD"; var request = new TradeHistoryMdRequest(symbol) { // From = Functions.FromUnixNano(1574162455620117000), // To = Functions.FromUnixNano(1574162518887000000), PageNumber = 2, Limit = 10, }; var mdRefresh = await _restClient.TradeHistoryAsync(request, _token).ConfigureAwait(false); mdRefresh.Symbol.Should().Be(symbol); mdRefresh.MDEntry.Should().HaveCountGreaterThan(0); var entry = mdRefresh.MDEntry[0]; entry.MDEntryType.Should().Be("2"); entry.TradeId.Should().NotBeNullOrWhiteSpace(); entry.TransactTime.Should().BeGreaterThan(0); entry.MDEntryPx.Should().NotBeNullOrWhiteSpace().And.NotBe("0"); entry.MDEntrySize.Should().NotBeNullOrWhiteSpace().And.NotBe("0"); Assert.Fail(mdRefresh.ToString()); }
private async Task TestTradeHistoryAsync(CancellationToken cancellationToken) { const string symbol = "XBTUSD"; var request = new TradeHistoryMdRequest(symbol) { // From = Functions.FromUnixNano(1574162455620117000), // To = Functions.FromUnixNano(1574162518887000000), PageNumber = 2, Limit = 10, }; var mdRefresh = await _restClient.TradeHistoryAsync(request, cancellationToken).ConfigureAwait(false); _logger.LogInformation($"Trade history response: {mdRefresh}"); }
public async Task <MarketDataRefresh> TradeHistoryAsync(TradeHistoryMdRequest request, CancellationToken cancellationToken = default) { Validator.NotNull(nameof(request), request); Validator.NotNullOrEmpty(nameof(request.Symbol), request.Symbol); var path = $"{TradesBasePath}/{request.Symbol}"; var parameters = new List <string>(); if (request.From.HasValue) { parameters.Add($"from={request.From.Value.ToUnixNano()}"); } if (request.To.HasValue) { parameters.Add($"to={request.To.Value.ToUnixNano()}"); } if (request.PageNumber.HasValue) { parameters.Add($"page={request.PageNumber}"); } if (request.Limit.HasValue) { parameters.Add($"limit={request.Limit}"); } string query = null; if (parameters.Count > 0) { query = string.Join("&", parameters); } return(await GetAsync <MarketDataRefresh>( path, query : query, cancellationToken : cancellationToken).ConfigureAwait(false)); }