コード例 #1
0
        /// <summary>
        /// Submits a new request to cancel this order
        /// </summary>
        public OrderResponse Cancel(string tag = null)
        {
            var request = new CancelOrderRequest(_transactionManager.UtcTime, OrderId, tag);

            _transactionManager.ProcessRequest(request);
            return(CancelRequest.Response);
        }
コード例 #2
0
ファイル: OrderTicket.cs プロジェクト: zukobronja/Lean
        /// <summary>
        /// Submits a new request to cancel this order
        /// </summary>
        public OrderResponse Cancel(string tag = null)
        {
            var request = new CancelOrderRequest(_transactionManager.UtcTime, OrderId, tag);

            lock (_cancelRequestLock)
            {
                // don't submit duplicate cancel requests
                if (_cancelRequest != null)
                {
                    return(OrderResponse.Error(request, OrderResponseErrorCode.RequestCanceled, $"Order {OrderId} has already received a cancellation request."));
                }
            }

            _transactionManager.ProcessRequest(request);

            lock (_cancelRequestLock)
            {
                if (_cancelRequest != null)
                {
                    return(_cancelRequest.Response);
                }
            }

            throw new ArgumentException("CancelRequest is null.");
        }
コード例 #3
0
        /// <summary>
        /// Submits a new request to cancel this order
        /// </summary>
        public OrderResponse Cancel(string tag = null)
        {
            var request = new CancelOrderRequest(_transactionManager.UtcTime, OrderId, tag);

            _transactionManager.ProcessRequest(request);

            lock (_cancelRequestLock)
            {
                if (_cancelRequest != null)
                {
                    return(_cancelRequest.Response);
                }
            }

            throw new ArgumentException("CancelRequest is null.");
        }