Search in sources :

Example 96 with Ticker

use of org.knowm.xchange.dto.marketdata.Ticker in project wildfly-camel by wildfly-extras.

the class XChangeMarketIntegrationTest method testTicker.

@Test
public void testTicker() throws Exception {
    try (CamelContext camelctx = new DefaultCamelContext()) {
        Assume.assumeTrue(checkAPIConnection());
        camelctx.addRoutes(createRouteBuilder());
        camelctx.start();
        ProducerTemplate template = camelctx.createProducerTemplate();
        Ticker ticker = template.requestBody("direct:ticker", CurrencyPair.EOS_ETH, Ticker.class);
        Assert.assertNotNull("Ticker not null", ticker);
        System.out.println(ticker);
        ticker = template.requestBodyAndHeader("direct:ticker", null, HEADER_CURRENCY_PAIR, CurrencyPair.EOS_ETH, Ticker.class);
        Assert.assertNotNull("Ticker not null", ticker);
        System.out.println(ticker);
    }
}
Also used : CamelContext(org.apache.camel.CamelContext) DefaultCamelContext(org.apache.camel.impl.DefaultCamelContext) ProducerTemplate(org.apache.camel.ProducerTemplate) Ticker(org.knowm.xchange.dto.marketdata.Ticker) DefaultCamelContext(org.apache.camel.impl.DefaultCamelContext) Test(org.junit.Test)

Example 97 with Ticker

use of org.knowm.xchange.dto.marketdata.Ticker in project cassandre-trading-bot by cassandre-tech.

the class Issue482TestMock method getXChangeMarketDataServiceMock.

@Override
public MarketDataService getXChangeMarketDataServiceMock() throws IOException {
    MarketDataService marketService = mock(MarketDataService.class);
    // We don't use the getTickers method.
    given(marketService.getTickers(any())).willThrow(new NotAvailableFromExchangeException("Not available in test"));
    // Replies for ETH/BTC.
    final BigDecimal value = new BigDecimal("1");
    given(marketService.getTicker(XCHANGE_ETH_BTC)).willReturn(// Ticker 1.
    new Ticker.Builder().instrument(// currency pair.
    XCHANGE_ETH_BTC).open(// open.
    value).last(// last.
    value).bid(// bid.
    value).ask(// ask.
    value).high(// high.
    value).low(// low.
    value).vwap(// wmap.
    value).volume(// value.
    value).quoteVolume(// quote volume.
    value).timestamp(// timestamp.
    null).bidSize(// bid size.
    value).askSize(// ask size.
    value).build(), // Ticker 2.
    new Ticker.Builder().instrument(// currency pair.
    XCHANGE_ETH_BTC).open(// open.
    value).last(// last.
    value).bid(// bid.
    value).ask(// ask.
    value).high(// high.
    value).low(// low.
    value).vwap(// wmap.
    value).volume(// value.
    value).quoteVolume(// quote volume.
    value).timestamp(// timestamp.
    null).bidSize(// bid size.
    value).askSize(// ask size.
    value).build(), // Ticker 3.
    new Ticker.Builder().instrument(// currency pair.
    XCHANGE_ETH_BTC).open(// open.
    value).last(// last.
    value).bid(// bid.
    value).ask(// ask.
    value).high(// high.
    value).low(// low.
    value).vwap(// wmap.
    value).volume(// value.
    value).quoteVolume(// quote volume.
    value).timestamp(// timestamp.
    null).bidSize(// bid size.
    value).askSize(// ask size.
    value).build());
    return marketService;
}
Also used : NotAvailableFromExchangeException(org.knowm.xchange.exceptions.NotAvailableFromExchangeException) MarketDataService(org.knowm.xchange.service.marketdata.MarketDataService) Ticker(org.knowm.xchange.dto.marketdata.Ticker) BigDecimal(java.math.BigDecimal)

Example 98 with Ticker

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

the class BitfinexAdapters method adaptTicker.

