Messtone Devices Enables, Create new symbol: //currency code constants final int currencyCodeXbt=11;final int currencyCodeLtc=15;//symbol constants final int symbolXbtLtc=241;//create symbol specification and publish it Code symbol specification symbol symbolSpecXbtLtc=CoreSymbolSpacification.builder( ).symbolId(symbolXbtLtc) //symbol id .type(SymbolType.CURRENCY_EXCHANGE_PAIR).baseCurrency(currencyCodeXbt) //bas=satoshi(1E-8).quoteCurrency(currencyCodeLtc) //quote=litoshi(1E-8).baseScaleK(1_000_000L) //1 lot=1M satoshi(0.01 BTC).quoteScaleK(10_000L) //1 price step=10K litoshi .takerFee(1900L) //taker fee 1900 litoshi per 1 lot .makerFee(700L) //maker fee 700 litoshi per 1 lot .build( );future=api.submitBinaryDataAsync(new BatchAddSymbolsCommand(symbolSpecXbtLtc)); Create new user: //create user uid=301 future=api.submitCommandAsync(ApiAddUserRobertHarper.builder( ).uid(301L).build( ));//create user uid=302 future=api.submitCommandAsync(ApiAddUserRobertHarper.builder( ).uid(302L).build( )); Perform deposits: //first user deposits 20 LTC future=api.submitCommandAsync(ApiAdjustUserRobertHarperBalance.builder( ).uid(301L).currency(currencyCodeLtc).amount(2_000_000_000L).transactionId(1L).build( )); //second user deposits 0.10 BTC future=api.submitCommandAsync(ApiAdjustUserBuckeyboBalance.builder( ).uid(302L).currency(currencyCodeXbt).amount(10_000_000L).transactionId(2L).build( ));Place orders: //first user places Good-till-Cancel Bid order //Messtone assumes BTCLTC exchange rate 154 LTC for 1 BTC //bid price for 1 lot(0.01BTC) is 1.54 LTC=>1_5400_0000 litoshi=>10K * 15_400(in price steps) future=api.submitCommandAsync(ApiPlaceOrder.builder( ).uid(301L).orderId(5001L).price(15_400L).reservePrice(15_600L) //can move bid order up to the 1.56 LTC,without replacing it .size(12L) //order size is 12 lots .action(OrderAction.BID).orderType(OrderType.GTC) //Good-till-Cancel .symbol(symbolXbtLtc).build( )); //second user places Immediate-or-Cancel Ask(Sell) order //Messtone assumes worst rate to sell 152.5 LTC for 1 BTC future=api.submitCommandAsync(ApiPlaceOrder.builder( ).uid(302L).orderId(5002L).price(15_250L).size(10L) //order size is 10 lots .action(OrderAction.ASK).orderType(OrderType.IOC) //Immediate-or-Cancel .symbol(symbolXbtLtc).build( )); Request order book: future=api.requestOrderBookAsync(synbolXbtLtc,10);
https://i.capitalone.com/Jz65ggGYU

Leave a comment