DeltaDeFi
  • About
    • 👋Introduction
    • 📖Learn
      • Architecture
        • Account
        • App Vault
        • Hydra
        • Intent and Process
        • Order Book
      • Trade
        • Order Types
      • Whitepaper
  • Start Trading
    • ⚡Getting Started
      • Create Account
      • Deposit
      • Place Order
      • Cancel Order
      • Withdrawal
      • API Key / Dashboard
    • ⚙️Developers
      • Introduction
        • Base Url
        • Auth
        • Assets
      • Getting started
        • Deposit funds
        • Place a new order
        • Cancel an order
        • Withdraw funds
      • API Documentation
        • Account
          • Create new api key
          • Build deposit transaction
          • Submit deposit transaction
          • Deposit records
          • Withdrawal records
          • Order records
          • Build withdrawal transaction
          • Submit withdrawal transaction
          • Balances
        • App
          • Get mock USDX (testnet only)
          • Submit USDX transaction (testnet only)
        • Market
          • Market Price
          • Market Depth
          • Aggregated trades
        • Order
          • Build order transaction
          • Submit order Transaction
          • Build cancel Order Transaction
          • Submit cancel order transaction
      • Websocket Endpoints
        • Account streams
        • Market price streams
        • Market depth streams
      • SDK
        • Typescript
        • Python
  • FAQ
    • General
    • Product
    • Cardano
    • Disclaimer
Powered by GitBook
On this page
  • Onboarding
  • Deposit & Withdrawal
  • Trade
  • Developer
  1. FAQ

Product

PreviousGeneralNextCardano

Last updated 1 month ago

Onboarding

Why do I have to create an account?

In DeltaDeFi, users conduct their trading on their trading accounts, which are derived from the users' wallet addresses. Therefore, the first step interacting with DeltaDeFi is indeed creating an account.

This step is indeed identical to how you interact with other Cardano DApps, where you try to connect your wallet.

Why are only limited wallets supported in the web app?

To protect users from signing malicious transactions, fellow Cardano wallets would try resolving inputs from the Cardano blockchain to display the entire transaction information to users at the time of signing. However, since DeltaDeFi conducts trades in Hydra, an L2 network, most wallets fail to resolve inputs from L1 and decide to block the transactions from being signed by users.

Therefore, when placing trade through the web app, we can only support wallets that do not enforce the full resolution of inputs or have dedicated support for the Hydra network. Since Hydra is a relatively new technology, relatively few wallets do have the support in place and causing limited wallet support.

How exactly is my operation key generated?

All the users' operation key is generated using , and then encrypted by the AES-GCM algorithm with an initialization vector size of 12 (). Then, in several programming languages, we have the equivalent decryption logic in:

  • Typescript -

  • Rust -

  • Golang -

  • Python -

Everything's open source and verifiable.

Deposit & Withdrawal

What is the minimum amount of deposit and withdrawal?

Adhering to the Cardano blockchain protocol parameter, we enforced a minimum deposit and withdrawal of 2 ADA per transaction to ensure the minUTxO requirement is fulfilled.

How long does it take to deposit & withdraw?

Since all trading activities happen in Hydra, all deposit proceed has to be committed into Hydra before trading. Likewise, all the tradable value withdrawal has to be decommitted from Hydra back to Cardano L1.

Therefore, after you have placed the instruction to perform a deposit or withdrawal, the instructions are only fully performed when we close and re-open the active Hydra Head, which we call a "Hydra cycle". In future, when incremental commit and decommit mature, we can add deposit and withdrawal intervals between each Hydra cycle.

We are constantly accessing the optimal cycle length, which is currently a wide range like 30 minutes to 12 hours. Please refer to the application for the latest workflow.

Trade

What is the minimum order size for trade?

DeltaDeFi technically supports all sizes of trading, as little as 0.1 ADA. However, we have imposed a minimum size of 5 ADA equivalent as the minimum order size (unless particularly specified) to prevent spamming.

Developer

How can I conduct trades using APIs?

Conducting trades with APIs is identical to placing orders on the website. For supported programming languages, you can directly use our official SDKs. For other languages, we also have open API specifications.

The only differences between using the web app and APIs to place orders are:

  1. You have to load your wallet in the code base to conduct transaction signing.

  2. It is possible to submit an order request through APIs with an incorrect payload, and the server will return errors accordingly (like missing price for limit order).

For details, please check out our developer documentation.

Why am I unable to place 2 market buy orders concurrently?

When conducting a market order, some value has to be locked up to prevent overspending the account balance. While we get a precise number of value to lock up for sell orders, which equals the order size, the value for buy market orders cannot be pre-determined since it is only finalized at the time of filling.

Therefore, particularly for market buy orders without maximum slippage configuration, within the moment after orders are placed and before matching, we will hold up entire balance for the selling token, which lead to concurrent buy market orders without maximum slippage failing. In that case, only the first order can be processed successfully and the rest would receive an error of insufficient balance.

If you need to optimize concurrent orders for your trading strategy, we recommend to simply use limit order or configure maximum slippage for your market order to have a more fine-grained control on your assets' availability.

Can I cancel orders programmatically?

Yes, it is the same as placing trades.

What are locked and free balances?

Free

This is the balance available to trade or to withdraw.

Locked

This is the balance that is in transition states, which are not available for trade or withdrawal. It represents all the statuses below:

  1. Deposit in progress

  2. Withdrawal in progress

  1. Balance held up by active orders (e.g. limit orders on book)

Mesh SDK
implementation
Mesh web3-sdk
whisky
rum
gin