Class CoinbaseTradeService
java.lang.Object
org.knowm.xchange.service.BaseExchangeService
org.knowm.xchange.coinbase.service.CoinbaseBaseService
org.knowm.xchange.coinbase.service.CoinbaseTradeService
- All Implemented Interfaces:
BaseService
,TradeService
public final class CoinbaseTradeService extends CoinbaseBaseService implements TradeService
- Author:
- jamespedwards42
-
Field Summary
Fields inherited from class org.knowm.xchange.coinbase.service.CoinbaseBaseService
coinbase, signatureCreator
Fields inherited from class org.knowm.xchange.service.BaseExchangeService
exchange
-
Constructor Summary
Constructors Constructor Description CoinbaseTradeService(Exchange exchange)
Constructor -
Method Summary
Modifier and Type Method Description CoinbaseTransfer
buy(BigDecimal quantity)
Authenticated resource that lets you purchase Bitcoin using the primary bank account that is linked to your account.CoinbaseTransfer
buyAndAgreeBTCAmountVaries(BigDecimal quantity)
Authenticated resource that lets you purchase Bitcoin using the primary bank account that is linked to your account.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
object specific to this exchange.CoinbaseTransfers
getCoinbaseTransfers()
Authenticated resource which returns the user’s Bitcoin purchases and sells.CoinbaseTransfers
getCoinbaseTransfers(Integer page, Integer limit)
Authenticated resource which returns the user’s Bitcoin purchases and sells.OpenOrders
getOpenOrders()
Gets the open ordersOpenOrders
getOpenOrders(OpenOrdersParams params)
Gets the open ordersUserTrades
getTradeHistory(TradeHistoryParams params)
Authenticated resource which returns the user’s Bitcoin purchases and sells.String
placeLimitOrder(LimitOrder limitOrder)
Place a limit orderString
placeMarketOrder(MarketOrder marketOrder)
Place a market orderString
placeStopOrder(StopOrder stopOrder)
Place a stop orderCoinbaseTransfer
sell(BigDecimal quantity)
Authenticated resource that lets you convert Bitcoin in your account to USD by crediting your primary bank account on Coinbase.Methods inherited from class org.knowm.xchange.coinbase.service.CoinbaseBaseService
createCoinbaseToken, createCoinbaseUser, createCoinbaseUser, getCoinbaseCurrencies, handleResponse
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
cancelAllOrders, changeOrder, getOpenPositions, getOrder, getOrder, getRequiredCancelOrderParamClasses, getRequiredOrderQueryParamClass, verifyOrder, verifyOrder
-
Constructor Details
-
CoinbaseTradeService
Constructor- Parameters:
exchange
-
-
-
Method Details
-
getOpenOrders
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:
NotAvailableFromExchangeException
- - Indication that the exchange does not support the requested function or dataIOException
- - Indication that a networking error occurred while fetching JSON data
-
getOpenOrders
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:
IOException
- - Indication that a networking error occurred while fetching JSON data
-
placeMarketOrder
Description copied from interface:TradeService
Place a market orderIf your orders amount does to meet the restrictions dictated by
InstrumentMetaData
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:
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- See Also:
OrderValuesHelper
-
placeLimitOrder
Description copied from interface:TradeService
Place a limit orderIf your orders amount or limit price does to meet the restrictions dictated by
InstrumentMetaData
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:
NotAvailableFromExchangeException
- - Indication that the exchange does not support the requested function or data- See Also:
OrderValuesHelper
-
placeStopOrder
Description copied from interface:TradeService
Place a stop orderIf your orders amount or spot price does to meet the restrictions dictated by
InstrumentMetaData
then the exchange will reject your order. UseOrderValuesHelper
to validate and / or adjust those values while you'r building an order.- Specified by:
placeStopOrder
in interfaceTradeService
- Returns:
- the order ID
- Throws:
IOException
- - Indication that a networking error occurred while fetching JSON data- See Also:
OrderValuesHelper
-
cancelOrder
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:
NotAvailableFromExchangeException
- - Indication that the exchange does not support the requested function or data
-
cancelOrder
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
Authenticated resource which returns the user’s Bitcoin purchases and sells. Sorted in descending order by creation date.- Specified by:
getTradeHistory
in interfaceTradeService
- Parameters:
params
- The parameters describing the filter. Note thatTradeHistoryParams
is an empty interface. Exact set of interfaces that are required or supported by this method is described by the type of object returned fromTradeService.createTradeHistoryParams()
and the javadoc of the method.- Returns:
- UserTrades as returned by the exchange API
- Throws:
IOException
- - Indication that a networking error occurred while fetching JSON data- See Also:
- coinbase.com/api/doc/1.0/transfers/index.html
-
createTradeHistoryParams
Description copied from interface:TradeService
CreateTradeHistoryParams
object specific to this exchange. Object created by this method may be used to discover supported and requiredTradeService.getTradeHistory(TradeHistoryParams)
parameters and should be passed only to the method in the same class as the createTradeHistoryParams that created the object.- Specified by:
createTradeHistoryParams
in interfaceTradeService
-
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
-
buy
Authenticated resource that lets you purchase Bitcoin using the primary bank account that is linked to your account. (You must link and verify your bank account through the website before this API call will work). The underlying optional parameter agree_btc_amount_varies is set to false. UsebuyAndAgreeBTCAmountVaries(java.math.BigDecimal)
to have it set to true.- Parameters:
quantity
- The quantity of Bitcoin you would like to buy.- Returns:
- The
CoinbaseTransfer
representing the buy. - Throws:
IOException
- See Also:
- coinbase.com/api/doc/1.0/buys/create.html
-
buyAndAgreeBTCAmountVaries
Authenticated resource that lets you purchase Bitcoin using the primary bank account that is linked to your account. (You must link and verify your bank account through the website before this API call will work). The underlying optional parameter agree_btc_amount_varies is set to true. UsebuyAndAgreeBTCAmountVaries(java.math.BigDecimal)
to have it set to false.- Parameters:
quantity
- The quantity of Bitcoin you would like to buy.- Returns:
- A
CoinbaseTransfer
representing the buy. - Throws:
IOException
- See Also:
- coinbase.com/api/doc/1.0/buys/create.html
-
sell
Authenticated resource that lets you convert Bitcoin in your account to USD by crediting your primary bank account on Coinbase. (You must link and verify your bank account through the website before this API call will work).- Parameters:
quantity
- The quantity of Bitcoin you would like to sell.- Returns:
- A
CoinbaseTransfer
representing the sell. - Throws:
IOException
- See Also:
- coinbase.com/api/doc/1.0/sells/create.html
-
getCoinbaseTransfers
Authenticated resource which returns the user’s Bitcoin purchases and sells. Sorted in descending order by creation date. This is a paged resource and will return the first page by default.- Returns:
- Throws:
IOException
- See Also:
- coinbase.com/api/doc/1.0/transfers/index.html
-
getCoinbaseTransfers
Authenticated resource which returns the user’s Bitcoin purchases and sells. Sorted in descending order by creation date.- Parameters:
page
- Optional parameter to request a desired page of results. Will return page 1 if the supplied page is null or less than 1.limit
- Optional parameter to limit the maximum number of results to return. Will return up to 25 results by default if null or less than 1.- Returns:
- Throws:
IOException
- See Also:
- coinbase.com/api/doc/1.0/transfers/index.html
-