BATCHER
A batch processing orderbook DEX
Batcher’s goal is to enable users to deposit tokens with the aim of being swapped at a fairprice with bounded slippage and almost no impermanent loss.
Schedule a 30 min meeting to talk about your project
Launch AppPublic Betanet running.
Sidechain smart contracts:
- Bridge: KT1R3xuiZ8VnZcPgwCMZ25s8eBfCpDZCMcyx
TzPortal contract:
KT1QvZPUoXwz5zQL6zDpFyyPp5iChbHfnXC1
Deku Nodes:
- Node 0
- Node 1
- Node 2
- Node 3
Frequently Asked Questions
Batcher is a decentralized exchange (DEX) that offers batch clearing without the use of a liquidity pool. Batcher provides low slippage and little to no impermanent loss.
Batcher takes orders from users in a specified time window (currently 10 mins). All orders placed in this time window constitute a batch. At the end of the time window the batch is closed so that no more orders can be placed. All the orders in this batch will then go through clearing and the swap orders placed will be fully filled, partially filled or not filled.
In the event that an order isn’t filled (either fully or partially), the original amount of token that hasn’t been filled can be redeemed back to the wallet that placed the order. This can be done on the holdings tab.
Batcher works differently to most DEXs in that the swap price that the swaps are executed at is related to a FUTURE oracle price. As such, the Batcher Dapp show the current Oracle price as a reference only.
As Batcher uses a future Oracle price to execute swaps, a user cannot select a specific price to execute the swap at. When using Batcher, a user would rather select one of the price tranches when placing a swap. The available tranches are all given in the context of the future oracle price. Those tranches are:
- Oracle price + 10 basis points
- Oracle price
- Oracle price - 10 basis points
The selection of price in Batcher is related to the relative probability of the order being filled. Chosing a better price for the order will result in a lower probability of the order being filled. This is due to the likelyhood of less users on the opposite side of the trade pair being interested in the trade at that price. The converse is true for a worse price. On the opposite side of the trade pair there is likely to be more users interested in the trade at that price and therefore have a higher probability of the order being filled.
If an order is partially filled, a user can redeem both the partial fill in the opposing token plus any unfilled amount in the original token. Both can be redeemed in the holdings tab.
Pro-rata execution is a method of batch clearing that ensures all assets are sold in even proportions, ensuring fairness for all participants.
Batchers charges a nominal fee for an order being placed. This fee is currently 0.01 XTZ. Batcher will transfer the fee to a burn address. In line with the governing tenet of transparency in Tezos and the Blockchain ecosystem more widely, both the fee amount and the burn address in receipt of the fees will be visible in the contract storage at any time. Marigold will maintain an administrator multisig address that can change both the fee and the burn/recipient address after the contract is deployed. This administration is to future-proof Batcher and ensure it stays a part of the Tezos ecosystem for a long time.
Batcher is designed to be composable with Sirius DEX to provide a high liquidity route from XTZ to stablecoins like EUR and USDT. XTZ can be exchanged to tzBTC via Sirius DEX and then onto a stable coin via Batcher
tez →(Sirius DEX)→ tzBTC →(Batcher)→ USDT
See the audit section right below.
Audit
Smart Contracts are audited by InferenceAG : https://github.com/InferenceAG/ReportPublications/blob/master/Inference%20AG%20-%20Marigold%20-%20Batcher%20DEX%20-%20v1.0.pdf
Batcher use Oracle price based on 1:1 for tzBTC:BTC & EURL:EURO. The Oracle price observed to decide the tranche are BTC/USDT for tzBTC/USDT swap and BTC/EUR for tzBTC/EURL swap. A depeg of tzBTC or EURL would impact Batcher.
Both are 1:1 stablecoin with collateral on vault and not lended.
LUGH publish monthly audit of EURL: https://www.lugh.io/transparence
BTC collaterals for tzBTC supply are public: https://tzbtc.io/
Associated blog posts
For more information read the associated blog posts on Batcher:
- Batcher - Batcher is now live on Tezos mainnet ✨
- Batcher - The batch clearing dex
- Batcher - Moving to Pro-Rata Execution
- Batcher - Trading Fees
- Batcher - Liquidity & Composability
Video tutorials
Additionally, we prepared short video tutorials to help you start using Batcher:
- Batcher - Placing a deposit for swap
- Batcher - Redeeming holdings
*Disclaimer:* All investing comes with risk and DeFi is no exception. The following content contains no financial advice.Please do your own thorough research and note that all users funds are traded at their own risk (No reimbursement will be made and Marigold will not assume responsibility for any losses).