Ejemplo n.º 1
0
        private static void CancelOrdersByCriteria()
        {
            var tradeClient = new OrderClient(Config.AccessKey, Config.SecretKey);

            _logger.Start();
            var request = new CancelOrdersByCriteriaRequest
            {
                AccountId = Config.AccountId
            };
            var response = tradeClient.CancelOrdersByCriteriaAsync(request).Result;

            _logger.StopAndLog();

            switch (response.status)
            {
            case "ok":
            {
                if (response.data != null)
                {
                    var d = response.data;
                    AppLogger.Info($"Cancel success: {d.successCount}, fail: {d.failedCount}, next: {d.nextId}");
                }
                break;
            }

            case "error":
            {
                AppLogger.Info($"Cancel orders fail, error code: {response.errorCode}, error message: {response.errorMessage}");
                break;
            }
            }
        }
        /// <summary>
        /// Submit cancellation for multiple orders at once with given criteria.
        /// <para>Body data</para>
        /// <para>string errorCode</para>
        /// <para>string errorMessage</para>
        /// </summary>
        /// <param name="request"></param>
        /// <returns>CancelOrdersByCriteriaResponse</returns>
        public void CancelOrdersByCriteriaAsync(CancelOrdersByCriteriaRequest request,
                                                System.Action <CancelOrdersByCriteriaResponse.Body, string, string> action = null)
        {
            string url = _urlBuilder.Build(POST_METHOD, $"/v1/order/orders/batchCancelOpenOrders");

            HttpRequest.PostAsync <CancelOrdersByCriteriaResponse>(url, request.ToJson()).ContinueWith((task) => {
                if (action != null)
                {
                    var res = task.Result;
                    action(res.data, res.errorCode, res.errorMessage);
                }
            });
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Submit cancellation for multiple orders at once with given criteria.
        /// </summary>
        /// <param name="request"></param>
        /// <returns>CancelOrdersByCriteriaResponse</returns>
        public async Task <CancelOrdersByCriteriaResponse> CancelOrdersByCriteriaAsync(CancelOrdersByCriteriaRequest request)
        {
            string url = _urlBuilder.Build(POST_METHOD, $"/v1/order/orders/batchCancelOpenOrders");

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