@Override public void onMessage(NewOrderSingle order, SessionID sessionID) throws FieldNotFound, UnsupportedMessageType, IncorrectTagValue { final String broker = sessionID.getTargetCompID(); OrderEntry orderEntry = convertToOrderEntry(order, broker); acceptOrder(orderEntry); final String symbol = order.getSymbol().getValue(); orderPublisher.publish(symbol, orderEntry, OrderEntry.class); // TODO: this is going away soon when subscribe is ready on the matching engine side matchingUnit.addOrder(orderEntry); }
@Override public void onEvent(ExecutionReport report, long sequence, boolean endOfBatch) throws Exception { String orderId = report.getOrderID().getValue(); String side = report.getSide().getValue() == Side.BUY ? "bought" : "sold"; ExecType execType = report.getExecType(); String symbol = report.getSymbol().getValue(); if (execType.getValue() == ExecType.NEW) { logger.debug("Order {} accepted", orderId); } else { double tradeQty = report.getLastShares().getValue(); double tradePrice = report.getLastPx().getValue(); logger.debug("Broker {} {} {} shares of {} at {}", new Object[]{broker, side, tradeQty, symbol, tradePrice}); } } });
public static Ticker adaptTicker(MarketDataSnapshotFullRefresh message) throws FieldNotFound { Ticker.Builder tickerBuilder = new Ticker.Builder(); String symbol = message.getSymbol().getValue(); tickerBuilder.currencyPair(BTCChinaAdapters.adaptCurrencyPair(symbol)); int noMDEntries = message.getNoMDEntries().getValue(); for (int i = 1; i <= noMDEntries; i++) { Group group = message.getGroup(i, NoMDEntries.FIELD); adapt(tickerBuilder, group); } Ticker ticker = tickerBuilder.build(); return ticker; }
throws FieldNotFound, UnsupportedMessageType, IncorrectTagValue { Date origTime = message.getField(new OrigTime()).getValue(); String symbol = message.getSymbol().getValue(); String mdReqId = message.isSetMDReqID() ? message.getMDReqID().getValue() : null; CurrencyPair currencyPair = OKCoinFIXAdapters.adaptCurrencyPair(symbol);
@Override public void onMessage(HuobiOrderInfoResponse message, SessionID sessionId) throws FieldNotFound, UnsupportedMessageType, IncorrectTagValue { log.info("[HuobiOrderInfoResponse] Symbol: {}, orderID: {}, side: {}, price: {}," + " ordStatus: {}, quantity: {}," + " processedPrice: {}, processedAmount: {}," + " vot: {}, fee: {}, total: {}", message.getSymbol().getValue(), message.getOrderID().getValue(), message.getSide(), message.getPrice().getValue(), message.getOrdStatus().getValue(), message.getQuantity().getValue(), message.getProcessedPrice().getValue(), message.getProcessedAmount().getValue(), message.getVot().getValue(), message.getFee().getValue(), message.getTotal().getValue()); }