Exemple #1
0
        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);
            }
        }