package org.knowm.xchange.examples.independentreserve.marketdata; import java.io.IOException; import org.knowm.xchange.Exchange; import org.knowm.xchange.ExchangeFactory; import org.knowm.xchange.currency.Currency; import org.knowm.xchange.currency.CurrencyPair; import org.knowm.xchange.dto.marketdata.OrderBook; import org.knowm.xchange.independentreserve.IndependentReserveExchange; import org.knowm.xchange.independentreserve.dto.marketdata.IndependentReserveOrderBook; import org.knowm.xchange.independentreserve.service.IndependentReserveMarketDataServiceRaw; import org.knowm.xchange.service.marketdata.MarketDataService; /** * Author: Kamil Zbikowski Date: 4/9/15 Demonstrate requesting Depth at Independent Reserve */ public class DepthDemo { public static void main(String[] args) throws IOException { // Use the factory to get IndependentReserve exchange API using default settings Exchange independentReserve = ExchangeFactory.INSTANCE.createExchange(IndependentReserveExchange.class.getName()); // Interested in the public market data feed (no authentication) MarketDataService marketDataService = independentReserve.getMarketDataService(); generic(marketDataService); raw((IndependentReserveMarketDataServiceRaw) marketDataService); } private static void generic(MarketDataService marketDataService) throws IOException { // Get the latest order book data for BTC/USD OrderBook orderBook = marketDataService.getOrderBook(CurrencyPair.BTC_USD); 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("Last Ask: " + orderBook.getAsks().get(orderBook.getAsks().size() - 1).toString()); System.out.println("First Bid: " + orderBook.getBids().get(0).toString()); System.out.println("Last Bid: " + orderBook.getBids().get(orderBook.getBids().size() - 1).toString()); System.out.println(orderBook.toString()); } private static void raw(IndependentReserveMarketDataServiceRaw marketDataService) throws IOException { // Get the latest order book data for BTC/USD IndependentReserveOrderBook orderBook = marketDataService.getIndependentReserveOrderBook(Currency.BTC.getCurrencyCode(), Currency.USD.getCurrencyCode()); System.out.println("Current Order Book size for BTC / USD: " + (orderBook.getSellOrders().size() + orderBook.getBuyOrders().size())); System.out.println("First Ask: " + orderBook.getSellOrders().get(0).toString()); System.out.println("First Bid: " + orderBook.getBuyOrders().get(0).toString()); System.out.println(orderBook.toString()); } }