Package nxt.http

Class PublishExchangeOffer


  • public final class PublishExchangeOffer
    extends APIServlet.APIRequestHandler
    Publish exchange offer for CurrencyType.EXCHANGEABLE currency

    Parameters

    • currency - currency id of an active currency
    • buyRateNQT - NXT amount for buying a currency unit specified in NQT
    • sellRateNQT - NXT amount for selling a currency unit specified in NQT
    • initialBuySupply - Initial number of currency units offered to buy by the publisher
    • initialSellSupply - Initial number of currency units offered for sell by the publisher
    • totalBuyLimit - Total number of currency units which can be bought from the offer
    • totalSellLimit - Total number of currency units which can be sold from the offer
    • expirationHeight - Blockchain height at which the offer is expired

    Publishing an exchange offer internally creates a buy offer and a counter sell offer linked together. Typically the buyRateNQT specified would be less than the sellRateNQT thus allowing the publisher to make profit

    Each CurrencyBuy transaction which matches this offer reduces the sell supply and increases the buy supply Similarly, each CurrencySell transaction which matches this offer reduces the buy supply and increases the sell supply Therefore the multiple buy/sell transaction can be issued against this offer during it's lifetime. However, the total buy limit and sell limit stops exchanging based on this offer after the accumulated buy/sell limit is reached after possibly multiple exchange operations.

    Only one exchange offer is allowed per account. Publishing a new exchange offer when another exchange offer exists for the account, removes the existing exchange offer and publishes the new exchange offer