public bool RefundOrder(UserTradeOrder aOrder, string aAddress, bool aUseProxy = true) { if (!IsCredentialsSet) { throw new Exception("No Credentials were set"); } if (aOrder.Status == OrderStatus.Withdrawn) { return(false); } PoloniexClientOptions lPoloniexClientOptions = new PoloniexClientOptions() { Proxy = PandoraProxy.GetApiProxy(), ApiCredentials = new ApiCredentials(FUserCredentials.Item1, FUserCredentials.Item2) }; using (PoloniexClient lClient = aUseProxy ? new PoloniexClient(lPoloniexClientOptions) : new PoloniexClient()) { var lResponse = lClient.Withdraw(aOrder.Market.SellingCurrencyInfo.Ticker, aOrder.SentQuantity, aAddress); if (!lResponse.Success) { throw new Exception("Failed to refund order. Error message:" + lResponse.Error.Message); } if (!string.IsNullOrEmpty(lResponse.Data.error)) { throw new Exception($"Failed to refund order. Error message: {lResponse.Data.error}"); } } return(true); }