public void Equality() { var symbol = Symbol.BTC_USDT; const CandlestickInterval interval = CandlestickInterval.Hour; var openTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); const decimal open = 4950; const decimal high = 5100; const decimal low = 4900; const decimal close = 5050; const decimal volume = 1000; var closeTime = DateTimeOffset.FromUnixTimeMilliseconds(openTime).AddHours(1).ToUnixTimeMilliseconds(); const long quoteAssetVolume = 5000000; const int numberOfTrades = 555555; const decimal takerBuyBaseAssetVolume = 4444; const decimal takerBuyQuoteAssetVolume = 333; var candlestick = new Candlestick(symbol, interval, openTime, open, high, low, close, volume, closeTime, quoteAssetVolume, numberOfTrades, takerBuyBaseAssetVolume, takerBuyQuoteAssetVolume); var serializer = new CandlestickSerializer(); var json = serializer.Serialize(candlestick); var other = serializer.Deserialize(json); Assert.True(candlestick.Equals(other)); }
/// <summary> /// Get a candle /// </summary> /// <param name="symbol">currency</param> /// <param name="interval">period</param> /// <param name="limit">quantity. default 100</param> /// <returns></returns> public IEnumerable <Candlestick> GetCandleStick(string symbol, string interval, int limit = 100) { string apiRequestUrl = $"{baseUrl}v1/klines"; string query = $"symbol={symbol}&interval={interval}&limit={limit}"; apiRequestUrl += "?" + query; string response = request.webRequest(apiRequestUrl, "GET", SettingsAPI.ApiKey); System.Console.WriteLine("GetCandleStick"); CandlestickSerializer candlestick = new CandlestickSerializer(symbol, interval); return(candlestick.DeserializeMany(response)); }