Search in sources :

Example 21 with Trades

use of org.knowm.xchange.dto.marketdata.Trades in project XChange by knowm.

the class CoinbeneMarketDataDemo method generic.

private static void generic(MarketDataService marketDataService) throws IOException {
    Ticker ticker = marketDataService.getTicker(CurrencyPair.BTC_USDT);
    System.out.println("BTC / USDT Ticker: " + ticker.toString());
    // Get the latest order book data for BTC/USD
    OrderBook orderBook = marketDataService.getOrderBook(CurrencyPair.BTC_USDT);
    System.out.println("Current Order Book size for BTC/USD: " + (orderBook.getAsks().size() + orderBook.getBids().size()));
    System.out.println("First Ask: " + orderBook.getAsks().get(0).toString());
    System.out.println("First Bid: " + orderBook.getBids().get(0).toString());
    System.out.println(orderBook.toString());
    // Get the latest trade data for BTC/USD
    Trades trades = marketDataService.getTrades(CurrencyPair.BTC_USDT);
    System.out.println("Trades, default. Size=" + trades.getTrades().size());
}
Also used : Trades(org.knowm.xchange.dto.marketdata.Trades) CoinbeneOrderBook(org.knowm.xchange.coinbene.dto.marketdata.CoinbeneOrderBook) OrderBook(org.knowm.xchange.dto.marketdata.OrderBook) Ticker(org.knowm.xchange.dto.marketdata.Ticker) CoinbeneTicker(org.knowm.xchange.coinbene.dto.marketdata.CoinbeneTicker)

Example 22 with Trades

use of org.knowm.xchange.dto.marketdata.Trades in project XChange by knowm.

the class YoBitMarketDataService method getTrades.

public Trades getTrades(PublicTradesRequestParams params) throws IOException {
    if (params instanceof MultiCurrencyPublicTradesDataRequestParams) {
        MultiCurrencyPublicTradesDataRequestParams multiCurrencyPublicTradesDataRequestParams = (MultiCurrencyPublicTradesDataRequestParams) params;
        YoBitTrades publicTrades = getPublicTrades(multiCurrencyPublicTradesDataRequestParams.currencyPairs);
        List<Trade> all = new ArrayList<>();
        Map<String, List<YoBitTrade>> tradesByCcyPair = publicTrades.getTrades();
        for (String ccyPair : tradesByCcyPair.keySet()) {
            CurrencyPair currencyPair = YoBitAdapters.adaptCurrencyPair(ccyPair);
            List<Trade> trades = YoBitAdapters.adaptTrades(tradesByCcyPair.get(ccyPair), currencyPair).getTrades();
            all.addAll(trades);
        }
        Collections.sort(all, new Comparator<Trade>() {

            @Override
            public int compare(Trade a, Trade b) {
                return a.getTimestamp().compareTo(b.getTimestamp());
            }
        });
        return new Trades(all, Trades.TradeSortType.SortByID);
    }
    throw new IllegalStateException("Don't understand " + params);
}
Also used : YoBitTrades(org.knowm.xchange.yobit.dto.marketdata.YoBitTrades) Trades(org.knowm.xchange.dto.marketdata.Trades) ArrayList(java.util.ArrayList) MultiCurrencyPublicTradesDataRequestParams(org.knowm.xchange.yobit.dto.MultiCurrencyPublicTradesDataRequestParams) Trade(org.knowm.xchange.dto.marketdata.Trade) YoBitTrade(org.knowm.xchange.yobit.dto.marketdata.YoBitTrade) ArrayList(java.util.ArrayList) List(java.util.List) YoBitTrades(org.knowm.xchange.yobit.dto.marketdata.YoBitTrades) CurrencyPair(org.knowm.xchange.currency.CurrencyPair)

Example 23 with Trades

use of org.knowm.xchange.dto.marketdata.Trades in project XChange by knowm.

the class MarketDataServiceIntegration method getTradesTest.

@Test
public void getTradesTest() throws Exception {
    Trades trades = marketDataService.getTrades(CurrencyPair.ETH_BTC);
    assertNotNull(trades);
    logger.info("Response: {}", trades);
}
Also used : Trades(org.knowm.xchange.dto.marketdata.Trades) Test(org.junit.Test)

Example 24 with Trades

use of org.knowm.xchange.dto.marketdata.Trades in project XChange by knowm.

the class BTCTradeAdapters method adaptTrades.

