๐Ÿงช
atomiq.exchange
  • ๐ŸŒŸIntroduction
  • โš—๏ธLiquidity provider nodes (LPs)
    • ๐Ÿƒโ€โ™‚๏ธRunning LP node
    • โŒRunning LP node (deprecated)
  • ๐Ÿ”“Security
  • ๐Ÿ”ฑSubmarine swaps (lightning)
    • ๐ŸŒฉ๏ธSolana -> Bitcoin Lightning
    • โšกBitcoin Lightning -> Solana
  • ๐ŸชถBitcoin light client (on-chain)
    • ๐Ÿ”—Solana -> Bitcoin on-chain
    • โ›“๏ธBitcoin on-chain -> Solana
  • SPV swaps (on-chain)
Powered by GitBook
On this page
  • Request for quote (RFQ)
  • Requirements for running an LP node
  • Software

Liquidity provider nodes (LPs)

LP nodes provide liquidity for the swaps, handle cross-chain swaps, determine prices & earn swap fees. Reputation is also tracked for every LP and increases with every successfully processed swap and decreases for failed swaps (ones which resulted in the client having to refund after a timeout).

Anyone can become an LP in atomiq.exchange protocol by running the atomiq LP node software, creating a network of LPs. All LP nodes are included in the central LP node registry.

Request for quote (RFQ)

atomiq.exchange operates on the request for quote (RFQ) order model. This works by sending an order request (e.g. I want to swap 100USDC to BTC) to the network of LPs, for which client gets quotes from multiple LPs able to process the swap, client then goes through the quotes and selects the best fitting one (this can be based on price, LP node's reputation or liquidity).

This selection process is abstracted away from the end user and automated in our SDK and dApp.

Once client is happy with the quote, he commits to it by signing it and sending it as a Solana transaction, initiating the swap.

Quotes are valid Solana partially signed transaction, that are just missing a signature from the client.

Requirements for running an LP node

LP node needs to provide liquidity on Solana and/or Bitcoin side to be able to facilitate swaps. It is recommended to deposit assets on both sides so the LP node can process swaps going both ways (Bitcoin -> Solana & Solana -> Bitcoin).

Note that if an LP node provides liquidity only in SOL it is only possible for it to process BTC -> SOL swaps at first (since it has no BTC to payout for SOL -> BTC swaps).

The liquidity of the node will be redistributed based on swaps it processes (if LP node executes BTC -> SOL swap, the LP will end up with more BTC and less SOL, since for the swap it receives BTC and has to pay out SOL).

Software

LP node needs to have access to Solana blockchain, Bitcoin blockchain and Lightning network to be able to process swaps.

  • Bitcoin node (bitcoind) - to provide access to Bitcoin blockchain

  • Lightning network node (lnd) - to provide access to Bitcoin Lightning network

  • BTC Relayer/Watchtower - to make sure bitcoin light client on Solana is synchronized so atomiq node is able to claim on-chain swaps

  • atomiq node - main software processing swaps

  • (optional) Solana RPC node - to provide access to Solana blockchain, one can also use 3rd party Solana RPC service, therefore running a Solana RPC node is optonal

PreviousIntroductionNextRunning LP node

Last updated 12 months ago

โš—๏ธ