public static OrderBook adaptOrders(BitZOrders bitZOrders, CurrencyPair currencyPair) { Date timestamp = DateUtils.fromMillisUtc(bitZOrders.getTimestamp()); List<LimitOrder> asks = new ArrayList<LimitOrder>(); List<LimitOrder> bids = new ArrayList<LimitOrder>(); for (BitZPublicOrder order : bitZOrders.getAsks()) { asks.add( new LimitOrder.Builder(OrderType.ASK, currencyPair) .averagePrice(order.getPrice()) .originalAmount(order.getVolume()) .build()); } for (BitZPublicOrder order : bitZOrders.getBids()) { bids.add( new LimitOrder.Builder(OrderType.BID, currencyPair) .averagePrice(order.getPrice()) .originalAmount(order.getVolume()) .build()); } return new OrderBook(timestamp, asks, bids); }
public static OpenOrders adaptOpenOrdersFromChildOrderResults( List<BitflyerQueryChildOrderResult> queryResults) { return new OpenOrders( queryResults .stream() .map( result -> new LimitOrder.Builder( adaptSide(result.getSide()), new CurrencyPair(result.getProductCode().replace("_", "/"))) .id(result.getChildOrderId()) .orderStatus(adaptOrderStatus(result.getChildOrderState())) .timestamp(BitflyerUtils.parseShortDate(result.getChildOrderDate())) .limitPrice(result.getPrice()) .averagePrice(result.getAveragePrice()) .originalAmount(result.getSize()) .remainingAmount(result.getOutstandingSize()) .cumulativeAmount(result.getExecutedSize()) .fee(result.getTotalCommission()) .build()) .collect(Collectors.toList())); }
public static Order adaptOrder(KucoinOrderDetail order) { OrderStatus status; if (order.getIsActive()) { status = order.getDealAmount().compareTo(BigDecimal.ZERO) == 0 ? OrderStatus.NEW : OrderStatus.PARTIALLY_FILLED; } else { status = order.getDealAmount().compareTo(BigDecimal.ZERO) == 0 ? OrderStatus.CANCELED : OrderStatus.FILLED; } return new LimitOrder.Builder( order.getType(), new CurrencyPair(order.getCoinType(), order.getCoinTypePair())) .id(order.getOrderOid()) .originalAmount(order.getDealAmount()) .remainingAmount(order.getPendingAmount()) .averagePrice(order.getDealPriceAverage()) .limitPrice(order.getOrderPrice()) .orderStatus(status) .build(); }
public static OpenOrders adaptOpenOrdersFromChildOrderResults( List<BitflyerQueryChildOrderResult> queryResults) { return new OpenOrders( queryResults.stream() .map( result -> new LimitOrder.Builder( adaptSide(result.getSide()), new CurrencyPair(result.getProductCode().replace("_", "/"))) .id(result.getChildOrderId()) .orderStatus(adaptOrderStatus(result.getChildOrderState())) .timestamp(BitflyerUtils.parseShortDate(result.getChildOrderDate())) .limitPrice(result.getPrice()) .averagePrice(result.getAveragePrice()) .originalAmount(result.getSize()) .remainingAmount(result.getOutstandingSize()) .cumulativeAmount(result.getExecutedSize()) .fee(result.getTotalCommission()) .build()) .collect(Collectors.toList())); }
public static Builder from(Order order) { Builder builder = (Builder) new Builder(order.getType(), order.getCurrencyPair()) .originalAmount(order.getOriginalAmount()) .cumulativeAmount(order.getCumulativeAmount()) .timestamp(order.getTimestamp()) .id(order.getId()) .flags(order.getOrderFlags()) .orderStatus(order.getStatus()) .averagePrice(order.getAveragePrice()); if (order instanceof LimitOrder) { LimitOrder limitOrder = (LimitOrder) order; builder.limitPrice(limitOrder.getLimitPrice()); } return builder; }
public static Builder from(Order order) { Builder builder = (Builder) new Builder(order.getType(), order.getCurrencyPair()) .originalAmount(order.getOriginalAmount()) .cumulativeAmount(order.getCumulativeAmount()) .timestamp(order.getTimestamp()) .id(order.getId()) .flags(order.getOrderFlags()) .orderStatus(order.getStatus()) .averagePrice(order.getAveragePrice()); if (order instanceof LimitOrder) { LimitOrder limitOrder = (LimitOrder) order; builder.limitPrice(limitOrder.getLimitPrice()); } return builder; }
protected LimitOrder mapKunaOrder2LimitOrder(KunaOrder kunaOrder, CurrencyPair currencyPair) { Order.OrderType orderType = kunaOrder.getOrderType() == KunaOrderType.LIMIT ? Order.OrderType.ASK : Order.OrderType.BID; LimitOrder.Builder builder = new LimitOrder.Builder(orderType, currencyPair); builder .id(String.valueOf(kunaOrder.getId())) .currencyPair(currencyPair) .timestamp(kunaOrder.getCreatedAt()) .orderStatus(Order.OrderStatus.NEW) .orderType(orderType) .averagePrice(kunaOrder.getAveragePrice()) .limitPrice(kunaOrder.getPrice()) .originalAmount(kunaOrder.getVolume()) .remainingAmount(kunaOrder.getRemainingVolume()) .cumulativeAmount(kunaOrder.getExecutedVolume()); return builder.build(); }
private LimitOrder mapOrder(CurrencyPair currencyPair, AcxOrder order) { OrderType type = mapOrderType(order); return new LimitOrder.Builder(type, currencyPair) .id(order.id) .limitPrice(order.price) .averagePrice(order.avgPrice) .timestamp(order.createdAt) .originalAmount(order.volume) .remainingAmount(order.remainingVolume) .cumulativeAmount(order.executedVolume) .orderStatus(mapOrderStatus(order.state)) .build(); }
public static LimitOrder adaptLimitOrder(AbucoinsOrder order) { return new LimitOrder.Builder( adaptOrderType(order.getSide()), adaptCurrencyPair(order.getProductID())) .averagePrice(order.getPrice()) .cumulativeAmount(order.getFilledSize()) .id(order.getId()) .limitPrice(order.getPrice()) .orderStatus(adaptOrderStatus(order.getStatus())) .originalAmount(order.getSize()) .remainingAmount(order.getSize().subtract(order.getFilledSize())) .timestamp(parseDate(order.getCreatedAt())) .build(); }
public static LimitOrder createOrder( CurrencyPair currencyPair, AbucoinsOrderBook.LimitOrder priceAndAmount, OrderType orderType) { return new LimitOrder.Builder(orderType, currencyPair) .averagePrice(priceAndAmount.getPrice()) .limitPrice(priceAndAmount.getPrice()) .orderStatus(OrderStatus.NEW) .originalAmount(priceAndAmount.getSize()) .build(); }