public static Trades adaptTrades(BTCTradeTrade[] btcTradeTrades, CurrencyPair currencyPair) {
    int length = btcTradeTrades.length;
    List<Trade> trades = new ArrayList<>(length);
    for (BTCTradeTrade btcTradeTrade : btcTradeTrades) {
        trades.add(adaptTrade(btcTradeTrade, currencyPair));
    }
    long lastID = length > 0 ? btcTradeTrades[length - 1].getTid() : 0L;
    return new Trades(trades, lastID, TradeSortType.SortByID);
}
Also used : BTCTradeTrade(org.knowm.xchange.btctrade.dto.marketdata.BTCTradeTrade) UserTrade(org.knowm.xchange.dto.trade.UserTrade) Trade(org.knowm.xchange.dto.marketdata.Trade) UserTrades(org.knowm.xchange.dto.trade.UserTrades) Trades(org.knowm.xchange.dto.marketdata.Trades) ArrayList(java.util.ArrayList) BTCTradeTrade(org.knowm.xchange.btctrade.dto.marketdata.BTCTradeTrade)

Example 25 with Trades

use of org.knowm.xchange.dto.marketdata.Trades in project XChange by knowm.

the class BTCTradeAdaptersTest method testAdaptTradesBTCTradeTradeArrayCurrencyPair.

@Test
public void testAdaptTradesBTCTradeTradeArrayCurrencyPair() throws IOException {
    BTCTradeTrade[] btcTradeTrades = mapper.readValue(getClass().getResource("dto/marketdata/trades.json"), BTCTradeTrade[].class);
    Trades trades = BTCTradeAdapters.adaptTrades(btcTradeTrades, CurrencyPair.BTC_CNY);
    List<Trade> tradeList = trades.getTrades();
    assertEquals(new Date(1403397140L * 1000L), tradeList.get(0).getTimestamp());
    assertEquals(new BigDecimal("3703"), tradeList.get(0).getPrice());
    assertEquals(new BigDecimal("3.50000000000"), tradeList.get(0).getOriginalAmount());
    assertEquals("2895575", tradeList.get(0).getId());
    assertEquals(OrderType.BID, tradeList.get(0).getType());
    assertEquals(new Date(1403397191L * 1000L), tradeList.get(1).getTimestamp());
    assertEquals(new BigDecimal("3704"), tradeList.get(1).getPrice());
    assertEquals(new BigDecimal("0.00200000000"), tradeList.get(1).getOriginalAmount());
    assertEquals("2895576", tradeList.get(1).getId());
    assertEquals(OrderType.BID, tradeList.get(1).getType());
    assertEquals(new Date(1403428819L * 1000L), tradeList.get(tradeList.size() - 2).getTimestamp());
    assertEquals(new BigDecimal("3740.01"), tradeList.get(tradeList.size() - 2).getPrice());
    assertEquals(new BigDecimal("0.01000000000"), tradeList.get(tradeList.size() - 2).getOriginalAmount());
    assertEquals("2896235", tradeList.get(tradeList.size() - 2).getId());
    assertEquals(OrderType.ASK, tradeList.get(tradeList.size() - 2).getType());
    assertEquals(new Date(1403428797L * 1000L), tradeList.get(tradeList.size() - 1).getTimestamp());
    assertEquals(new BigDecimal("3752"), tradeList.get(tradeList.size() - 1).getPrice());
    assertEquals(new BigDecimal("16.70000000000"), tradeList.get(tradeList.size() - 1).getOriginalAmount());
    assertEquals("2896239", tradeList.get(tradeList.size() - 1).getId());
    assertEquals(OrderType.BID, tradeList.get(tradeList.size() - 1).getType());
}
Also used : BTCTradeTrade(org.knowm.xchange.btctrade.dto.marketdata.BTCTradeTrade) Trade(org.knowm.xchange.dto.marketdata.Trade) Trades(org.knowm.xchange.dto.marketdata.Trades) Date(java.util.Date) BigDecimal(java.math.BigDecimal) BTCTradeTrade(org.knowm.xchange.btctrade.dto.marketdata.BTCTradeTrade) Test(org.junit.Test)

Aggregations

Trades (org.knowm.xchange.dto.marketdata.Trades)127 Trade (org.knowm.xchange.dto.marketdata.Trade)59 ArrayList (java.util.ArrayList)41 Test (org.junit.Test)41 UserTrade (org.knowm.xchange.dto.trade.UserTrade)36 UserTrades (org.knowm.xchange.dto.trade.UserTrades)30 MarketDataService (org.knowm.xchange.service.marketdata.MarketDataService)25 Exchange (org.knowm.xchange.Exchange)23 CurrencyPair (org.knowm.xchange.currency.CurrencyPair)23 BigDecimal (java.math.BigDecimal)20 Date (java.util.Date)17 OrderBook (org.knowm.xchange.dto.marketdata.OrderBook)15 Ticker (org.knowm.xchange.dto.marketdata.Ticker)15 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)13 OrderType (org.knowm.xchange.dto.Order.OrderType)12 InputStream (java.io.InputStream)10 LimitOrder (org.knowm.xchange.dto.trade.LimitOrder)9 List (java.util.List)7 TradeService (org.knowm.xchange.service.trade.TradeService)7 Order (org.knowm.xchange.dto.Order)6