Borderless is a Decentralized Marketplace that will begin by allowing its user to trade across blockchains. This fundamentally happens by creating an incentive mechanism where makers and takers are both required to post collateral in the form of NRG for their respective orders. Once both parties have posted their collateral, they are required to send their respective pair to the counter-party’s address in order to receive their collateral back to their address.
What would happen if both placed the NRG collaterals BUT one party decided to not fulfill the trade fairly? What’s the penalty other than the collaterals? Will the trade went through? How does it compared with cross chain atomic swap?
Great question. So in the event that one party does not fulfill the trade, the counter-party receives their collateral. Fundamentally Block Collider is observing events that are occurring on all the child chains and waiting to receive transactions that fulfills both the requirements of the both the maker and taker (i.e - that the takers and makers respective addresses received the appropriate amounts according to the matched order). As a maker you are incentivized to lock up high collateral to ensure that when your order is taken, your taker has a high probability of fulfilling their side of the order, lest they lose their NRG. Vice versa for the taker. Regarding atomic swaps, there are multiple methods of doing so, some are on-chain (and usually require a similar hashing algorithm) or off-chain (using payment channels).
Yes that’s what my main question is all about, in order for this to work the value of NRG locked in as collaterals must be equal or higher than the value of the asset you are dealing with, doesn’t it create friction to the adoption as those potential takers are forced to “reserve” twice the amount of wealth they need in order to participate in the trade.
Also, as the value of the underlying collaterals (NRG) might be volatile and change rapidly, I kinda foresee a loophole to be abused by dishonest trader if the trade is valid without a reasonable, or preferably very short timeout.
Atomic swap do not have all these problems as the assets that are locked in are the same assets that both maker taker wants to trade with each other’s.
Atomic Swaps can be abused in the variance of price between the two currencies due to the hash time-lock contracts on both chains, where party A can wait up until the end of the ending of party B’s contract, and if the price is in their favor they will retrieve the tokens from the contract, and if not, they can choose not to submit the transaction.
Thanks Arjun, so the answer is more of “because atomic swap is no better than the collateral way of enabling cross chain exchange, thus a good enough solution?”
Or can we maybe take a look on how other project is dealing with this, for example
Not saying we should involve trusted parties to hold users fund like them, but maybe we can borrow some ideas from them, for example
- create a mechanism for interested parties to serve as “liquidity provider” plus “insurance provider”
- allow a fee to be charged against the maker, or taker, or both, the fee is to be sent to “liquidity provider / insurance provider” the fee is inversely proportionate to the amount of NRG collaterals they lock in the cross chain smart contract. **(we can play around with the numbers to find out the best rate of minimum NRG to be locked, but there is no upper limit to it)
- If one of the party be it taker or maker back off the trade in a dishonest manner, their collateral get slashed and send to the liquidity / insurance provider, and insurance provider will in turn send the required asset to the “cheated” party / victim.
With this, we create a market for big NRG holder to participate in the exchange to provide both liquidity and promote the trade without the previously mentioned trade offs - huge collaterals requirement impede participation especially those with lesser wealth.
What’s your view?
“LQDEX is a public Proof of Stake blockchain that consists of a network of nodes called Collators” - this sounds exactly like Validators - implying centralization.
Great insight! There will definitely be parties who are keen to provide NRG liquidity to those that wish to collateralize their trades.
This would obviously be dependent on the method in which the liquidity provider and the maker/taker interact with them. But this is definitely a cool idea.
Very cool, just remember that this still does require trust in the liquidity provider.
Overall, these ideas are great and will be useful to onboard users who are willing to trust in third parties. This is not always a bad thing, especially if the trust system is orchestrated in the right way (legal ramifications for bad actions). However when it comes to the protocol level, introducing trust is dangerous.
Yeah I am actually thinking if there is a way to realize all this via on chain logic - smart contract, without needing to trust anyone. In fact, anyone can become the liquidity provider by “staking” their NRG and various asset into this smart contract.
Yes I understand we shouldn’t introduce the complexity into the protocol level, I guess this is to be done by community as a de-Fin project, ride on top of blockcollider multichain.
The idea of collateralizing to ensure incentives are aligned is obviously supported by us. It would be interesting to have a decentralized liquidity/insurance provider where users can submit assets to that pool and earn some sort of interest by loaning out those assets on a needs basis. This obviously has to be fleshed out more, as there are extreme events where users could abuse this by fulfilling only one half of their own trades and constantly receive compensation from the insurance provider.
I think this is a great discussion for exploration/debate - what would be the best method of providing liquidity to the market as an on-boarding tool.
So I’ve been thinking about this as well. Borderless in its initial state is a collateral based exchange.
The evolution of Borderless or even someone else who might develop an exchange using the multichain is the creation of metacontracts that span all the different chains. The smart contracts on each chain act as order books and act to verify, rather than an intermediary insurer.
Of course it has some hiccups. What about latency? What’s aggregating this into a seamless UI? Would it be better by locking up assets on one chain and getting tokens newly created on eth for example and use that as the exchange? Much like what wanchain proposes.
I feel there are probably a lot of little things that will make these solution not as holistic as I imagine, but it would be a good exercise to see what the best exchange leveraging a multichain actually looks like.
Agreed, all kinds of models will have compromises of some kind. But having users being able choose what model fits their needs is much better than forcing them into models where they have little/no say.
Here goes an ignorant comment. I was just thinking if there is no other way to avoid collateral.
In the case of coins on blockchains with smart contracts, wouldn’t it be possible to set up smart contracts in each of those chains to freeze the funds until the trade has been agreed? Then, after the trade, rovers would need to interact with those smart contracts to unfreeze the funds and send them to the right person.
This is what I meant by a multichain exchange, where the smart contracts are the order books and act as escrow. I believe there does need to be a natural evolution to this state for greater throughput.
I’m not technical enough to know if there are any pitfalls to that. @davidthamwf could probably contribute a little here.
What was mentioned by @Codonyat was essentially atomic swap. It requires both parties to be online when the swap happen and / or it requires a certain degree of similarity between the chains. I think Borderless work without needing those pre-requisites in place.
Also I think that the Borderless client software as it is will for sure include the “honest” logic to send fund and fulfill the trade when counterparty done their part, in an automated way, (rover observe transaction, if the required transaction happened and confirm on multichain, Borderless client comply and send our part of fund over, etc.)
The collateral is just to guard against unforeseen “hacks” as Borderless is open source and there is no way to stop any malicious user to try to modify the software and exploiting it.
Correct me if I am wrong @multichain