On this page

latest contributor to this doc

Last Edit:

@smk762

Trade Preimage

API-v1trade_preimage

The trade_preimage method returns the approximate fee amounts that are paid per the whole swap. Depending on the parameters, the function returns different results:

  • If the swap_method is buy or sell, then the result will include the taker_fee and the fee_to_send_taker_fee. The taker_fee amount is paid from the base coin balance if the swap_method is sell, else it is paid from the rel coin balance.
  • If the max field is true, then the result will include the volume.

This method can be used instead of max_taker_vol if the max field is true and the swap_method is buy or sell. Use the resulting volume as an argument of the buy or sell requests.

Use the trade_preimage request with max = true and swap_method = \"setprice\" arguments to approximate the fee amounts only. Do not use the resulting volume as an argument of the setprice method.

This function is deprecated. Please consider using trade_preimage v2.0 instead.

ParameterTypeRequiredDefaultDescription
basestring-The base currency of the request
maxboolfalseWhether to return the maximum available volume for setprice method; must not be set or false if swap_method is buy or sell
pricenumeric string or rational-The price in rel the user is willing to pay per one unit of the base coin
relstring-The rel currency of the request
swap_methodstring-A standard SwapMethodEnum enum. The name of the method whose preimage is requested.
volumenumeric string or rational-The amount the user is willing to trade; ignored if max = true and swap_method is setprice, otherwise, it must be set

ParameterTypeDescription
base_coin_feeobjectA standard ExtendedFeeInfo object. The approximate miner fee is paid per the whole swap concerning the base coin
fee_to_send_taker_feeobjectA standard ExtendedFeeInfo object. The approximate miner fee is paid to send the dex fee; empty if swap_method is setprice
rel_coin_feeobjectA standard ExtendedFeeInfo object. The approximate miner fee is paid per the whole swap concerning the rel coin
resultobjectAn object containing the relevant information
taker_feeobjectA standard ExtendedFeeInfo object. The dex fee to be paid by Taker; empty if swap_method is setprice
total_feesarray of objectsA standard TotalFeeInfo object. Each element is a sum of fees required to be paid from user's balance of corresponding ExtendedFeeInfo.coin; the elements are unique by coin
volumestring (numeric)Optional. The max available volume that can be traded (in decimal representation); empty if the max argument is missing or false
volume_fractionfractionOptional. The max available volume that can be traded represented as a standard fractionalValue object; empty if the max argument is missing or false
volume_ratrationalOptional. The max available volume that can be traded represented as a standard RationalValue object; empty if the max argument is missing or false

trade_preimage

POST
trade_preimage
{
  "userpass": "RPC_UserP@SSW0RD",
  "method": "trade_preimage",
  "base": "DOC",
  "rel": "BTC",
  "price": "1",
  "volume": "0.1",
  "swap_method": "setprice"
}

POST
trade_preimage
{
  "userpass": "RPC_UserP@SSW0RD",
  "method": "trade_preimage",
  "base": "BTC",
  "rel": "DOC",
  "price": "1",
  "volume": "0.1",
  "swap_method": "buy"
}

POST
trade_preimage
{
  "userpass": "RPC_UserP@SSW0RD",
  "method": "trade_preimage",
  "base": "LTC",
  "rel": "LTC",
  "price": "1",
  "volume": "2.21363478",
  "swap_method": "setprice"
}