public async Task PostOrder(BitMexLimitOrder order) { var urlPath = $"/{_baseApiPath}/order"; var url = $"{_domain}{urlPath}"; dynamic payload = new { symbol = order.Symbol, ordType = "Limit", price = BitMexPriceConverter.Convert(order.Price, order.Symbol), orderQty = order.Size, clOrdID = order.OrderId, side = order.Size > 0 ? "Buy" : "Sell", }; string content = JsonConvert.SerializeObject(payload); using (var client = new HttpClient()) { AddBitMexHeaders(client, HttpMethod.Post, urlPath, content); var response = await client.PostAsync(url, new StringContent(content, Encoding.UTF8, "application/json")).ConfigureAwait(false); response.EnsureSuccessStatusCode(); } }
public async Task <bool> SetOrder(BitMexLimitOrder order) { try { await _restClient.PostOrder(order); return(true); } catch (Exception e) { _logger.Error(e.ToString()); return(false); } }