Class PoloniexTradeService
- java.lang.Object
-
- org.knowm.xchange.service.BaseExchangeService
-
- org.knowm.xchange.poloniex.service.PoloniexBaseService
-
- org.knowm.xchange.poloniex.service.PoloniexTradeServiceRaw
-
- org.knowm.xchange.poloniex.service.PoloniexTradeService
-
- All Implemented Interfaces:
BaseService
,TradeService
public class PoloniexTradeService extends PoloniexTradeServiceRaw implements TradeService
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
PoloniexTradeService.PoloniexTradeHistoryParams
-
Field Summary
-
Fields inherited from class org.knowm.xchange.poloniex.service.PoloniexBaseService
apiKey, poloniex, poloniexAuthenticated, signatureCreator
-
Fields inherited from class org.knowm.xchange.service.BaseExchangeService
exchange
-
-
Constructor Summary
Constructors Constructor Description PoloniexTradeService(Exchange exchange, PoloniexMarketDataService poloniexMarketDataService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
cancelOrder(String orderId)
cancels order with matching orderId (conveniance method, typical just delegate to cancelOrder(CancelOrderByIdParams))boolean
cancelOrder(CancelOrderParams orderParams)
cancels order with matching orderParamsOpenOrdersParams
createOpenOrdersParams()
CreateOpenOrdersParams
object specific to this exchange.TradeHistoryParams
createTradeHistoryParams()
CreateTradeHistoryParams
that supportsTradeHistoryParamsTimeSpan
andTradeHistoryParamCurrencyPair
.BigDecimal
getMakerFee()
OpenOrders
getOpenOrders()
Gets the open ordersOpenOrders
getOpenOrders(OpenOrdersParams params)
Gets the open ordersCollection<Order>
getOrder(String... orderIds)
get's the latest order form the order book that with matching orderIdUserTrades
getOrderTrades(String orderId, CurrencyPair currencyPair)
UserTrades
getOrderTrades(Order order)
BigDecimal
getTakerFee()
UserTrades
getTradeHistory(TradeHistoryParams params)
Fetch the history of user trades.String
placeLimitOrder(LimitOrder limitOrder)
Place a limit orderString
placeMarketOrder(MarketOrder marketOrder)
Place a market order-
Methods inherited from class org.knowm.xchange.poloniex.service.PoloniexTradeServiceRaw
buy, cancel, getFeeInfo, move, move, returnAllAvailableAccountBalances, returnAllMarginPositions, returnAvailableAccountBalances, returnMarginAccountSummary, returnMarginPosition, returnOpenOrders, returnOpenOrders, returnOrderTrades, returnTradableBalances, returnTradeHistory, returnTradeHistory, sell
-
Methods inherited from class org.knowm.xchange.service.BaseExchangeService
verifyOrder, verifyOrder, verifyOrder
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.knowm.xchange.service.trade.TradeService
changeOrder, getOrder, placeStopOrder, verifyOrder, verifyOrder
-
-
-
-
Constructor Detail
-
PoloniexTradeService
public PoloniexTradeService(Exchange exchange, PoloniexMarketDataService poloniexMarketDataService)
-
-
Method Detail
-
getOpenOrders
public OpenOrders getOpenOrders() throws IOException
Description copied from interface:TradeService
Gets the open orders- Specified by:
getOpenOrders
in interfaceTradeService
- Returns:
- the open orders, null if some sort of error occurred. Implementers should log the error.
- Throws:
IOException
- - Indication that a networking error occurred while fetching JSON data
-
getOpenOrders
public OpenOrders getOpenOrders(OpenOrdersParams params) throws ExchangeException, IOException
Description copied from interface:TradeService
Gets the open orders- Specified by:
getOpenOrders
in interfaceTradeService
- Parameters:
params
- The parameters describing the filter. Note thatOpenOrdersParams
is an empty interface. Exchanges should implement its own params object. Params should be create withTradeService.createOpenOrdersParams()
.- Returns:
- the open orders, null if some sort of error occurred. Implementers should log the error.
- Throws:
ExchangeException
- - Indication that the exchange reported some kind of error with the request or responseIOException
- - Indication that a networking error occurred while fetching JSON data
-
placeMarketOrder
public String placeMarketOrder(MarketOrder marketOrder) throws IOException
Description copied from interface:TradeService
Place a market orderIf your orders amount does to meet the restrictions dictated by
CurrencyPairMetaData
then the exchange will reject your order. UseOrderValuesHelper
to validate and / or adjust it while you'r building an order.- Specified by:
placeMarketOrder
in interfaceTradeService
- Returns:
- the order ID
- Throws:
IOException
- - Indication that a networking error occurred while fetching JSON data- See Also:
OrderValuesHelper
-
placeLimitOrder
public String placeLimitOrder(LimitOrder limitOrder) throws IOException
Description copied from interface:TradeService
Place a limit orderIf your orders amount or limit price does to meet the restrictions dictated by
CurrencyPairMetaData
then the exchange will reject your order. UseOrderValuesHelper
to validate and / or adjust those values while you'r building an order.- Specified by:
placeLimitOrder
in interfaceTradeService
- Returns:
- the order ID
- Throws:
IOException
- - Indication that a networking error occurred while fetching JSON data- See Also:
OrderValuesHelper
-
cancelOrder
public boolean cancelOrder(String orderId) throws IOException
Description copied from interface:TradeService
cancels order with matching orderId (conveniance method, typical just delegate to cancelOrder(CancelOrderByIdParams))- Specified by:
cancelOrder
in interfaceTradeService
- Returns:
- true if order was successfully cancelled, false otherwise.
- Throws:
IOException
- - Indication that a networking error occurred while fetching JSON data
-
cancelOrder
public boolean cancelOrder(CancelOrderParams orderParams) throws IOException
Description copied from interface:TradeService
cancels order with matching orderParams- Specified by:
cancelOrder
in interfaceTradeService
- Returns:
- true if order was successfully cancelled, false otherwise.
- Throws:
IOException
- - Indication that a networking error occurred while fetching JSON data
-
getTradeHistory
public UserTrades getTradeHistory(TradeHistoryParams params) throws IOException
Description copied from interface:TradeService
Fetch the history of user trades.If you are calling this method for single exchange, known at the development time, you may pass an object of specific *TradeHistoryParam class that is nested it that exchange's trade service.
If, however, you are fetching user trade history from many exchanges using the same code, you will find useful to create the parameter object with
TradeService.createTradeHistoryParams()
and check which parameters are required or supported using instanceof operator. See subinterfaces ofTradeHistoryParams
. Note that whether an interface is required or supported will vary from exchange to exchange and it's described only through the javadoc.There is also implementation of all the common interfaces,
TradeHistoryParamsAll
, that, with all properties set non-null, should work with any exchange.Some exchanges allow extra parameters, not covered by any common interface. To access them, you will have to use the object returned by
TradeService.createTradeHistoryParams()
and cast it to the exchange-specific type.- Specified by:
getTradeHistory
in interfaceTradeService
- Parameters:
params
- Can optionally implementTradeHistoryParamCurrencyPair
andTradeHistoryParamsTimeSpan
. All other TradeHistoryParams types will be ignored.- Returns:
- UserTrades as returned by the exchange API
- Throws:
IOException
- - Indication that a networking error occurred while fetching JSON data- See Also:
TradeService.createTradeHistoryParams()
,TradeHistoryParamsAll
-
getMakerFee
public BigDecimal getMakerFee() throws IOException
- Throws:
IOException
-
getTakerFee
public BigDecimal getTakerFee() throws IOException
- Throws:
IOException
-
createTradeHistoryParams
public TradeHistoryParams createTradeHistoryParams()
CreateTradeHistoryParams
that supportsTradeHistoryParamsTimeSpan
andTradeHistoryParamCurrencyPair
.- Specified by:
createTradeHistoryParams
in interfaceTradeService
-
createOpenOrdersParams
public OpenOrdersParams createOpenOrdersParams()
Description copied from interface:TradeService
CreateOpenOrdersParams
object specific to this exchange. Object created by this method may be used to discover supported and requiredTradeService.getOpenOrders(OpenOrdersParams)
parameters and should be passed only to the method in the same class as the createOpenOrdersParams that created the object.- Specified by:
createOpenOrdersParams
in interfaceTradeService
-
getOrder
public Collection<Order> getOrder(String... orderIds) throws IOException
Description copied from interface:TradeService
get's the latest order form the order book that with matching orderId- Specified by:
getOrder
in interfaceTradeService
- Returns:
- the order as it is on the exchange.
- Throws:
IOException
- - Indication that a networking error occurred while fetching JSON data
-
getOrderTrades
public final UserTrades getOrderTrades(Order order) throws IOException
- Throws:
IOException
-
getOrderTrades
public UserTrades getOrderTrades(String orderId, CurrencyPair currencyPair) throws IOException
- Throws:
IOException
-
-