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/v2/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
ticker*
String
e.g., BTC-USD
Currency pair
accountId*
String
Identifier for account of the quote.
tradeSide*
String
"buy"
or "sell"
deliverQuantity*
String
NOTE: specify either deliverQuantity
or receiveQuantity
.
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*
String
NOTE: specify either deliverQuantity
or receiveQuantity
.
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
x-api-key*
String
{{x-api-key}}
API Auth Key
x-signature*
String
32c92460f65cbb78d0eaf9a4361fb6b0a2bb8bb4c40f531e9974a0afc12d9a328b5ff621a544d242ee9ba1dfa799c85a
Signature created using your API secret
x-nonce*
Number
1657731573930
Timestamp in millisecond
Returns an OrdersV2Object.
Create an RFQ quote
POST
https://api.aquanow.io/trades/v2/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
x-api-key*
String
{{x-api-key}}
API Auth Key
x-signature*
String
32c92460f65cbb78d0eaf9a4361fb6b0a2bb8bb4c40f531e9974a0afc12d9a328b5ff621a544d242ee9ba1dfa799c85a
Signature created using your API secret
x-nonce*
Number
1657731573930
Timestamp in millisecond
Request Body
ticker*
String
e.g., BTC-USD
Currency pair
accountId*
String
Identifier for account of the quote.
tradeSide*
String
"buy"
or "sell"
deliverQuantity*
String
NOTE: specify either deliverQuantity
or receiveQuantity
.
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*
String
NOTE: specify either deliverQuantity
or receiveQuantity
.
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 OrdersV2Object.
Execute an RFQ Quote
POST
https://api.aquanow.io/trades/v2/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
x-api-key*
String
{{x-api-key}}
API Auth Key
x-signature*
String
49c6260c194f4d7ed5cb917dc70b9821673246b2abc1cf28f05df6a75fd24181e00f8e57b321d15ae45db58b3bffe27a
Signature created using your API secret
x-nonce*
Number
1618307861949
Timestamp in millisecond
Request Body
quoteId*
String
quoteId
to be executed
Returns an OrdersV2Object.
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
x-api-key*
String
{{x-api-key}}
API Auth Key
x-signature*
String
49c6260c194f4d7ed5cb917dc70b9821673246b2abc1cf28f05df6a75fd24181e00f8e57b321d15ae45db58b3bffe27a
Signature created using your API secret
x-nonce*
Number
1657731573930
Timestamp in millisecond
Content-Type*
String
application/json
Request Body
quoteId*
String
quoteId
to be expired
Returns an OrdersV2Object.
Market
Aquanow's Market execution strategy is utilized to perform instant executions.
Create a market order
POST
https://api.aquanow.io/trades/v2/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
x-api-key*
String
{{x-api-key}}
API Auth Key
x-signature*
String
49c6260c194f4d7ed5cb917dc70b9821673246b2abc1cf28f05df6a75fd24181e00f8e57b321d15ae45db58b3bffe27a
Signature created using your API secret
x-nonce*
Number
1618307861949
Timestamp in millisecond
Content-Type*
String
application/json
Request Body
ticker*
String
e.g., BTC-USD
Pair to be traded
tradeSide*
String
"buy"
or "sell"
order
accountId*
String
Identifier for account the order will be applied to.
deliverQuantity*
String
NOTE: Specify either deliverQuantity
or receiveQuantity
.
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*
String
NOTE: Specify either deliverQuantity
or receiveQuantity
.
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 OrdersV2Object.
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/v2/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
x-api-key*
String
{{x-api-key}}
API Auth Key
x-signature*
String
49c6260c194f4d7ed5cb917dc70b9821673246b2abc1cf28f05df6a75fd24181e00f8e57b321d15ae45db58b3bffe27a
Signature created using your API secret
x-nonce*
Number
1618307861949
Timestamp in millisecond
Content-Type*
String
application/json
Request Body
strategy*
String
"FOK"
accountId*
String
Identifier for account the order will be applied to.
ticker*
String
e.g., BTC-CAD
Currency pair
tradeSide*
String
"buy"
or "sell"
receiveQuantity*
String
NOTE: specify either deliverQuantity
or receiveQuantity
.
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*
String
NOTE: specify either deliverQuantity
or receiveQuantity
.
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*
String
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 OrdersV2Object.
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/v2/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
x-api-key*
String
{{x-api-key}}
API Auth Key
x-signature*
String
49c6260c194f4d7ed5cb917dc70b9821673246b2abc1cf28f05df6a75fd24181e00f8e57b321d15ae45db58b3bffe27a
Signature created using your API secret
x-nonce*
Number
1618307861949
Timestamp in millisecond
Content-Type*
String
application/json
Request Body
strategy*
String
"LIMIT"
, "GTC"
or "GTD"
accountId*
String
Identifier for account the order will be applied to.
ticker*
String
e.g., BTC-CAD
Currency pair
tradeSide*
String
"buy"
or "sell"
priceLimit*
String
Limit price of a ticker symbol, determined by tradeSide
and deliverQuantity
/receiveQuantity
deliverQuantity*
String
NOTE: specify either deliverQuantity
or receiveQuantity
.
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*
String
NOTE: specify either deliverQuantity
or receiveQuantity
.
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., 1669972404350
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 OrdersV2Object.
Last updated