コード例 #1
0
        /// <summary>
        /// Submit cancellation for multiple orders at once with given ids
        /// <para>Body data</para>
        /// <para>string errorCode</para>
        /// <para>string errorMessage</para>
        /// </summary>
        /// <param name="request"></param>
        /// <returns>CancelOrdersByIdsResponse</returns>
        public void CancelOrdersByIdsAsync(CancelOrdersByIdsRequest request,
                                           System.Action <CancelOrdersByIdsResponse.Body, string, string> action = null)
        {
            string url = _urlBuilder.Build(POST_METHOD, $"/v1/order/orders/batchcancel");

            HttpRequest.PostAsync <CancelOrdersByIdsResponse>(url, request.ToJson()).ContinueWith((task) => {
                if (action != null)
                {
                    var res = task.Result;
                    action(res.data, res.errorCode, res.errorMessage);
                }
            });
        }
コード例 #2
0
        private static void CancelOrdersByIds()
        {
            var tradeClient = new OrderClient(Config.AccessKey, Config.SecretKey);

            _logger.Start();
            string[] orderIds = { "1", "2" };
            var      request  = new CancelOrdersByIdsRequest
            {
                OrderIds = orderIds
            };
            var response = tradeClient.CancelOrdersByIdsAsync(request).Result;

            _logger.StopAndLog();

            switch (response.status)
            {
            case "ok":
            {
                if (response.data != null)
                {
                    if (response.data.success != null)
                    {
                        foreach (string s in response.data.success)
                        {
                            AppLogger.Info($"Cancel success: {s}");
                        }
                    }
                    if (response.data.failed != null)
                    {
                        foreach (var f in response.data.failed)
                        {
                            string id = !string.IsNullOrWhiteSpace(f.orderId) ? f.orderId : f.clientOrderId;

                            AppLogger.Info($"Cancel fail, id: {id}, error: {f.errorMessage}");
                        }
                    }
                }
                break;
            }

            case "error":
            {
                AppLogger.Info($"Cancel orders fail, error code: {response.errorCode}, error message: {response.errorMessage}");
                break;
            }
            }
        }
コード例 #3
0
ファイル: OrderClient.cs プロジェクト: kings425/huobi_CSharp
        /// <summary>
        /// Submit cancellation for multiple orders at once with given ids
        /// </summary>
        /// <param name="request"></param>
        /// <returns>CancelOrdersByIdsResponse</returns>
        public async Task <CancelOrdersByIdsResponse> CancelOrdersByIdsAsync(CancelOrdersByIdsRequest request)
        {
            string url = _urlBuilder.Build(POST_METHOD, $"/v1/order/orders/batchcancel");

            return(await HttpRequest.PostAsync <CancelOrdersByIdsResponse>(url, request.ToJson()));
        }