public static Ticker adaptTicker(org.knowm.xchange.bitfinex.v2.dto.marketdata.BitfinexTicker bitfinexTicker) {
    BigDecimal last = bitfinexTicker.getLastPrice();
    BigDecimal bid = bitfinexTicker.getBid();
    BigDecimal bidSize = bitfinexTicker.getBidSize();
    BigDecimal ask = bitfinexTicker.getAsk();
    BigDecimal askSize = bitfinexTicker.getAskSize();
    BigDecimal high = bitfinexTicker.getHigh();
    BigDecimal low = bitfinexTicker.getLow();
    BigDecimal volume = bitfinexTicker.getVolume();
    BigDecimal percentageChange = bitfinexTicker.getDailyChangePerc().multiply(new BigDecimal("100"), new MathContext(8));
    CurrencyPair currencyPair = CurrencyPairDeserializer.getCurrencyPairFromString(bitfinexTicker.getSymbol().substring(1));
    return new Ticker.Builder().currencyPair(currencyPair).last(last).bid(bid).ask(ask).high(high).low(low).volume(volume).bidSize(bidSize).askSize(askSize).percentageChange(percentageChange).build();
}
Also used : BitfinexTicker(org.knowm.xchange.bitfinex.v1.dto.marketdata.BitfinexTicker) Ticker(org.knowm.xchange.dto.marketdata.Ticker) BigDecimal(java.math.BigDecimal) MathContext(java.math.MathContext) CurrencyPair(org.knowm.xchange.currency.CurrencyPair)

Example 99 with Ticker

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

the class BitfinexAdapters method adaptTicker.

public static Ticker adaptTicker(BitfinexTicker bitfinexTicker, CurrencyPair currencyPair) {
    BigDecimal last = bitfinexTicker.getLast_price();
    BigDecimal bid = bitfinexTicker.getBid();
    BigDecimal bidSize = bitfinexTicker.getBidSize();
    BigDecimal ask = bitfinexTicker.getAsk();
    BigDecimal askSize = bitfinexTicker.getAskSize();
    BigDecimal high = bitfinexTicker.getHigh();
    BigDecimal low = bitfinexTicker.getLow();
    BigDecimal volume = bitfinexTicker.getVolume();
    Date timestamp = DateUtils.fromMillisUtc((long) (bitfinexTicker.getTimestamp() * 1000L));
    return new Ticker.Builder().currencyPair(currencyPair).last(last).bid(bid).bidSize(bidSize).ask(ask).askSize(askSize).high(high).low(low).volume(volume).timestamp(timestamp).build();
}
Also used : BitfinexTicker(org.knowm.xchange.bitfinex.v1.dto.marketdata.BitfinexTicker) Ticker(org.knowm.xchange.dto.marketdata.Ticker) BigDecimal(java.math.BigDecimal) Date(java.util.Date)

Example 100 with Ticker

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

the class TickerFetchIntegration method tickerFetchTest.

@Test
public void tickerFetchTest() throws Exception {
    ExchangeSpecification exchangeSpecification = new ExchangeSpecification(BitcoiniumExchange.class);
    exchangeSpecification.setApiKey("42djci5kmbtyzrvglfdw3e2dgmh5mr37");
    exchangeSpecification.setPlainTextUri("http://bitcoinium.com");
    System.out.println(exchangeSpecification.toString());
    Exchange exchange = ExchangeFactory.INSTANCE.createExchange(exchangeSpecification);
    MarketDataService marketDataService = exchange.getMarketDataService();
    Ticker ticker = marketDataService.getTicker(new CurrencyPair("BTC", "BITSTAMP_USD"));
    System.out.println(ticker.toString());
    assertThat(ticker).isNotNull();
}
Also used : BitcoiniumExchange(org.knowm.xchange.bitcoinium.BitcoiniumExchange) Exchange(org.knowm.xchange.Exchange) MarketDataService(org.knowm.xchange.service.marketdata.MarketDataService) Ticker(org.knowm.xchange.dto.marketdata.Ticker) ExchangeSpecification(org.knowm.xchange.ExchangeSpecification) CurrencyPair(org.knowm.xchange.currency.CurrencyPair) Test(org.junit.Test)

Aggregations

Ticker (org.knowm.xchange.dto.marketdata.Ticker)201 Test (org.junit.Test)101 MarketDataService (org.knowm.xchange.service.marketdata.MarketDataService)69 CurrencyPair (org.knowm.xchange.currency.CurrencyPair)68 BigDecimal (java.math.BigDecimal)66 Exchange (org.knowm.xchange.Exchange)48 Date (java.util.Date)34 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)23 InputStream (java.io.InputStream)23 OrderBook (org.knowm.xchange.dto.marketdata.OrderBook)22 Trades (org.knowm.xchange.dto.marketdata.Trades)15 IOException (java.io.IOException)10 Map (java.util.Map)9 ArrayList (java.util.ArrayList)8 ExchangeSpecification (org.knowm.xchange.ExchangeSpecification)8 Arrays (java.util.Arrays)6 Collectors (java.util.stream.Collectors)6 Balance (org.knowm.xchange.dto.account.Balance)6 JsonNode (com.fasterxml.jackson.databind.JsonNode)5 List (java.util.List)5