Trading Strategies
Please contact support@aquanow.io to enable additional strategies.
RFQ
RFQ orders allow users to make a request for a quote, then decide if they wish to execute that quote.
Get an RFQ quote
GET
https://api.aquanow.io/trades/v1/getQuote
getQuote
endpoint allows users to get an RFQ quote from Aquanow, and
receive quoteId
and price
that is valid during the lifetime of the RFQ.
This endpoint is not executable and can only be used as a means of pricing your order.
To view example requests for this endpoint, visit Aquanow's Postman documentation.
Query Parameters
Name | Type | Description |
---|---|---|
ticker* | String | e.g., Currency pair |
accountId* | String | Identifier for account of the quote. |
tradeSide* | String |
|
deliverQuantity* | Number | NOTE: specify either Quantity of currency delivered by user based on the ticker and tradeSide. For example, if ticker is BTC-USD and tradeSide is buy, the delivered currency is USD. If tradeSide is sell, the delivered currency is BTC. |
receiveQuantity* | Number | NOTE: specify either Quantity of currency received by user based on the ticker and tradeSide. For example, if ticker is BTC-USD and tradeSide is buy, the received currency is BTC. If tradeSide is sell, the received currency is USD. |
Headers
Name | Type | Description |
---|---|---|
x-api-key* | String |
API Auth Key |
x-signature* | String |
Signature created using your API secret |
x-nonce* | Number |
Timestamp in millisecond |
Returns an ExecutionsObject.
Create an RFQ quote
POST
https://api.aquanow.io/trades/v1/createQuote
createQuote
endpoint allows user to initiate an RFQ request to Aquanow and receive a quoteId
and price
that is valid during the lifetime of the RFQ.
NOTE: Either deliverQuantity
or receiveQuantity
must be specified. If both are specified, receiveQuantity
will be considered for sell orders, and deliverQuantity
will be considered for buy orders.
If order is not filled, request returns a 200 response with receiveQuantity
and deliverQuantity
set to 0.
To view example requests for this endpoint, visit Aquanow's Postman documentation.
Headers
Name | Type | Description |
---|---|---|
x-api-key* | String |
API Auth Key |
x-signature* | String |
Signature created using your API secret |
x-nonce* | Number |
Timestamp in millisecond |
Request Body
Name | Type | Description |
---|---|---|
ticker* | String | e.g., Currency pair |
accountId* | String | Identifier for account of the quote. |
tradeSide* | String |
|
deliverQuantity* | Number | NOTE: specify either Quantity of currency delivered by user based on the ticker and tradeSide. For example, if ticker is BTC-USD and tradeSide is buy, the delivered currency is USD. If tradeSide is sell, the delivered currency is BTC. |
receiveQuantity* | Number | NOTE: specify either Quantity of currency received by user based on the ticker and tradeSide. For example, if ticker is BTC-USD and tradeSide is buy, the received currency is BTC. If tradeSide is sell, the received currency is USD. |
usernameRef | String | A new reference string for sub-accounts. Must be less than 64 characters, cannot contain special characters. |
Returns an ExecutionsObject.
Execute an RFQ Quote
POST
https://api.aquanow.io/trades/v1/executeQuote
executeQuote
endpoint allows users to execute a trade with a specified quoteId with the symbol, trade side and size within the time to live (TTL) of the request associated with the quoteId
.
NOTE: The quote must be executed BEFORE the time expired. The TTL of a quote is 8 seconds by default. If you wish to increase the expiry time, please contact Aquanow for support.
To view example requests for this endpoint, visit Aquanow's Postman documentation.
Headers
Name | Type | Description |
---|---|---|
x-api-key* | String |
API Auth Key |
x-signature* | String |
Signature created using your API secret |
x-nonce* | Number |
Timestamp in millisecond |
Request Body
Name | Type | Description |
---|---|---|
quoteId* | String |
|
Returns an ExecutionsObject.
Expire an RFQ Quote
PUT
https://api.aquanow.io/trades/v1/expireQuote
expireQuote
endpoint allows users to expire a quote with a specified quoteId
within the time to live (TTL) of the request associated with the quoteId
.
NOTE: The quote must be executed BEFORE the time expired. The TTL of a quote is 8 seconds by default. If you wish to increase the expiry time, please contact Aquanow for support.
To view example requests for this endpoint, visit Aquanow's Postman documentation.
Headers
Name | Type | Description |
---|---|---|
x-api-key* | String |
API Auth Key |
x-signature* | String |
Signature created using your API secret |
x-nonce* | Number |
Timestamp in millisecond |
Content-Type* | String |
|
Request Body
Name | Type | Description |
---|---|---|
quoteId* | String |
|
Returns an ExecutionsObject.
Market
Aquanow's Market execution strategy is utilized to perform instant executions.
Create a market order
POST
https://api.aquanow.io/trades/v1/market
Note: Either deliverQuantity or receiveQuantity must be specified. If both are specified, receiveQuantity will be considered for sell orders, and deliverQuantity will be considered for buy orders.
If order is not filled, the request will return a 200 response, with receiveQuantity and deliverQuantity set to 0.
To view example requests for this endpoint, visit Aquanow's Postman documentation.
Headers
Name | Type | Description |
---|---|---|
x-api-key* | String |
API Auth Key |
x-signature* | String |
Signature created using your API secret |
x-nonce* | Number |
Timestamp in millisecond |
Content-Type* | String |
|
Request Body
Name | Type | Description |
---|---|---|
ticker* | String |
Pair to be traded |
tradeSide* | String |
|
accountId* | String | Identifier for account the order will be applied to. |
deliverQuantity* | Number | NOTE: Specify either Quantity of currency delivered by user based on the ticker and tradeSide. For example, if ticker is BTC-USD and tradeSide is buy, then the delivered currency is USD. If tradeSide is sell, the delivered currency is BTC. |
receiveQuantity* | Number | NOTE: Specify either Quantity of currency received by user based on the ticker and tradeSide. For example, if ticker is BTC-USD and tradeSide is buy, then the received currency is BTC. If tradeSide is sell, the received currency is USD. |
usernameRef | String | A new reference string for sub-accounts. Must be less than 64 characters, cannot contain special characters. |
Returns an ExecutionsObject.
TWAP
Aquanow's execution algorithm.
TWAP
Time-Weighted Average Price (TWAP) is used when buying or selling large amounts of digital assets over time, with the ability to choose the amount being sold and its time period.
Create an order
POST
https://api.aquanow.io/trades/v1/order
To view example requests for this endpoint, visit Aquanow's Postman documentation.
Headers
Name | Type | Description |
---|---|---|
x-api-key* | String |
API Auth Key |
x-signature* | String |
Signature created using your API secret |
x-nonce* | String |
Timestamp in millisecond |
Content-Type* | String |
|
Request Body
Name | Type | Description |
---|---|---|
strategy* | String | Trading strategy to be executed NOTE: Currently, we only support TWAP strategies. |
accountId* | String | NOTE: required for accounts under the new account system. Identifier for account the order will be applied to. |
ticker* | String | Strategy pair to be traded (e.g., |
tradeSide* | String |
|
tradePrice* | Number | Price of the coin on purchase |
tradeSize* | Number | Size or quantity of order |
tradeDuration* | Number | NOTE: only required if strategy is TWAP. Duration is in number of seconds. Minimum duration is 300 seconds. |
usernameRef | String | A new reference string for subaccounts. Must be less than 64 characters and cannot contain special characters. |
Returns an ExecutionsObject.
Cancel a pre-existing TWAP order.
DELETE
https://api.aquanow.io/trades/v1/order
To view example requests for this endpoint, visit Aquanow's Postman documentation.
Query Parameters
Name | Type | Description |
---|---|---|
orderId* | String |
|
Headers
Name | Type | Description |
---|---|---|
x-api-key* | String |
API Auth Key |
x-signature* | String |
Signature created using your API secret |
x-nonce* | Number |
Timestamp in millisecond |
Content-Type* | String |
|
Returns an ExecutionsObject.
FOK
Fill or Kill order strategy will execute the entire order immediately at the market or specified price, otherwise it will cancelled if not filled.
Endpoint to initiate a FOK request to Aquanow.
POST
https://api.aquanow.io/trades/v1/order
NOTE: Either deliverQuantity, receiveQuantity must be specified. If both are specified, receiveQuantity will be considered for sell orders, and deliverQuantity will be considered for buy orders.
If order is not filled, the request will return a 200 response with a Cancelled message.
To view example requests for this endpoint, visit Aquanow's Postman documentation.
Headers
Name | Type | Description |
---|---|---|
x-api-key* | String |
API Auth Key |
x-signature* | String |
Signature created using your API secret |
x-nonce* | Number |
Timestamp in millisecond |
Content-Type* | String |
|
Request Body
Name | Type | Description |
---|---|---|
strategy* | String |
|
accountId* | String | Identifier for account the order will be applied to. |
ticker* | String | e.g., Currency pair |
tradeSide* | String |
|
receiveQuantity* | Number | NOTE: specify either Quantity of currency received by user based on the ticker and tradeSide. For example, if ticker is BTC-USD and tradeSide is buy, the received currency is BTC. If tradeSide is sell, the received currency is USD. |
deliverQuantity* | Number | NOTE: specify either Quantity of currency delivered by user based on the ticker and tradeSide. For example, if ticker is BTC-USD and tradeSide is buy, the delivered currency is USD. If tradeSide is sell, the delivered currency is BTC. |
tradePrice* | Number | Trade price of ticker symbol |
usernameRef | String | A new reference string for sub-accounts. Must be less than 64 characters, cannot contain special characters. |
Returns an ExecutionsObject.
LIMIT/GTC/GTD
Aquanow's duration order algorithms with a price limit.
Orders can be completed immediately depending on the specified priceLimit, quantity and the market. Incomplete pre-existing orders expire depending on the strategy.
Duration Order Algorithms
LIMIT
LIMIT orders create a pre-existing order, available for up to 24 hours.
GTC
Good Till Cancel (GTC) orders create a pre-existing order, available for up to 90 days.
GTD
Good Till Date (GTD) orders create a pre-existing order, available until a specified expirationTime
date (max. 90 days).
Endpoint to initiate an LIMIT/GTC/GTD request to Aquanow.
POST
https://api.aquanow.io/trades/v1/order
NOTE: Either deliverQuantity or receiveQuantity must be specified. If both are specified, receiveQuantity will be considered for sell orders, and deliverQuantity will be considered for buy orders.
If order is not filled, the request will return a 200 response with receiveQuantity and deliverQuantity set to 0.
To view example requests for this endpoint, visit Aquanow's Postman documentation.
Headers
Name | Type | Description |
---|---|---|
x-api-key* | String |
API Auth Key |
x-signature* | String |
Signature created using your API secret |
x-nonce* | Number |
Timestamp in millisecond |
Content-Type* | String |
|
Request Body
Name | Type | Description |
---|---|---|
strategy* | String |
|
accountId* | String | Identifier for account the order will be applied to. |
ticker* | String | e.g., Currency pair |
tradeSide* | String |
|
priceLimit* | Number | Limit price of a ticker symbol, determined by |
deliverQuantity* | Number | NOTE: specify either Quantity of currency delivered by user based on the ticker and tradeSide. For example, if ticker is BTC-USD and tradeSide is buy, then the delivered currency is USD. If tradeSide is sell, the delivered currency is BTC. |
receiveQuantity* | Number | NOTE: specify either Quantity of currency received by user based on the ticker and tradeSide. For example, if ticker is BTC-USD and tradeSide is buy, then the received currency is BTC. If tradeSide is sell, the received currency is USD. |
expirationTime* | Number | NOTE: only required for GTD orders. e.g., Expiration time in milliseconds of when the pre-existing order will expire. Expiration time must be within 90 days of order creation. |
usernameRef | String | A new reference string for sub-accounts. Must be less than 64 characters, cannot contain special characters. |
Returns an ExecutionsObject.
Cancel a pre-existing LIMIT/GTC/GTD order.
DELETE
https://api.aquanow.io/trades/v1/order
To view example requests for this endpoint, visit Aquanow's Postman documentation.
Headers
Name | Type | Description |
---|---|---|
x-api-key* | String |
API Auth Key |
x-signature* | String |
Signature created using your API secret |
x-nonce* | Number |
Timestamp in millisecond |
Content-Type* | String |
|
Request Body
Name | Type | Description |
---|---|---|
orderId* | String |
|
Returns an ExecutionsObject.
Last updated