@Override public String placeStopOrder(StopOrder stopOrder) throws ExchangeException { String symbol = BitmexAdapters.adaptCurrencyPairToSymbol(stopOrder.getCurrencyPair()); return placeOrder( new BitmexPlaceOrderParameters.Builder(symbol) .setSide(fromOrderType(stopOrder.getType())) .setOrderQuantity(stopOrder.getOriginalAmount()) .setStopPrice(stopOrder.getStopPrice()) .setClOrdId(stopOrder.getId()) .build()) .getId(); }
@Override public String placeStopOrder(StopOrder stopOrder) throws IOException { if (stopOrder.getLimitPrice() != null) { throw new NotYetImplementedForExchangeException( "Limit stops are not supported by the Bitfinex v1 API."); } LimitOrder limitOrder = new LimitOrder( stopOrder.getType(), stopOrder.getOriginalAmount(), stopOrder.getCurrencyPair(), stopOrder.getId(), stopOrder.getTimestamp(), stopOrder.getStopPrice()); limitOrder.setOrderFlags(stopOrder.getOrderFlags()); limitOrder.setLeverage(stopOrder.getLeverage()); limitOrder.addOrderFlag(BitfinexOrderFlags.STOP); return placeLimitOrder(limitOrder); }
@Override public String placeStopOrder(StopOrder stopOrder) throws ExchangeException { String symbol = BitmexAdapters.adaptCurrencyPairToSymbol(stopOrder.getCurrencyPair()); return placeOrder( new BitmexPlaceOrderParameters.Builder(symbol) .setSide(fromOrderType(stopOrder.getType())) .setOrderQuantity(stopOrder.getOriginalAmount()) .setStopPrice(stopOrder.getStopPrice()) .setClOrdId(stopOrder.getId()) .build()) .getId(); }
@Override public String placeStopOrder(StopOrder stopOrder) throws IOException { if (stopOrder.getLimitPrice() != null) { throw new NotYetImplementedForExchangeException( "Limit stops are not supported by the Bitfinex v1 API."); } LimitOrder limitOrder = new LimitOrder( stopOrder.getType(), stopOrder.getOriginalAmount(), stopOrder.getCurrencyPair(), stopOrder.getId(), stopOrder.getTimestamp(), stopOrder.getStopPrice()); limitOrder.setOrderFlags(stopOrder.getOrderFlags()); limitOrder.setLeverage(stopOrder.getLeverage()); limitOrder.addOrderFlag(BitfinexOrderFlags.STOP); return placeLimitOrder(limitOrder); }