/** * Adapts a CexIOTrade to a Trade Object * * @param trade CexIO trade object * @param currencyPair trade currencies * @return The XChange Trade */ public static Trade adaptTrade(CexIOTrade trade, CurrencyPair currencyPair) { BigDecimal amount = trade.getAmount(); BigDecimal price = trade.getPrice(); Date date = DateUtils.fromMillisUtc(trade.getDate() * 1000L); // Cex.IO API does not return trade type return new Trade(null, amount, currencyPair, price, date, String.valueOf(trade.getTid())); }
/** * Adapts a CexIOTrade[] to a Trades Object * * @param cexioTrades The CexIO trade data returned by API * @param currencyPair trade currencies * @return The trades */ public static Trades adaptTrades(CexIOTrade[] cexioTrades, CurrencyPair currencyPair) { List<Trade> tradesList = new ArrayList<Trade>(); long lastTradeId = 0; for (CexIOTrade trade : cexioTrades) { long tradeId = trade.getTid(); if (tradeId > lastTradeId) { lastTradeId = tradeId; } // Date is reversed order. Insert at index 0 instead of appending tradesList.add(0, adaptTrade(trade, currencyPair)); } return new Trades(tradesList, lastTradeId, TradeSortType.SortByID); }