示例#1
0
 public static BittrexStreamOrderData ToBittrexStreamOrder(this CryptoOrder orderData)
 {
     try
     {
         var bittrexStreamOrderData = new BittrexStreamOrderData
         {
             Order = new BittrexStreamOrder
             {
                 Market            = orderData.Market,
                 OrderType         = orderData.OrderType == CryptoOrderType.LimitBuy ? OrderSideExtended.LimitBuy : OrderSideExtended.LimitSell,
                 Price             = orderData.Price.RoundSatoshi(),
                 Quantity          = orderData.Quantity.RoundSatoshi(),
                 PricePerUnit      = orderData.PricePerUnit.RoundSatoshi(),
                 CommissionPaid    = orderData.CommissionPaid.RoundSatoshi(),
                 CancelInitiated   = orderData.Canceled,
                 Uuid              = new Guid(orderData.Uuid),
                 Opened            = orderData.Opened,
                 Closed            = orderData.Closed,
                 Limit             = orderData.PricePerUnit.RoundSatoshi(),
                 QuantityRemaining = orderData.QuantityRemaining.RoundSatoshi()
             }
         };
         return(bittrexStreamOrderData);
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
         return(null);
     }
 }
示例#2
0
        public static CryptoOrder ToCryptoOrder(this BittrexStreamOrderData closedOrderData)
        {
            var closedOrder = closedOrderData.Order;

            Console.WriteLine(closedOrder.OrderId);
            return(new CryptoOrder
            {
                Market = closedOrder.Market,
                OrderType = closedOrder.OrderType == OrderSideExtended.LimitBuy ? CryptoOrderType.LimitBuy : CryptoOrderType.LimitSell,
                Price = closedOrder.Price.RoundSatoshi(),
                Quantity = closedOrder.Quantity.RoundSatoshi(),
                PricePerUnit = closedOrder.Limit.RoundSatoshi(),
                CommissionPaid = closedOrder.CommissionPaid.RoundSatoshi(),
                Canceled = closedOrder.CancelInitiated,
                Uuid = closedOrder.OrderId.ToString(),
                Opened = closedOrder.Opened,
                Closed = closedOrder.Closed.GetValueOrDefault(),
                Limit = closedOrder.Limit.RoundSatoshi(),
                QuantityRemaining = closedOrder.QuantityRemaining.RoundSatoshi()
            });
        }
示例#3
0
 protected void OnOrderUpdate(BittrexStreamOrderData bittrexOrder)
 {
     OrderUpdated.OnNext(bittrexOrder.ToCryptoOrder());
 }