Example #1
0
        public Contracts.OrderResponse BittrexOrderToOrderResponse(BittrexApi.NetCore.Entities.Order bittrexOrder)
        {
            Contracts.OrderStatus orderStatus;

            if (bittrexOrder.quantity == bittrexOrder.quantityRemaining)
            {
                orderStatus = Contracts.OrderStatus.Open;
            }
            else if (bittrexOrder.quantityRemaining > 0)
            {
                orderStatus = Contracts.OrderStatus.PartialFill;
            }
            else
            {
                orderStatus = Contracts.OrderStatus.Filled;
            }

            Contracts.Side side = bittrexOrder.orderType.Equals("LIMIT_BUY")
                ? Contracts.Side.Buy : Contracts.Side.Sell;

            var orderResponse = new Contracts.OrderResponse
            {
                FilledQuantity = bittrexOrder.quantity - bittrexOrder.quantityRemaining,
                OrderId        = bittrexOrder.orderId,
                OrderQuantity  = bittrexOrder.quantity,
                OrderStatus    = orderStatus,
                Price          = bittrexOrder.price,
                Side           = side,
                Pair           = bittrexOrder.pair
            };

            return(orderResponse);
        }
Example #2
0
        public Contracts.OrderResponse KuCoinOrderConverter(KuCoinApi.Net.Entities.Order order)
        {
            var orderResponse = new Contracts.OrderResponse
            {
                FilledQuantity = order.DealSize,
                OrderId        = order.Id,
                OrderQuantity  = order.Size,
                Price          = order.Price,
                Side           = order.Side.Equals("BUY") ? Contracts.Side.Buy : Contracts.Side.Sell,
                Pair           = order.Pair,
                TransactTime   = _dtHelper.UnixTimeToUTC(order.CreatedAt)
            };

            return(orderResponse);
        }
Example #3
0
        public Contracts.OrderResponse KuCoinOpenOrderDetailConverter(KuCoinApi.NetCore.Entities.OpenOrderDetail ood, string pair)
        {
            var orderResponse = new Contracts.OrderResponse
            {
                FilledQuantity = ood.filledQuantity,
                OrderId        = ood.orderId,
                OrderQuantity  = ood.quantity,
                Price          = ood.price,
                Side           = ood.type.Equals("BUY") ? Contracts.Side.Buy : Contracts.Side.Sell,
                Pair           = pair,
                TransactTime   = _dtHelper.UnixTimeToUTC(ood.timestamp)
            };

            return(orderResponse);
        }
Example #4
0
        public Contracts.OrderResponse KuCoinOrderListDetailConverter(KuCoinApi.NetCore.Entities.OrderListDetail old)
        {
            var orderResponse = new Contracts.OrderResponse
            {
                FilledQuantity = old.amount,
                OrderId        = old.orderOid,
                OrderQuantity  = old.amount,
                Price          = old.dealPrice,
                Side           = old.direction.Equals("BUY") ? Contracts.Side.Buy : Contracts.Side.Sell,
                Pair           = old.coinType + "-" + old.coinTypePair,
                TransactTime   = _dtHelper.UnixTimeToUTC(old.createdAt)
            };

            return(orderResponse);
        }
Example #5
0
        public Contracts.OrderResponse CoinbaseProOrderConverter(CoinbaseProApi.NetCore.Entities.Order order)
        {
            var orderResonse = new Contracts.OrderResponse
            {
                FilledQuantity = order.fill_size,
                OrderId        = order.id,
                OrderQuantity  = order.size,
                OrderStatus    = CoinbaseProOrderStatusConverter(order.status),
                Pair           = order.product_id,
                Price          = order.executed_value,
                Side           = CoinbaseProSideConverter(order.side),
                TransactTime   = order.crated_at.DateTime
            };

            return(orderResonse);
        }
Example #6
0
        public Contracts.OrderResponse CoinbaseProOrderResponseConverter(CoinbaseProApi.NetCore.Entities.OrderResponse cbResponse)
        {
            var orderResponse = new Contracts.OrderResponse
            {
                FilledQuantity = cbResponse.filled_size,
                OrderId        = cbResponse.id,
                OrderQuantity  = cbResponse.filled_size,
                OrderStatus    = CoinbaseProOrderStatusConverter(cbResponse.status),
                Pair           = cbResponse.product_id,
                Price          = cbResponse.price,
                Side           = CoinbaseProSideConverter(cbResponse.side),
                TransactTime   = cbResponse.created_at.DateTime
            };

            return(orderResponse);
        }
Example #7
0
        public Contracts.OrderResponse BinanceTradeResponseToOrderResponse(Binance.NetCore.Entities.TradeResponse tradeResponse)
        {
            var orderResponse = new Contracts.OrderResponse
            {
                FilledQuantity = tradeResponse.executedQty,
                OrderId        = tradeResponse.orderId.ToString(),
                OrderQuantity  = tradeResponse.origQty,
                OrderStatus    = BinanceOrderStatusConverter(tradeResponse.status),
                Price          = tradeResponse.price,
                Side           = BinanceSideConverter(tradeResponse.side),
                Pair           = tradeResponse.symbol,
                TransactTime   = _dtHelper.UnixTimeToUTC(tradeResponse.transactTime)
            };

            return(orderResponse);
        }
Example #8
0
        public Contracts.OrderResponse BittrexOpenOrderToOrderResponse(BittrexApi.NetCore.Entities.OpenOrder openOrder)
        {
            Contracts.OrderStatus orderStatus;

            if (openOrder.cancelInitiated)
            {
                orderStatus = Contracts.OrderStatus.Canceled;
            }
            else
            {
                if (openOrder.quantity == openOrder.quantityRemaining)
                {
                    orderStatus = Contracts.OrderStatus.Open;
                }
                else if (openOrder.quantityRemaining > 0)
                {
                    orderStatus = Contracts.OrderStatus.PartialFill;
                }
                else
                {
                    orderStatus = Contracts.OrderStatus.Filled;
                }
            }

            Contracts.Side side = openOrder.orderType.Equals("LIMIT_BUY")
                ? Contracts.Side.Buy : Contracts.Side.Sell;

            var orderResponse = new Contracts.OrderResponse
            {
                FilledQuantity = openOrder.quantity - openOrder.quantityRemaining,
                OrderId        = openOrder.orderId,
                OrderQuantity  = openOrder.quantity,
                OrderStatus    = orderStatus,
                Price          = openOrder.price,
                Side           = side,
                Pair           = openOrder.pair,
                TransactTime   = openOrder.opened
            };

            return(orderResponse);
        }